全新linux服务器升级openssh到8.0

最近客户新分配了几台linux,没有挂载盘,没有外网,竟然连编译的环境都没有,各种折腾总算搞定了。

新服务器的ssh版本

linux版本

注意:下面的命令可能直接复制进去会提示不能执行,可能是文本编辑器的原因导致的。

升级步骤

----安装telnet 防止ssh升级失败后依然可以连接
rpm -ivh xinetd-2.3.14-40.el6.x86_64.rpm --force --nodeps
rpm -ivh telnet-0.17-48.el6.x86_64.rpm --force --nodeps
rpm -ivh telnet-server-0.17-48.el6.x86_64.rpm --force --nodeps
----开启telnet
vi /etc/xinetd.d/telnet    将disable=yes改成disable=no;
 /etc/init.d/xinetd restart
---关闭防火墙  看自己服务器是否需要
service  iptables stop
----因为禁止root用户通过telnet登录,创建普通用户
useradd aqgk
passwd aqgk       密码:自定义

-----安装系统环境所需的包
rpm -ivh autoconf-2.63-5.1.el6.noarch.rpm --force --nodeps
rpm -ivh binutils-2.20.51.0.2-5.48.el6.x86_64.rpm --force --nodeps
rpm -ivh cpp-4.4.7-23.el6.x86_64.rpm --force --nodeps
rpm -ivh gcc-4.4.7-23.el6.x86_64.rpm --force --nodeps
rpm -ivh gcc-c++-4.4.7-23.el6.x86_64.rpm --force --nodeps
rpm -ivh glibc-devel-2.17-260.el7.x86_64.rpm --force --nodeps
rpm -ivh kernel-headers-2.6.32-754.el6.x86_64.rpm --force --nodeps
rpm -ivh pam-devel-1.1.1-13.el6.x86_64.rpm --force --nodeps
rpm -ivh pcre-devel-7.8-7.el6.x86_64.rpm --force --nodeps
rpm -ivh openssl-devel-1.0.1e-57.el6.x86_64.rpm --force --nodeps
rpm -ivh zlib-devel-1.2.3-29.el6.x86_64.rpm --force --nodeps
---------------------------------------------------------------
--开始安装ssh所需的包

zlib包也是必须的,不过我的服务器已经安装了更高版本的所以我没有安装。安装方式可以参考上一篇博客。

-----
rpm -ivh pam-devel-1.1.1-13.el6.x86_64.rpm --force --nodeps
---安装openssl-fips
tar -xzvf openssl-fips-2.0.16.tar.gz
cd openssl-fips-2.0.16
./config
cp /home/libmpfr.so.1 /usr/lib64/
make
make install
----安装openssl
tar -zxvf   openssl-1.0.2p.tar.gz
cd  openssl-1.0.2p
./config shared zlib --prefix=/usr/local/openssl && make && make install
# ./config -t
# make depend
# cd /usr/local
# ln -s openssl ssl
# vi /etc/ld.so.conf
----文件的最后面,添加如下内容:
/usr/local/openssl/lib
#ldconfig
--- 添加环境变量
cd /etc/profile
在profile的最后一行,添加:
export OPENSSL=/usr/local/openssl/bin
export PATH=$OPENSSL:$PATH:$HOME/bin
保存退出
----加载环境变量
source /etc/profile

-----移除老版本的openssl,创建新的软连接;这个地方注意路径

mv /usr/bin/openssl /usr/bin/openssl.old

mv /usr/include/openssl /usr/include/openssl.old

ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

ln -s /usr/local/openssl/include/openssl /usr/include/openssl

ln -sf /usr/local/openssl/lib/libcrypto.so.1.0.0 /lib/libcrypto.so.6

echo "/usr/local/openssl/lib" >>/etc/ld.so.conf 

ldconfig -v
# openssl version
----安装ssh
#tar -xzvf openssh-8.0p1.tar.gz

# cd openssh-8.0p1

# rm -rf /etc/ssh

#make uninstall     删除旧版本,不支持的话不要理会

#./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-pam --with-ssl-dir=/usr/local/openssl --with-md5-passwords --mandir=/usr/share/man --with-zlib=/usr/local/zlib --without-hardening

#make
#make install

# cp /你的openssh的解压目录/contrib/redhat/sshd.init /etc/init.d/sshd

# chmod +x /etc/init.d/sshd

# chkconfig --add sshd

#vim /etc/ssh/sshd_config #修改默认端口号

#service sshd stop

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

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

# /etc/init.d/sshd restart  或 service sshd start

----修改ssh配置
vi  /etc/ssh/sshd_config

PermitRootLogin yes
StrictModes yes
UsePAM yes
UseDNS no

-----关闭telnet
vi /etc/xinetd.d/telnet
disable = yes
/etc/init.d/xinetd restart
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章