mil*_*non 1 security ssh centos
我试图禁用 CentOS 8 上 OpenSSH 服务器中使用的 AES256-CBC 密码,同时将安全策略设置为“未来”。
根据本页的表格(请参阅“在加密策略级别中启用的密码套件和协议”),未来的加密策略似乎不应启用 CBC 模式密码(请参阅与“未来”和“CBC 模式密码”)。
我运行此命令将我的 CentOS 8 系统从默认更改为未来:
sudo update-crypto-policies --set FUTURE
Run Code Online (Sandbox Code Playgroud)
随后重新启动:
sudo reboot
Run Code Online (Sandbox Code Playgroud)
然而,Nessus 扫描显示 SSH 服务支持“aes256-cbc”算法。此输出对应于Nessus插件。
经过一番调查,服务(和客户端)的未来安全策略文件似乎确实包含“aes256-cbc”:
$ grep aes256-cbc /usr/share/crypto-policies/FUTURE/openssh*.txt
/usr/share/crypto-policies/FUTURE/opensshserver.txt:CRYPTO_POLICY='-oCiphers=aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes256-ctr,aes256-cbc -oMACs=umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512 -oGSSAPIKeyExchange=no -oKexAlgorithms=curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512 -oHostKeyAlgorithms=rsa-sha2-256,ecdsa-sha2-nistp256,ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384,ecdsa-sha2-nistp384-cert-v01@openssh.com,rsa-sha2-512,ecdsa-sha2-nistp521,ecdsa-sha2-nistp521-cert-v01@openssh.com,ssh-ed25519,ssh-ed25519-cert-v01@openssh.com -oPubkeyAcceptedKeyTypes=rsa-sha2-256,ecdsa-sha2-nistp256,ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384,ecdsa-sha2-nistp384-cert-v01@openssh.com,rsa-sha2-512,ecdsa-sha2-nistp521,ecdsa-sha2-nistp521-cert-v01@openssh.com,ssh-ed25519,ssh-ed25519-cert-v01@openssh.com'
/usr/share/crypto-policies/FUTURE/openssh.txt:Ciphers aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes256-ctr,aes256-cbc
Run Code Online (Sandbox Code Playgroud)
我可以使 SSH 选择退出全局安全策略(并Ciphers手动在 sshd_config 中设置)或手动编辑 /usr/share/crypto-policies/FUTURE/openssh*.txt 文件以排除 CBC,但我不喜欢其中任何一个的想法。
这是否可能是 Centos 8 安全策略配置中的一个错误,或者是否有某种方法可以在不手动指定密码列表的情况下禁用 CBC?
小智 5
经过几个小时的工作,我解决了这个问题
您需要在目录 /etc/crypto-policies/policies/modules/中创建自定义策略,设置规则以禁用 CBC 密码
例子
vim /etc/crypto-policies/policies/modules/NO-CBC.pmod
Run Code Online (Sandbox Code Playgroud)
在此文件中,您应该放置所有要禁用的密码,如下所示:
tls_cipher = -AES-256-CBC -AES-128-CBC
cipher = -AES-128-CBC -AES-256-CBC -CAMELLIA-256-CBC -CAMELLIA-128-CBC
ssh_cipher = -AES-128-CBC -AES-256-CBC
Run Code Online (Sandbox Code Playgroud)
保存后,您需要加载包含您创建的修改的策略。就我而言,我使用的是“未来”政策。您可以选择任何策略,但不要忘记设置修改器,如下所示:
update-crypto-policies --set FUTURE:NO-CBC
Run Code Online (Sandbox Code Playgroud)
现在,只需重新启动 sshd 服务,CBC 将被禁用。
systemctl 重新启动 sshd
| 归档时间: |
|
| 查看次数: |
4313 次 |
| 最近记录: |