安裝openssh 9.3p2(遠程安裝時,爲防出錯導致無法連接,先安裝telnet)
1.將openssh9.3安裝包解壓
tar -zxf openssh-9.3p2.tar.gz && cd openssh-9.3p2
2.備份配置文件
cp /etc/ssh/sshd_config sshd_config.backup
cp /etc/pam.d/sshd sshd.backup
3.編譯配置
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-zlib --with-md5-passwords --with-pam
4.卸載舊版本(上面沒報錯時再執行)
rpm -e --nodeps `rpm -qa | grep openssh`
5.編譯安裝
make && make install
6.調整文件權限
chmod 600 /etc/ssh/ssh_host_rsa_key /etc/ssh/ssh_host_ecdsa_key /etc/ssh/ssh_host_ed25519_key
7.複製配置文件
cp -a contrib/redhat/sshd.init /etc/init.d/sshd
chmod u+x /etc/init.d/sshd
8.還原之前備份的配置文件
rm /etc/ssh/sshd_config -f && rm /etc/pam.d/sshd -f
cp sshd_config.backup /etc/ssh/sshd_config && cp sshd.backup /etc/pam.d/sshd
9.設置root用戶可以遠程登陸
sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config
sed -i 's/#PermitRootLogin yes/PermitRootLogin yes/g' /etc/ssh/sshd_config
10.設置開機自動啓動
chkconfig --add sshd
chkconfig sshd on
11.重啓ssh
systemctl restart sshd
# 如果啓動時卡住,執行下面命令
rm -f /usr/lib/systemd/system/sshd.service
systemctl enable sshd
systemctl restart sshd.service
12.驗證
ssh -V
安裝telnet
yum install xinetd telnet-server -y telnet
echo "pts/0" >> /etc/securetty
echo "pts/1" >> /etc/securetty
systemctl start telnet.socket
systemctl start xinetd
安裝centos-release
rpm -qi centos-release
cd /etc/yum.repos.d/
cp centos7-aliyun.repo centos7-aliyun.repobak
sed -i 's/$releasever/7/g' /etc/yum.repos.d/centos7-aliyun.repo
yum install centos-release -y
mv /etc/yum.repos.d/C*.* /etc/yum.repos.d/bak/
rm centos7-aliyun.repo -f && mv centos7-aliyun.repobak centos7-aliyun.repo
安裝gcc等依賴 gcc -v查看
rm -rf /var/lib/rpm/_db* && rpm --rebuilddb && yum clean all && yum install openssl-devel zlib-devel perl gcc pam-devel -y
python報錯之paramiko.ssh_exception.SSHException: EOF during negotiation解決辦法
# 查找sftp-server的位置 find / -name sftp-server
# 查看/etc/ssh/sshd_config中 Subsystem sftp /usr/libexec/sftp-server
# 如不同,將sshd_config中路徑修改爲一致的。
sed -i 's/openssh\/sftp-server/sftp-server/g' /etc/ssh/sshd_config