服务器环境
CentOS版本:CentOS Linux release 7.9.2009 (Core)
操作步骤
安装之前:sudo、yum等系统组件底层依赖Open SSL 1.0.0版本,请勿删除Open SSL 1.0.0。
升级Open SSL
注:因Open SSH和Open SSL版本需对应一致才能安装成功,故升级Open SSL前首先确定Open SSL是否对要升级的Open SSH版本支持。如现有Open SSL对要升级的Open SSH版本支持,则无需升级Open SSL。
1.下载Open SSL源码包。
2.上传Open SSL源码包至服务器。
3.解压
tar -xzf openssl.tar.gz
4.进入解压后的目录。
cd openssl/
5.编译及安装,按行依次执行。执行后被编译后的Open SSL
文件将被写入至/usr/local/openssl
目录中。
./config --prefix=/usr/local/openssl
./config -t
make
make install
注:以上三步必须没有出现报错error,才可以继续下一步,全部三步无报错才能视为安装成功。
6.切换Open SSL
版本。即将系统中旧版Open SSL
切换至刚安装的新版Open SSL
。按行依次执行。
ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -sf /usr/local/openssl/include/openssl /usr/include/openssl
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
ldconfig -v
ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
ln -sf /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so
ln -sf /usr/local/openssl/lib/libssl.so.1.1 /lib64/libssl.so
ln -sf /usr/local/openssl/lib/libssl.so.1.1 /usr/local/lib64/libssl.so
ln -sf /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so
ln -sf /usr/local/openssl/lib/libcrypto.so.1.1 /lib64/libcrypto.so
ln -sf /usr/local/openssl/lib/libcrypto.so.1.1 /usr/local/lib64/libcrypto.so
注:libssl.so.1.1一般是Open SSL 1.1.1 版本,不同版本的Open SSL 是不一样的。
6.验证
ssh -V
升级Open SSH
安装Open SSH
1.下载Open SSH源码包。
2.上传Open SSH源码包至服务器。
3.解压
tar -xzf openssh.tar.gz
4.进入解压后的目录。
cd openssh/
5.编译
./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-pam --with-ssl-dir=/usr/local/openssl --mandir=/usr/share/man --with-zlib=/usr/local/zlib --without-hardening
6.安装,按行依次执行。执行后被编译后的Open SSH
文件将被写入至/usr/local/openssh
目录中。
make
make install
注:以上三步必须没有出现报错error,才可以继续下一步,全部三步无报错才能视为安装成功。
7.切换Open SSH
版本。即将系统中旧版Open SSH
切换至刚安装的新版Open SSH
。按行依次执行。
cp -rf /usr/local/openssh/contrib/redhat/sshd.init /etc/init.d/sshd
cp -rf /usr/local/openssh/contrib/redhat/sshd.pam /etc/pam.d/sshd
cp -rf /usr/local/openssh/sbin/sshd /usr/sbin/sshd
cp -rf /usr/local/openssh/bin/ssh /usr/bin/ssh
cp -rf /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
8.修改Open SSH
配置文件。
注:开启允许X11转发。
echo 'X11Forwarding yes' >> /etc/ssh/sshd_config
注:开启允许密码验证。
echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config
注:开启远程主机ssh登录。
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
注:验证是否修改成功。
tail /etc/ssh/sshd_config
9.重启sshd服务
/etc/init.d/sshd restart
10.查看服务运行状态
/etc/init.d/sshd status
11.添加开机启动
chkconfig --add sshd
12.查看升级后ssh版本
ssh -V
设置开机自启动
1.复制ssh的相关命令。
cp -arp /usr/local/openssh/bin/* /usr/bin/
2.创建启动sshd的服务。创建sshd-custom.service
文件,编辑好内容后上传至该目录/etc/systemd/system/
。
注:可先去/etc/systemd/system/找有无ssh相关服务文件,如已存在可无需创建ssh服务文件。
#sshd-custom.service文件
[Unit]
Description=OpenSSH Daemon Custom Configuration
After=network.target auditd.service
[Service]
ExecStart=/usr/sbin/sshd -D
Restart=on-failure
SyslogIdentifier=sshd-custom
[Install]
WantedBy=multi-user.target
3.启用相关服务并设置开机自启动
sudo systemctl daemon-reload
sudo systemctl restart sshd-custom
sudo systemctl enable sshd-custom
评论区