centos 离线openssh升级

本文详细介绍了在CentOS系统上如何进行离线升级,包括关闭SELinux、安装telnet、创建用户、开启telnet端口,然后通过telnet登录进行SSH的卸载与安装。接着,配置SSH允许root登录并解决远程登录报错问题,最后关闭telnet服务,确保系统的安全性和稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、检查系统内核
centos7
2、准备离线升级
依赖包下载地址:

https://vault.centos.org/

3、离线升级准备
①、关闭selinux

vim /etc/selinux/config

将selinux设置为disabled

setenforce 0

②、安装telnet,防止ssh卸载后无法远程

yum install -y  telnet-server  xinetd 
systemctl enable xinetd.service
systemctl enable telnet.socket
systemctl start  telnet.socket
systemctl start  xinetd
#创建admin用户,方便telnet登录
useradd -m name
passwd name

③、开启telnet端口

vi /etc/xinetd.d/telnet/
disabled=no
firewall-cmd   --zone=public --add-port=23/tcp  --permanent
firewall-cmd   --reload

④、使用telnet登录

telnet IP
name
password
#切换到root
su root   
#切换root用户报错
su: Permission denied
#更改用户组
usermod -aG wheel admin

4、安装openssh
①、安装openssl依赖包

yum  install -y  gcc  gcc-c++  openssl-devel   pam-devel

离线:

rpm -ivh *.rpm 

②、可能需要组件,自行安装

yum install -y  lrzsz   wget   policycoreutils-python

③、查看安装的ssh 和卸载ssh

#查看
rpm  -qa  |  grep openssh-server
#卸载
for  i   in  $(rpm  -qa  |grep  openssh-server);do  rpm  -e  $i  --nodeps ;done
#删除原ssh配置文件
rm  -rf  /etc/ssh

④、下载openssh

wget  http://kartolo.sby.datautama.net.id/pub/OpenBSD/OpenSSH/portable/openssh-8.3p1.tar.gz   -P  /usr/local/
cd  /usr/local/
tar -zxvf openssh-8.3p1.tar.gz
mv  openssh-8.3p1 openssh
cd openssh

⑤、安装openssh

./configure  --prefix=/usr  --sysconfdir=/etc/ssh  --with-md5-passwords--mandir=/usr/share/man   -with-zlib--without-zlib-version-check  --with-pam --with-ssl-dir=/usr/local/ssl   --without-openssl-header-check
make   &&   make  install

cp  ./contrib/redhat/sshd.init    /etc/init.d/sshd
chkconfig  --add sshd
chkconfig  sshd on
chkconfig  --list  |  grep sshd
#允许root用户连接
vim /etc/ssh/sshd_config
#	添加配置到以下位置
#PermitRootLogin prohibit-password
PermitRootLogin yes
port=22
#semanage port -a -t ssh_port_t -p tcp 22
考虑到各个组件的载入问题建议重启服务器 reboot
service  sshd  restart
#重启之前重新打开一个服务器进入界面,验证是否正常
reboot

⑥、查看版本

ssh -V

5、ssh远程登录报错解决

vim /etc/ssh/sshd_config
#	最后一行添加:
KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group14-sha1

#连接成功之后报X11forwarding request。。。。
vi /etc/ssh/sshd_config  在X11这行改为X11Forwarding yes,
然后再将UseLogin参数为no,可能这一行最开始是被注释,去掉注释,保存之后重启sshd服务,重新连接即可

6、收尾工作
关闭 telnet-server 服务
备注: 该操作需要重启服务器后使用ssh登录没问题之后再执行 以防止ssh远程不了后没有其他远程操作

firewall-cmd --permanent --zone=public --remove-port=23/tcp
firewall-cmd   --reload
#	卸载telnet-server
rpm -e  xinetd telnet-server --nodeps
#删除admin用户
userdel -r admin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值