1、检查系统已安装的当前 SSH 版本
使用命令 ssh -V
查看当前 ssh 版本,输出如下:
OpenSSH_7.6p1 Ubuntu-4ubuntu0.7, OpenSSL 1.0.2n 7 Dec 2017
2、安装依赖,依次执行以下命令
sudo apt update
sudo apt install build-essential zlib1g-dev libssl-dev
3、设置环境
为了创建一个合适的环境来安装 OpenSSH 服务,需要创建一个安装环境
sudo mkdir /var/lib/sshd
sudo chmod -R 700 /var/lib/sshd/
sudo chown -R root:sys /var/lib/sshd/
4、下载源码并安装
从任何可用的HTTP镜像下载OpenSSH 9.3 版本,或者使用wget
命令直接在终端下载
下载源码到任意文件夹下:
wget -c https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.3p1.tar.gz
解压:
tar -xzf openssh-9.3p1.tar.gz
进入源码文件夹路径:
cd openssh-9.3p1/
安装时如果要启用PAM
和SELinux
支持,需分别添加--with-pam
和--with-selinux
选项,需要安装所有必需的头文件才能使它们正常工作
安装依赖:
sudo apt install libpam0g-dev libselinux1-dev libkrb5-dev
安装 ssh
,依次执行以下三命令:
./configure --with-kerberos5 --with-md5-passwords --with-pam --with-selinux --with-privsep-path=/var/lib/sshd/ --sysconfdir=/etc/ssh
make
sudo make install
安装完成后,重启系统,否则远程连接将继续使用旧版本
5、检查新版本
本地查看
打开一个新终端并运行:
ssh -V
远程查看
检查远程计算机上OpenSSH 版本是否更改:
ssh -v user@ip
在输出信息中查找 Remote protocol version
行,如果显示旧版本号
需复制新版本,操作如下:
cd /usr/sbin
mv sshd sshd.bak # 备份旧版本的sshd
sudo cp /usr/local/sbin/sshd sshd # 复制新版本sshd
再次使用远程查看版本命令(保险起见,建议复制后进行重启):
ssh -v suntoon@192.168.147.132
版本已更新到9.3
各种 OpenSSH 配置文件位于:
~/.ssh/*
– 此目录存储用户特定的 ssh 客户端配置(ssh 别名)和密钥。/etc/ssh/ssh_config
– 该文件包含系统范围的 ssh 客户端配置。/etc/ssh/sshd_config
– 包含 sshd 服务配置。
6、远程连接
ssh <user>@<ip>