1.如何平滑升级openssh,服务t服不影响root远程登录?
如何平滑升级openssh,不影响root远程登录?
为确保您的系统安全,可能需要更新OpenSSH至最新版本。器源此过程需同时更新OpenSSL和OpenSSH,服务t服因为OpenSSH依赖于OpenSSL。器源 首先,服务t服检查当前使用的器源iosstream源码OpenSSH服务版本。执行命令:ssh -V。服务t服 接着,器源为了防止在卸载OpenSSH过程中导致无法登录主机,服务t服安装并启动telnet服务。器源命令如下:使用yum -y install telnet安装telnet。服务t服
使用yum -y install telnet-server安装telnet-server。器源
启用telnet服务,服务t服源码表单平台命令为systemctl enable telnet.socket,器源并启动服务systemctl start telnet.socket。服务t服
继续,准备更新OpenSSH所需的依赖包,命令为:yum -y install gcc keyutils-libs rpm-build krb5-devel libcom_err-devel libselinux-devel pam-* openssl-devel pkgconfig vsftpd zlib*。 为了安全起见,短线资金监测源码备份原有的SSH服务版本,执行以下命令:将/etc/ssh重命名为/etc/ssh.bak。
将/usr/bin/ssh重命名为/usr/bin/ssh.bak。
将/usr/sbin/sshd重命名为/usr/sbin/sshd.bak。
下载最新版本的OpenSSH安装包,即openssh-9.7p1.tar.gz,指间mud后端源码并将此安装包通过WinSCP上传至/opt文件夹。 卸载原有版本的OpenSSH rpm安装包,先查看是否需要删除的依赖包,然后执行卸载命令。如果提示有依赖文件,则使用强力删除模式:使用rpm -e `rpm -qa | grep openssh`卸载。希尔排序模块源码
若提示依赖文件存在,则使用rpm -e `rpm -qa | grep openssh` --nodeps强力删除。
编译并安装新版本的OpenSSH,首先解压下载的安装包,然后进入解压路径编译安装:使用cd /opt进入目录。
解压安装包tar zxvf openssh-9.7p1.tar.gz。
使用命令cd /opt/openssh-9.7p1/进入安装目录。
执行./configure --sysconfdir=/etc/ssh进行配置。
验证OpenSSH的执行路径,执行命令:which sshd。 复制源码解压路径下的开机启动脚本sshd.init到/etc/init.d/文件夹,并启动sshd服务:使用cp /opt/openssh-9.7p1/contrib/redhat/sshd.init /etc/init.d/sshd复制。
使用systemctl daemon-reload和service sshd start启动sshd服务。
修改配置文件sshd_config,允许root用户通过ssh远程登录,使用命令:sed -i "/#PermitRootLogin prohibit-password/c\PermitRootLogin yes" /etc/ssh/sshd_config修改。 复制源码解压路径的ssh-copy-id文件至/usr/local/bin/,并赋予执行权限:使用cp /opt/openssh-9.7p1/contrib/ssh-copy-id /usr/local/bin/复制。
使用chmod +x /opt/openssh-9.7p1/contrib/ssh-copy-id设置权限。
最后,验证OpenSSH更新是否成功,执行/usr/local/bin/ssh -V命令查看结果,若显示为OpenSSH_9.7p1,则更新完成。 完成以上步骤后,使用命令mv /etc/security.bak /etc/security重新启用安全文件。