此博文前提是系统默认没有安装openssh-server,而且现在大部分系统默认只包含openssh-client,这对于需要远程调试和管理的开发者们很不方便,因此本文探讨如何离线安装sshd服务,对于可以在线安装的就比较方便了,可参阅其他博客,本文就不探讨啦~~
1.首先登录openssh官网:www.openssh.com;
2.找到离线安装包:openssh-7.3p1.tar.gz;具体版本可以根据自己的需要进行选择;
3.拷贝并解压压缩包至目标主机相关目录,然后进入该目录按照 INSTALL 文件提供的步骤进行安装;需要注意的是此步骤需要解决依赖问题,所以需要按照说明提前下载 Zlib 以及 openssl 并安装即可;然后执行:./configure –> make –> make install;
4.如果在 make install 中遇到错误提示”Privilege separation user sshd does not exist”那么需要在 /etc/passwd 目录下添加一行:
sshd:x:109:65534::/var/run/sshd:/usr/sbin/nologin 或者
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin 即可;
5.之后就可以启动 sshd 啦,如果在输入 sshd 之后报错 “sshd re-exec requires execution with an absolute path” 该提示意味着你需要使用绝对路径启动:输入 /usr/local/sbin/sshd 这样就好啦。如果还不行再执行下面两行:
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key