centos7公升級OpenSSH(原始碼編譯公升級)

2021-09-27 05:43:19 字數 3299 閱讀 1955

公升級前首先確定當前openssh、openssl、zlib的版本,檢視版本操作如下:

[root@mysql ~]# ssh -v

openssh_7.4p1, openssl 1.0.2k-fips 26 jan 2017

[root@mysql ~]# rpm -q zlib

zlib-1.2.7-17.el7.x86_64

由此可以看到當前openssh版本為:7.4p1,openssl版本為:1.02k-fips,zlib

版本為1.2.7。

openssh:

openssl:

zlib:

為避免公升級過程出現錯誤導致sshd服務掛掉,可以先安裝telnet服務或者在機房方便處理故障。

注意:公升級前請確認已安裝gcc編譯環境,關閉selinux,公升級前做好備份。

解除安裝老版本zlib

[root@mysql ~]# rpm -e  --nodeps  zlib
解壓編譯

[root@mysql ~]# tar -zxvf zlib-1.2.11.tar.gz

[root@mysql ~]# cd zlib-1.2.11/

[root@mysql zlib-1.2.11]# ./configure --prefix=/usr/local/zlib

[root@mysql zlib-1.2.11]# make test

[root@mysql zlib-1.2.11]#make install

構建共享庫

[root@mysql zlib-1.2.11]#make clean

[root@mysql zlib-1.2.11]#./configure --shared

[root@mysql zlib-1.2.11]#make test

[root@mysql zlib-1.2.11]#make install

解除安裝老版本openssh

[root@mysql ~]# rpm -e  --nodeps  openssh
解壓編譯

[root@mysql ~]# tar -zxvf openssh-8.0p1.tar.gz 

[root@mysql openssh-8.0p1]#./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-ssl-dir=/usr/local/ssl --with-privsep=path=/var/lib/sshd

*注意:--with-zlib --with-ssl-dir的路徑為編譯安裝openssl的路徑*

[root@mysql openssh-8.0p1]#make && make install

編譯過程中可能會出現各種各樣的錯誤,根據提示的錯誤資訊找相應的解決辦法,這裡不做具體說明。

編譯完成後檢視是否安裝成功

[root@mysql openssh-8.0p1]# ssh -v

openssh_8.0p1, openssl 1.1.0k 28 may 2019

配置

[root@mysql openssh-8.0p1]# install -v -m755 contrib/ssh-copy-id /usr/bin/

"contrib/ssh-copy-id" -> "/usr/bin/ssh-copy-id"

[root@mysql openssh-8.0p1]# install -v -m644 contrib/ssh-copy-id.1 /usr/share/man/man1

"contrib/ssh-copy-id.1" -> "/usr/share/man/man1/ssh-copy-id.1"

[root@mysql openssh-8.0p1]# install -v -m755 -d /usr/share/doc/openssh-8.0p1*注意:openssh-8.0p1根據具體的openssh版本號填寫*

install: 正在建立目錄"/usr/share/doc/openssh-8.0p1"

[root@mysql openssh-8.0p1]# install -v -m644 install licence overview readme* /usr/share/doc/openssh-8.0p1

"install" -> "/usr/share/doc/openssh-8.0p1/install"

"licence" -> "/usr/share/doc/openssh-8.0p1/licence"

"overview" -> "/usr/share/doc/openssh-8.0p1/overview"

"readme" -> "/usr/share/doc/openssh-8.0p1/readme"

"readme.dns" -> "/usr/share/doc/openssh-8.0p1/readme.dns"

"readme.md" -> "/usr/share/doc/openssh-8.0p1/readme.md"

"readme.platform" -> "/usr/share/doc/openssh-8.0p1/readme.platform"

"readme.privsep" -> "/usr/share/doc/openssh-8.0p1/readme.privsep"

"readme.tun" -> "/usr/share/doc/openssh-8.0p1/readme.tun"

預設埠為22,root預設不能遠端登入,在/etc/ssh/sshd_config裡面新增"permitrootlogin yes"

[root@mysql openssh-8.0p1]# vim /etc/ssh/sshd_config
配置sshd開機自啟

[root@mysql openssh-8.0p1]# cp -p contrib/redhat/sshd.init /etc/init.d/sshd

[root@mysql openssh-8.0p1]# chmod a+x /etc/init.d/sshd

[root@mysql openssh-8.0p1]# chkconfig --add sshd

[root@mysql openssh-8.0p1]# chkconfig sshd on

CentOS7公升級核心

步驟1 載入公鑰 步驟2 安裝elrepo 步驟3 載入elrepo kernel元資料 步驟4 檢視可用的rpm包 步驟5 安裝最新版本的kernel yum disablerepo enablerepo elrepo kernel install y kernel ml.x86 64 步驟6 重...

centos7公升級核心

檢視當前系統核心版本 uname r 匯入elpepo倉庫公共金鑰 rpm import如有報錯資訊 curl 35 peer reports incompatible or unsupported protocol version 先執行 yum update y nss curl libcurl...

centos7公升級pip版本

但是pip沒有設定的話,其實使用的指向還是python2的 那麼我們要公升級pip的話首先要把pip指向python 進入usr bin目錄 cd usr bin 檢視pip字首的檔案 ll pip 刪除pip檔案 rm pip 重新設定pip檔案 ln s usr local python3 bi...