快速升級OpenSSH8.6的辦法
首先: 最終的方法
創建一個文件夾,並且設置好一個啟動腳本.
內容主要如下:
├── rpm
│ ├── openssh-8.6p1-1.el8.x86_64.rpm
│ ├── openssh-clients-8.6p1-1.el8.x86_64.rpm
│ ├── openssh-clients-debuginfo-8.6p1-1.el8.x86_64.rpm
│ ├── openssh-debuginfo-8.6p1-1.el8.x86_64.rpm
│ ├── openssh-debugsource-8.6p1-1.el8.x86_64.rpm
│ ├── openssh-server-8.6p1-1.el8.x86_64.rpm
│ ├── openssh-server-debuginfo-8.6p1-1.el8.x86_64.rpm
│ └── sshd_config
└── update.sh
設置的update.sh也比較簡單
cd rpm
rpm -Uvh *.rpm
echo "開始修改策略"
chmod 400 /etc/ssh/ -R
cat <<EOF>/etc/pam.d/sshd
#%PAM-1.0
auth required pam_sepermit.so
auth include password-auth
account required pam_nologin.so
account include password-auth
password include password-auth
## pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
## pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open env_params
session optional pam_keyinit.so force revoke
session include password-auth
EOF
scp sshd_config /etc/ssh/
echo "重啟服務"
systemctl restart sshd
ssh -V
echo "!-_-!"
第一步: 下載必要的文件
上openssh的官網, 下載最新版本的openssh
最新的版本為 openssh8.6p1
在 CentOS7和CentOS8上面安裝rpmbuild等工具.
第二步 安裝rpmbuild以及進行設置
1. 安裝rpmbuild
yum install rpm-build -y
2. 創建必備的目錄
mkdir -p /root/rpmbuild/{SPECS,SOURCES,RPMS}
3. 修改openssh 里面的 spec文件並且進行處理.
解壓縮openssh.tar.gz 內的文件, 將 /contrib/redhat/openssh.spec
復制到 /root/rpmbuild/SPECS/openssh.spec
注意需要修改一下 如下三個配置:
%global no_x11_askpass 1
%global no_gnome_askpass 1
#BuildRequires: openssl-devel < 1.1
#注意將 最后一個配置文件注釋掉.
注意為了編譯openssh 還需要安裝多個軟件
yum install openssl-devel krb5-devel pam-devel -y
第三步 編譯成rpm包
rpmbuild -bb openssh.spec
很快就就能夠形成rpm包了
[root@centos76oracle19c x86_64]# pwd
/root/rpmbuild/RPMS/x86_64
[root@centos76oracle19c x86_64]# ll
總用量 4700
-rw-r--r-- 1 root root 666868 6月 23 23:32 openssh-8.6p1-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 632928 6月 23 23:32 openssh-clients-8.6p1-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 3045392 6月 23 23:32 openssh-debuginfo-8.6p1-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 459624 6月 23 23:32 openssh-server-8.6p1-1.el7.x86_64.rpm
在使用最上面的配置文件 就可以一鍵在centos7 上面進行openssh的升級了.
需要注意的是 centos8 以及 arm版本的 需要在重新編譯一遍才可以.