最近客户新分配了几台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