Linux下openssh升级

1,防范于未然,先安装telnet,以防万一

下载telnet-client

http://www.rpmfind.net/linux/rpm2html/search.php?query=telnet

下载telnet server

http://www.rpmfind.net/linux/rpm2html/search.php?query=telnet-server(x86-64)

下载xinetd 

http://www.rpmfind.net/linux/rpm2html/search.php?query=xinetd

依次安装xinetd、telnet-client、telnet server(注意安装顺序)

rpm -qa | grep telnet

rpm -qa | grep xinetd

编辑配置文件:vi /etc/xinetd.d/telnet(没有直接创建就可以)

service telnet

{

flags = REUSE

socket_type = stream

wait = no

user = root

server =/usr/sbin/in.telnetd

log_on_failure += USERID

disable = no

}

启动:systemctl start xinetd 

测试连接:telnet ip port

我测试的连接不了。。。。。

解决办法:mv /etc/securetty /etc/securetty.bak

2,升级openssh,首先要升级openssl

查看当前版本openssl:rpm -aq|grep openssl

解压指定升级的openssl

进入解压的文件夹里面,执行命令:

./config --prefix=/usr/local/openssl --shared

make

make install

添加函数库:echo "/usr/local/openssl/lib" >> /etc/ld.so.conf

更新函数库:ldconfig -v

查看新安装的版本:openssl/bin/openssl version

查看旧版本位置:which openssl

移除旧版本:mv /usr/bin/openssl /usr/bin/openssl.old

新版本制作软连接:ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

查看最终版本:openssl version

3,openssl升级后,就可以升级openssh了

下载升级包:https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.5p1.tar.gz

解压后执行命令:(zlib太简单就不说了,随便装一下就可以了)

./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/openssl 

make

make install

下面是重点!

echo 'PermitRootLogin yes' >>/usr/local/openssh/etc/sshd_config

echo 'PubkeyAuthentication yes' >>/usr/local/openssh/etc/sshd_config

echo 'PasswordAuthentication yes' >>/usr/local/openssh/etc/sshd_config

mv /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config

mv /usr/sbin/sshd /usr/sbin/sshd.bak

cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd

mv /usr/bin/ssh /usr/bin/ssh.bak

cp /usr/local/openssh/bin/ssh /usr/bin/ssh

mv /usr/bin/ssh-keygen /usr/bin/ssh-keygen.bak

cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen

mv /etc/ssh/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub.bak

cp /usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub

systemctl daemon-reload

systemctl restart sshd

查看openssh版本:ssh -V

注:对于openssh版本的迭代升级,比如从9.5升级到9.7,下载9.7的安装包,升级前要先把原来的ssh给停止:systemctl stop sshd,然后把openssh文件夹给删除,rm -rf openssh,然后到解压的openssh9.7里面按照上面教程说的,从./configure一直往下安装就行了,再进行升级,就不用使用telnet了,保险起见最好开两个窗口,一个用来升级操作,一个直接使用vim test,直接进行编辑模式,这样不会掉线,直接升级就行。

出现的问题:

1,安装ssh后还是无法进行ssh连接:再连接的那台电脑找到known_hosts(windows一般在user/.ssh下,Linux一般在root/.ssh下),直接删除即可

2,idea cloud view无法进行连接

如果帮助到您了,请点个赞支持一下,多谢 ^_^ 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值