centos6.5中openssh從5.3升級到7.3
centos6.5中openssh從5.3升級到7.3
參考:
相關說明
CentOS6.5 自帶的SSH版本5.3太低,安全檢查報有漏洞,需要升級版本。
本文使用openssh-7.3p1的版本進行原始碼升級安裝。
升級OpenSSH不難,難的是在升級前的基礎環境安裝。需要以下的軟體:gcc-c++,zlib,OpenSSL,pam
升級過程ssh中斷,需先將telnet服務開啟。如能直接登陸系統,則不需要安裝telnet.
需要先安裝xinted,telnet-server
參考:http://www.cnblogs.com/xlmeng1988/archive/2012/04/24/telnet-server.html
需要安裝如下包:
telnet-server-1.2-134.24.1.x86_64.rpm
xinetd-2.3.14-40.el6.x86_64.rpm
xinetd-2.3.14-40.el6.src.rpm
啟動TELNET服務
編輯/etc/xinetd.d/telnet, 將其中的 disable = yes 的yes改為no.
使用chkconfig命令直接開啟:[root@localhost loong]# chkconfig telnet on
啟用xinetd服務:service xinetd restart
允許root使用telnet登陸:不建議開放telnet的root登入,容易帶來安全隱患。
注:預設情況下,系統只允許普通使用者telnet登入,不允許root使用者登入。要想獲得root許可權,可以使用普通使用者登入,然後執行su,來獲得root許可權。
或使用一下方法,允許root登入telnet:
方法一:# mv /etc/securetty /etc/securetty.bak (不建議這種方法,測試完後再改回去吧!)
方法二:修改/etc/pam.d/remote,註釋掉:auth required pam_securetty.so
升級OpenSSH
基礎環境安裝三種方式,YUM、rpm、原始碼安裝
1、yum安裝
應該是最方便的方法了。
yum -y gcc-c++,zlib,zlib-devel,openssl,openssl-devel,pam-devel
2、rpm安裝
2.1、gcc-c++安裝步驟
順序不能顛倒,否則會報錯
rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm
rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm
rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm
rpm -ivh cpp-4.4.7-17.el6.x86_64.rpm
rpm -Uvh kernel-headers-2.6.32-642.el6.x86_64.rpm
rpm -Uvh tzdata-2016c-1.el6.noarch.rpm
rpm -Uvh glibc-devel-2.12-1.192.el6.x86_64.rpm glibc-2.12-1.192.el6.x86_64.rpm glibc-headers-2.12-1.192.el6.x86_64.rpm glibc-common-2.12-1.192.el6.x86_64.rpm
rpm -Uvh libgcc-4.4.7-17.el6.x86_64.rpm
rpm -Uvh libgomp-4.4.7-17.el6.x86_64.rpm
rpm -ivh gcc-4.4.7-17.el6.x86_64.rpm
rpm -Uvh libstdc++-4.4.7-17.el6.x86_64.rpm
rpm -ivh libstdc++-devel-4.4.7-17.el6.x86_64.rpm
rpm -ivh gcc-c++-4.4.7-17.el6.x86_64.rpm
2.2、zlib安裝步驟
rpm -ivh zlib-devel-1.2.3-29.el6.x86_64.rpm
2.3、OpenSSL安裝步驟
順序不能顛倒,否則會報錯。
rpm -Uvh keyutils-1.4-5.el6.x86_64.rpm keyutils-libs-1.4-5.el6.x86_64.rpm keyutils-libs-devel-1.4-5.el6.x86_64.rpm
rpm -Uvh krb5-libs-1.10.3-57.el6.x86_64.rpm krb5-workstation-1.10.3-57.el6.x86_64.rpm
rpm -Uvh libselinux-2.0.94-7.el6.x86_64.rpm libselinux-utils-2.0.94-7.el6.x86_64.rpm libselinux-python-2.0.94-7.el6.x86_64.rpm
rpm -ivh libsepol-devel-2.0.41-4.el6.x86_64.rpm
rpm -ivh libselinux-devel-2.0.94-7.el6.x86_64.rpm
rpm -Uvh e2fsprogs-libs-1.41.12-22.el6.x86_64.rpm e2fsprogs-1.41.12-22.el6.x86_64.rpm libss-1.41.12-22.el6.x86_64.rpm libcom_err-1.41.12-22.el6.x86_64.rpm
rpm -ivh krb5-devel-1.10.3-57.el6.x86_64.rpm libcom_err-devel-1.41.12-22.el6.x86_64.rpm
rpm -Uvh openssl-devel-1.0.1e-48.el6.x86_64.rpm openssl-1.0.1e-48.el6.x86_64.rpm
2.4、pam安裝步驟
rpm -Uvh pam-devel-1.1.1-22.el6.x86_64.rpm pam-1.1.1-22.el6.x86_64.rpm
3、原始碼安裝
只做過zlib和OpenSSL的原始碼安裝。rpm已安裝,就不用安裝了。
3.1、zlib原始碼安裝
[root@localhost tmp]# tar xf zlib-1.2.8.tar.gz
[root@localhost tmp]# cd zlib-1.2.8
[root@localhost zlib-1.2.8]# ./configure --prefix=/usr/local/zlib
Checking for gcc...
Checking for shared library support...
Building shared library libz.so.1.2.8 with gcc.
Checking for off64_t... Yes.
Checking for fseeko... Yes.
Checking for strerror... Yes.
Checking for unistd.h... Yes.
Checking for stdarg.h... Yes.
Checking whether to use vs[n]printf() or s[n]printf()... using vs[n]printf().
Checking for vsnprintf() in stdio.h... Yes.
Checking for return value of vsnprintf()... Yes.
Checking for attribute(visibility) support... Yes.
[root@localhost zlib-1.2.8]# make
[root@localhost zlib-1.2.8]# make install
3.2、OpenSSL原始碼安裝
[root@localhost tmp]# tar zxf openssl-1.0.2h.tar.gz
[root@localhost tmp]# cd openssl-1.0.2h
[root@localhost openssl-1.0.2h]# ./config --prefix=/usr/local/openssl --shared
[root@localhost openssl-1.0.2h]# make depend
[root@localhost openssl-1.0.2h]# make
[root@localhost openssl-1.0.2h]# make test
[root@localhost openssl-1.0.2h]# make install
4、原始碼安裝OpenSSH
安裝前最好先開啟telnet服務,以防升級失敗,無法使用ssh登入時可以使用telnet。
# 解除安裝舊版本openssh,解除安裝可以在make之後進行。
rpm -qa | grep openssh
rpm -e --nodeps `rpm -qa | grep openssh`
# 升級新版本
# --with-ssl-dir=*** 選項,在OpenSSL不是預設安裝路徑的時候新增。
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-zlib=/usr/local/zlib --with-md5-passwords --with-pam
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/openssl --with-zlib=/usr/local/zlib --with-md5-passwords --with-pam
make
make install
# 複製配置檔案
cp ssh_config /etc/ssh/
cp sshd_config /etc/ssh/
cp moduli /etc/ssh/
# 複製啟動指令碼到/etc/init.d
# 根據安裝路徑情況,可能需要修改啟動指令碼中sshd的路徑
cp contrib/redhat/sshd.init /etc/init.d/sshd
/usr/sbin/sshd -t -f /etc/ssh/sshd_config
# 加入開機自啟
chkconfig --add sshd
chkconfig sshd on
chkconfig sshd --list
# 開啟root使用者遠端登入。
# 此步驟不是必須。建議是關閉該選項,開啟會有安全隱患。
vi /etc/ssh/sshd_config
PermitRootLogin yes
# 開啟SSH服務
service sshd start
5、關閉telnet服務,
編輯/etc/xinetd.d/telnet, 將其中的 disable = yes 的yes改為no.
使用chkconfig命令直接開啟:[root@localhost loong]# chkconfig telnet off
恢復securetty:# cp /etc/securetty.bak /etc/securetty
6、問題:重啟系統後,需直接登陸控制檯,重啟sshd服務方可遠端正常訪問;
service sshd stop
service sshd start
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29519108/viewspace-2284309/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Centos6.5 離線 Openssh 升級CentOS
- OpenSSH升級(從OpenSSH_7.4p1升級到OpenSSH_8.4p1) [操作指令碼]指令碼
- Centos升級到openssh9.7CentOS
- redhat系統升級openssh到7.5Redhat
- suse11 openssh 升級到8.0
- Centos7 升級openssh到最高版本CentOS
- CentOS6.9下升級預設的OpenSSH操作記錄(升級到OpenSSH_7.6p1)CentOS
- Centos7 openssh升級到7.9p1CentOS
- redhat 7.4從openssh7.6離線升級openssh8.4p1解決方法Redhat
- Ubuntu升級opensshUbuntu
- aix升級opensshAI
- 升級openssh7.9
- Linux openssh升級8.0Linux
- 升級php7.3PHP
- Redis從入門到精通:中級篇Redis
- 原始碼升級SUSE openssh原始碼
- 從中產階級到一夜貧窮
- openssh 漏洞修復 openssl升級 OpenSSH_9.8p1麒麟系統
- MongoDB升級--從3.4到3.6MongoDB
- 升級 ubuntu,從 18.04 到 22.04Ubuntu
- 中國5強:從世界級城市到世界級城市群(附下載)
- CentOS6.5配置MYSQL一主多從詳解CentOSMySql
- mongodb單機從3.2升級到4.0.4升級MongoDB
- Ctyun系統升級OpenSSH 9.3詳細教程
- Ubuntu16.04升級openssh-9.8p1Ubuntu
- openSSH
- 《柳葉刀》:預計到2100年中國人口將降至7.3億
- Openssh-7.9p1升級+系統調優
- RHEL6_CentOS6_Openssh8.0p1升級CentOS
- RockyLinux8伺服器升級openssh9.9Linux伺服器
- Centos7 升級至openssh-9.8p1CentOS
- Redis從入門到精通:初級篇Redis
- 記一次在openEuler系統下離線編譯升級到openssh9.8p1編譯
- 7.3
- ABP Framework 手動升級指南:從6.0.1升級到7.0.0Framework
- 執行緒安全(中)--徹底搞懂synchronized(從偏向鎖到重量級鎖)執行緒synchronized
- Openssh 8.4p1及Openssl 1.1.1h升級
- oraclelinux9.2內網升級OpenSSH9.8p1OracleLinux內網