1.安裝openssh 首先得安裝 openssl 和zlib
安裝openssl ---下載openssl-1.0.1j.tar.gz,解壓到/usr/openssl/目錄下進入解壓目錄 執行./config -fPIC 如下圖
接着執行 make 以及 make install
安裝zlib---下載zlib-1.2.8.tar.gz解壓到/usr/zlib/目錄下
執行./configure make 和 make install命令 ok
有關於openssl 以及 zlib 的安裝可以參考我的另外一篇博客redis集羣配置
2.下載openssh.tar.gz包解壓放在/usr/openssh/目錄下 解壓 如圖
執行 ./configure 之後部分編譯如下 可以看到 openssh 的配置文件放在了 /usr/local/etc下注意 :一般情況下在/etc/ssh目錄下
OpenSSH has been configured with the following options:
User binaries: /usr/local/bin
System binaries: /usr/local/sbin
Configuration files: /usr/local/etc
Askpass program: /usr/local/libexec/ssh-askpass
Manual pages: /usr/local/share/man/manX
PID file: /var/run
Privilege separation chroot path: /var/empty
沒有--with-ssl-dir=/usr/local/ssl可能會報 configure: error: OpenSSL version header not found 執行make 和 make install 命令 報錯:Privilege separation user sshd does not exist 解決:在/etc/passwd 中加入: sshd:x:74:74:Privilege-separatedSSH:/var/empty/sshd:/sbin/nologin 再次make install 編譯安裝成功。
openssh 默認安裝在/usr/local/sbin/目錄下如圖
開啓ssh服務
注意要按照絕對路徑開啓ssh服務否則報錯
查看ssh是否啓動成功
通過putty連接服務器
打開
連接登陸成功
通過ssh遠程登陸
報錯 Server responded "Algorithm negotiation failed" 原因 客戶端與服務端的壓縮方式不一樣
解決方法 修改ssh的配置文件一般在/etc/ssh/sshd_config 但是我這裏是在/usr/local/etc/sshd_config下打死
在配置文件中添加:
Ciphers aes128-cbc,aes192-cbc,aes256-cbc,aes128-ctr,aes192-ctr,aes256-ctr,3des-cbc,arcfour128,arcfour256,arcfour,blowfish-cbc,cast128-cbc
MACs hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,hmac-sha1-96,hmac-md5-96
KexAlgorithms diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group1-sha1,[email protected]
重啓sshd服務後,即可正常連接,如下圖。
點擊yes輸入密碼
點擊ok
成功
設置 ssh開機啓動,編輯/etc/rc.local文件