1. インストールの失敗を防ぐため、リモート接続に ssh を使用することはできないため、最初に Telnet をインストールしてください。
yum -y install telnet*
systemctl enable telnet.socket
systemctl start telnet.socket
注: セキュリティ ファイルを閉じるか変更する必要があります (そうしないと、root は Telnet 経由でログインできません)。
mv /etc/securetty /etc/securetty.bak
注: ファイアウォールがある場合は、ポート 23 を開く必要があります。
firewall-cmd --zone=public --add-port=23/tcp --permanent
ファイアウォールを再起動します。systemctl restart firewalld.service
ファイアウォールで開いているすべてのポートを表示します。firewall-cmd --zone=public --list-ports
2. 依存関係パッケージをインストールします。
yum -y install zlib*
yum -y install pam-*
yum -y install gcc
yum -y install openssl-devel
3. 元の ssh サービスのバージョンをバックアップします。
mv /etc/ssh /etc/ssh.bak
mv /usr/bin/ssh /usr/bin/ssh.bak
mv /usr/sbin/sshd /usr/sbin/sshd.bak
4. openssh をインストールします。
ダウンロード アドレス:
http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/
私がダウンロードしたものは次のとおりです: openssh-9.0p1.tar.gz
tar -zxvf openssh-9.0p1.tar.gz
cd openssh-9.0p1
./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/ssl
make && make install
5. yum によってインストールされた openssh をアンインストールします: yum remove openssh
6. 構成を変更します。
開始する前に、次の場所で新しく生成された sshd_config を変更します。
vim /usr/local/openssh/etc/sshd_config
ファイルを対応するシステムフォルダーにコピーします
cp /root/openssh-9.0p1/contrib/redhat/sshd.init /etc/init.d/sshd
chkconfig --add sshd
cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config
cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd
cp /usr/local/openssh/bin/ssh /usr/bin/ssh
cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
cp/usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub
7.
#Start systemctl start sshd.service
# を起動してステータスを確認しますsystemctl status sshd.service
。起動時に自動起動を追加します: systemctl enable sshd.service
8. 最終検証済みバージョン:ssh -V