仅构建 OpenSSH 客户端

仅构建 OpenSSH 客户端

我正在尝试建立开放SSH7.9p1 来自源代码,但我找不到删除(或不包含)的方法,例如,ssh-agentssh-keygenscpsftp、等 - 当然,假设命令工作sshd不需要这些。ssh

理想情况下,我只需要客户端:命令ssh,但同样,我不确定还需要什么其他部分。我认为大部分构建/安装的内容都是由服务器使用的,而不是由客户端使用的。

答案1

是的,您可以使用提供的默认构建系统来执行此操作。

如果您查看Makefile通过运行提供的脚本生成的目标./configure,您应该看到默认(第一个)目标是

TARGETS=ssh$(EXEEXT) sshd$(EXEEXT) ssh-add$(EXEEXT) ssh-keygen$(EXEEXT) ssh-keyscan${EXEEXT} ssh-keysign${EXEEXT} ssh-pkcs11-helper$(EXEEXT) ssh-agent$(EXEEXT) scp$(EXEEXT) sftp-server$(EXEEXT) sftp$(EXEEXT)

(对于类 Unix 系统,$(EXEEXT)应该为空)。每个都有自己单独的构建目标/规则,例如您可以这样做:

make ssh

只做客户。

前任。

$ make ssh

<snip>

$ find . -type f -executable -newermt yesterday
./config.status
./ssh

$ ./ssh -V
OpenSSH_7.9p1, OpenSSL 1.1.0g  2 Nov 2017

相关内容