升级ssh到OpenSSH_7.5p1
Redhat 6.5 x64升级SSH到OpenSSH_7.5p1
为了防止openssh安装失败导致不能远程登录,先部署telnet服务以防万一。
rpm -qa telnet telnet-server xinetd
如果没有就yum安装
配置/etc/xinetd.d/telnet
service telnet
{
socket_type=stream
wait=no
user=root
server=/usr/sbin/in.telnetd
log_on_failure+=USERID
disable=no
}
第一行,说明该配置用来设置telnet服务。
第二行,说明Socket连接类型是stream,也就是TCP
第三行,是指不等待到启动完成
第四行,是指以root用户启动服务进程
第五行,是指服务进程是/usr/sbin/in.telnetd
第六行,是用于做一些出错日志
第七行,是指禁止远方telnet,如果需要开放则将该配置改为:disable=no
使用root用户登录
telnet 默认的情况之下不允许 root 以 telnet 进入 Linux 主机,在普通用户telnet进入系统之后,在切换到root用户就可以使用root用户了。如果非要使用root登录,可以使用修改/etc/securetty文件。
增加
pts/0
pts/1
pts/2
pts/3
pts/4
一般不建议直接用root用户远程通过telnet登陆系统,因为telnet在数据传输过程采用明文方式,如果数据包被人截获,将会很容易获取root用户的登陆口令;还是建议以普通用户通过telnet远程登陆,然后su到root,这样相对比较安全。如果非要用root用户远程连接,建议采用SSH,部署完之后在把/etc/xinetd.d/telnet disable=no 或者禁止telnet端口。
修改文件/etc/services将文件中
可以修改telnet端口连接方式比如
telnet 8902/tcp
telnet 8902/udp
重启telnet服务即可。
/etc/init.d/xinetd restart
iptables -I INPUT -p tcp --dport 23 -j ACCEPT
安装编译所需工具包
# yum -y install gcc pam-devel zlib-devel openssl-devel
升级openssl
#find / -name openssl
mv /usr/lib64/openssl /usr/lib64/openssl.old
mv /usr/bin/openssl /usr/bin/openssl.old
mv /etc/pki/ca-trust/extracted/openssl /etc/pki/ca-trust/extracted/openssl.old
mv /usr/include/openssl /usr/include/openssl.old
如下两个库文件必须先备份,因系统内部分工具(如yum、wget等)依赖此库,而新版OpenSSL不包含这两个库
# cp /usr/lib64/libcrypto.so. /usr/lib64/libcrypto.so..old
# cp /usr/lib64/libssl.so. /usr/lib64/libssl.so..old
解压openssl_1.0.2 l源码并编译安装
tar -zxvf openssl-1.0.2l.tar.gz
cd openssl-1.0.2l
./config --prefix=/usr --openssldir=/etc/ssl --shared zlib
make
make test
make install
openssl version -a
恢复共享库
mv /usr/lib64/libcrypto.so.10.old /usr/lib64/libcrypto.so.10
mv /usr/lib64/libssl.so.10.old /usr/lib64/libssl.so.10
升级openssh
备份当前openssh
mv /etc/ssh /etc/ssh.old
install -v -m 700 -d /var/lib/sshd
chown -v root:root /var/lib/sshd
解压openssh_7.5p1源码并编译安装
tar -zxvf openssh-.5p1.tar.gz
cd openssh-.5p1
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-openssl-includes=/usr --with-privsep-path=/var/lib/sshd
make
make install 在openssh编译目录执行如下命令
install -v -m contrib/ssh-copy-id /usr/bin
install -v -m contrib/ssh-copy-id. /usr/share/man/man1
install -v -m -d /usr/share/doc/openssh-.5p1
启动openssh服务
echo "X11Forwarding yes" >> /etc/ssh/sshd_config
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config #允许root用户通过ssh登录
echo "Allowusers root" >> /etc/ssh/sshd_config
cp -p contrib/redhat/sshd.init /etc/init.d/sshd
chmod +x /etc/init.d/sshd
chkconfig --add sshd
chkconfig sshd on
chkconfig --list sshd
service sshd restart
机子重启后不重启服务不能连,受selinux影响,
# vi /etc/selinux/config
修改 SELINUX=disabled
在命令行中输入setenforce 0临时关闭selinux
setenforce 0
如果xshell连接在重启之后突然关闭,就在用telnet连接开启sshd服务
来自:https://blog.csdn.net/chengcm/article/details/77104514
升级ssh到OpenSSH_7.5p1的更多相关文章
- Redhat 6.7 x64升级SSH到OpenSSH_7.4p1完整文档
原文链接:https://www.cnblogs.com/xshrim/p/6472679.html 导语 Redhat企业级系统的6.7版自带SSH版本为OpenSSH_5.3p1, 基于审计和安全 ...
- Centos 6.5升级openssh到7.5p1版本
centos6自带的ssh版本较低,存在高危漏洞,目前部分服务器需要升级到最新版本(目前是7.5p1). 注:升级ssh存在一定的危险性,一旦不成功可能无法通过远程连接到系统,因此在升级之前最好有远程 ...
- 升级ssh编译错误
升级ssh 编译的时候遇到PAM headers not found,然后需要安装 pam-devel-1.1.1-20.el6.x86_64,自己下载了rpm包,安装报错,然后用yum -y ins ...
- centos7下升级SSH
Linux 发行版中集成的 SSH 软件版本都比较老,存在着一些漏洞和安全隐患,需要升级 SSH 服务软件修补漏洞提升系统安全. SSH:SSH 有许多标准,通常 Linux 中 ( Redhat, ...
- 升级SSH
本例使用CentOS6.6 原SSH版本为5.3P1 一.准备好需要升级到的新版本的软件包 openssh下载地址:http://www.openssh.com/portable.html#http ...
- 升级ssh后续问题
升级了openssh后远端的服务器无法通过sftp传输文件到高服务器,后来发现是远端的服务器ssh版本太低,而新升级了openssh的服务器已经不再支持老版本ssh client的相关协议,这时候有两 ...
- Redhat 6.9 升级SSH到OpenSSH_8.6p1完整文档
这个文章是转载,原文连接在这个:https://www.cnblogs.com/xshrim/p/6472679.html 这个问题遇到过,下面可以解决 ----------------------- ...
- centos6 升级安装openssh7
1.准备工作: 查看下当前SSH版本: [root@bogon ~]# ssh -V OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013 或者 [root@b ...
- centos 6&7 升级openssh
1.查看现在的版本 # rpm -qa | grep openssh openssh-clients-6.6.1p1-22.el7.x86_64 openssh-server-6.6.1p1-22.e ...
随机推荐
- 为什么要使用CMake?
如果你曾经维护过软件包的构建和安装过程,你将对CMake感兴趣.CMake是软件项目的一个开源生成管理器,它允许开发人员以简单的可移植文本文件格式指定生成参数.然后,CMake 使用此文件为本机开发工 ...
- 4-Django开发post、get接口
一.创建django应用程序 方法一:创建django项目时直接创建应用程序 方法二:命令行创建 1.进入manage.py所在目录 2.执行常见命令:python manage.py startap ...
- 了解一下Ubuntu系统
百度百科: ubuntu系统基于Debian发行版和GNOME桌面环境.Ubuntu的目标在于为一般用户提供一个最新的.同时又相当稳定的主要由自由软件构建而成的操作系统,它可免费使用,并带有社团及专业 ...
- 与Servlet相关的类
有4个有关的类,通过servlet可以获得其中的三个,然后通过ServletConfig间接获取ServletContext.1. ServletConfig该类是在Servlet容器初始化Servl ...
- QEMU KVM libvirt 手册(3) - Storage Media
访问Hard Drive 使用-hda –hdb qemu-system-x86_64 -enable-kvm -name ubuntutest -m 2048 -hda ubuntutest.im ...
- 一次java Cpu占用过高的排查
某一个项目CPU占用率一直很高,经常在40%-50%之间,最近比较闲,就开始了排查工作. 1.通过 jstack命令输出进程的堆栈信息 jstack 2788 >C:\log.txt 将堆栈信息 ...
- Chart 图表开源项目总结
在Android开发中,我们不免会遇到图表展示的需求,以下是本人之前star的悬浮窗的开源项目,供大家参考: 1. WilliamChart:创建图表的Android库 2. HelloCharts: ...
- MySQL-5.7.19 在阿里云 CentOS-7.0 上的安装
工具准备 查看系统是否安装了yum工具: [root@wangbo srv]# rpm -qa | grep yum yum-metadata-parser-1.1.4-10.el7.x86_64 y ...
- 第35节:Java面向对象中的多线程
Java面向对象中的多线程 多线程 在Java面向对象中的多线程中,要理解多线程的知识点,首先要掌握什么是进程,什么是线程?为什么有多线程呢?多线程存在的意义有什么什么呢?线程的创建方式又有哪些?以及 ...
- QMQ去哪儿网-mq中间件(启动失败)
简介 去哪儿网近日宣布开源其内部广泛使用的消息中间件 QMQ .QMQ 自 2012 年诞生以来在去哪儿网所有业务场景中广泛的应用,包括跟交易息息相关的订单场景: 也包括报价搜索等高吞吐量场景.目前在 ...