OpenSSH 8.0缓解了 scp工具和协议漏洞 CVE-2019-6111,该漏洞此前我们之前报导过:知名文件传输协议 SCP 被曝存在 35 年历史的安全漏洞。
将文件从远程系统复制到本地目录时,SCP 客户端无法验证 SCP 服务器返回的对象是否与请求的东西一致,这使得攻击者可以使用恶意 服务器 控制的内容创建或破坏本地文件。
OpenSSH 8.0 的缓解措施添加了客户端检查,查看从服务器发送的文件名与命令行请求是否匹配。
SCP 协议已经过时,不灵活且不易修复,OpenSSH 官方建议使用更现代的协议进行文件传输,如 sftp 和 rsync。
此版本新特性包括:
- ssh(1)、ssh-agent(1)、ssh-add(1):PKCS#11 token 中添加对 ECDSA 密钥的支持。
- ssh(1)、sshd(8):基于 Streamlined NTRU Prime 4591^761 和 X25519 的组合,添加实验性量子计算抗性密钥交换方法。
- ssh-keygen(1):将默认 RSA 密钥大小增加到 3072 位。
- ssh(1):允许“PKCS11Provider = none”覆盖 ssh_config 中 PKCS11Provider 指令的后续实例。
- ssh(1):提示是否录制新主机密钥时,输入密钥指纹作为“yes”。
- ssh-keygen(1):在单个命令行调用上签名多个证书时,允许自动递增证书序列号。
- scp(1)、sftp(1):接受 -J 选项作为 scp 和 sftp 命令行上 ProxyJump 的别名。
- ssh-agent(1)、ssh-pkcs11-helper(8)、ssh-add(1):接受“-v”命令行标志以增加输出的详细程度;将详细标志传递给子进程,例如从 ssh-agent 启动的 ssh-pkcs11-helper。
- ssh-add(1):添加“-T”选项以允许通过执行签名和验证来测试代理中的密钥是否可用。
- sshd(8):在 PAM 环境中暴露 $SSH_CONNECTION。
完整更新内容查看更新日志:http://www.openssh.com/txt/release-8.0
CentOS6&7(通用):
yum install wget gcc -y yum group install 'Development Tools' -y yum install -y zlib-devel openssl-devel mkdir /var/lib/sshd chmod -R 700 /var/lib/sshd/ chown -R root:sys /var/lib/sshd/ useradd -r -U -d /var/lib/sshd/ -c "sshd privsep" -s /bin/false sshd wget https://cloudflare.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.0p1.tar.gz
出现无法下载openssh-8.0p1.tar.gz的情况,请使用博客分流地址:
wget https://cikeblog.com/e/openssh-8.0p1.tar.gz
tar -xzf openssh-8.0p1.tar.gz cd openssh-8.0p1/ yum install pam-devel libselinux-devel zlib-devel openssl-devel -y ./configure --with-md5-passwords --with-pam --with-selinux --with-privsep-path=/var/lib/sshd/ --sysconfdir=/etc/ssh make && make install
#开启root登录:
echo 'PermitRootLogin yes' >>/etc/ssh/sshd_config && service sshd restart
重新登录后:
ssh -V
出现:
[root@localhost ~]# ssh -V OpenSSH_8.0p1, OpenSSL 1.0.1e-fips 11 Feb 2013
升级完成!