# 安装升级、配置OpenSSH

> 作者/来源: UCloud 运营管理员
> 发布时间: 2023-01-11T05:19:00.000Z
> 分类: CDN
> 标签: Linux, CDN
> 原文链接: http://117.50.162.249:3000/yun/articles/1380

---

# 安装升级、配置OpenSSH

> 来源: https://www.ucloud.cn/yun/129453.html
> 作者: IT那活儿
> 发布日期: 发布于2023-01-11 13:19

安装升级、配置OpenSSH

**点击上方“IT那活儿”公众号，关注后了解更多内容，不管IT什么活儿，干就完了！！！**

PART1

**安装升级、配置OpenSSH**

**1. 根据以下地址下载最新OpenSSH与OpenSSL源码包**

OpenSSH下载地址：*https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/*

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_000.png)

OpenSSL下载地址：*https://www.ope**nssl.org/source/*

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_001.png)

有互联网也可以使用以下方式下载：

- wget -c *https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.0p1.tar.gz*
- wget -c *https://www.openssl.org/source/openssl-1.1.1n.tar.gz*

**2. 安装依赖**

```
yum install  -y gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel pam* zlib
```

**3. 备份原系统文件，以防止更新出错造成系统不能使用，用来恢复原有配置**

```
mv /usr/bin/openssl /usr/bin/openssl.bakmv /usr/include/openssl /usr/include/openssl.bak
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_002.png)

**4. 解压**

```
tar -xf openssl-1.1.1n.tar.gz
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_003.png)

**5. 配置后的目录路径**

进入解压后的目录下：

```
cd openssl-1.1.1n
```

进行配置openssl并指定配置后的目录路径：

```
./config --prefix=/usr/local/openssl --shared
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_004.png)

**6. 执行make进行编译并安装openssl**

```
make && make install
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_005.png)

**7. 查看openssl依赖的动态库**

**注：ldd作用及解释**

在linux中，ldd是list、dynamic、dependencies的缩写。

意思：列出动态库依赖关系。

--查看当前路径：

```
pwd
```

--查看openssl动态依赖库的关系：

```
ldd /usr/local/openssl/bin/openssl
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_006.png)

**8. 查看openssl所属目录路径**

**注：**which  --->作用及解释

意思：查找文件位置、路径。

-n 指定文件名长度，指定的长度必须大于或等于所有文件中最长的文件名；

-p 与-n参数相同，但此处的包括了文件的路径；

-w指定输出时栏位的宽度；

-V 显示版本信息。

```
which openssl
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_007.png)

从该图中可发现当前openssl还是老版本openssl。

**所以需要以下操作来更新：**

可查看版本来进行验证：

```
openssl version -a
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_008.png)

**9. 给新的配置做链接**

```
ln -s /usr/local/openssl/bin/openssl /usr/bin/opensslln -s /usr/local/openssl/include/openssl /usr/include/openssl
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_009.png)

```
echo "/usr/local/openssl/lib/" >> /etc/ld.so.conf
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_010.png)

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_011.png)

Ssl库文件做软链接：

```
ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
```

**10. 使其生效**

```
ldconfig
```

**11. 验证**

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_012.png)

PART2

**安装OpenSSH**

**1. 备份原文件**

```
cd /etc/ssh && mkdir –p /root/sshbak && mv ./* /root/sshbak
```

**2.** **进入源码包所在目录进行解压**

解压：

```
tar -xf openssh-9.0p1.tar.gz
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_013.png)

**3. 进入解压后的目录下，进行配置并指定安装路径**

```
./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-openssl-includes=/usr/local/openssl/include --with-ssl-dir=/usr/local/openssl --with-zlib --with-md5-passwords --with-pam
```

**注：**

**--prefix指定ssh安装路径**

**--sysconfdir指定ssh配置文件路径**

**--with：指定依赖**

- with-依赖包名称=依赖包目录；
- with-openssl-includes指定ssl的includes路径；
- with-ssl-dir指定ssl路径；
- with-zlib 指定zlib库；
- with-md5-passwords指定MD5验证码；
- with-pam指定pam认证。

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_014.png)

**4. 配置无报错，进行编译并安装**

```
make && make install
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_015.png)

**5. 备份原ssh命令**

```
mv /usr/bin/ssh /usr/bin/ssh-bak20201108
```

**6. 将新安装的做链接**

```
ln -s /usr/local/openssh/bin/ssh /usr/bin/ssh
```

**7. 将ssh启动脚本复制到系统启动目录下**

```
cp -a contrib/redhat/sshd.init /etc/init.d/sshd
```

**8. 将ssh认证文件复制到系统认证目录下**

```
cp -a contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
```

**9****. 给启动脚本赋予执行权限**

```
chmod +x /etc/init.d/sshd
```

**10. 配置开机自启动**

```
chkconfig --add sshd && systemctl enable sshd
```

**11. 验证**

```
ssh -V
```

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_016.png)

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_017.png)

END

## 本文作者：杨泽鹏（上海新炬王翦团队）

##

## 本文来源：“IT那活儿”公众号

##

![](https://ucloud-blog.cn-bj.ufileos.com/articles/129453/images/129453_018.png)

‍