确保禁用SSH的TCP转发功能
将AllowTcpForwarding设置为no,可以禁止SSH客户端进行TCP端口转发。TCP端口转发是通过SSH隧道在本地和远程主机之间传输数据,关闭后可有效限制用户在SSH会话中的数据传输和访问范围,从而增强系统的安全性。
影响范围说明
配置后具体影响如下:
- 限制数据传输: 禁用TCP端口转发可以防止用户在SSH会话中传输数据,从而降低数据泄露的风险。
- 减少攻击面:开启TCP端口转发可能带来额外的安全风险,例如攻击者可能绕过网络安全措施或访问受限服务。禁用该功能可以减少系统的攻击面。
- 避免资源滥用:TCP端口转发可能占用服务器资源和带宽,禁用后可以避免资源被滥用。
- 符合安全最佳实践:在某些情况下,如安全性要求较高的环境,禁用TCP端口转发可能是安全最佳实践之一。
操作步骤
禁用TCP端口转发可能会影响某些应用和用例,例如需要远程访问受限服务的情况。
- 检查AllowTcpForwarding配置是否正确(需同时满足如下两个命令行的检查):
- 命令一
sshd -T -C user=root -C host="$(hostname)" -C addr="$(grep $(hostname) /etc/hosts | awk '{print $1}')" | grep allowtcpforwarding如下为示例,表示禁止rootTCP端口转发。
allowtcpforwarding no
- 命令二
grep -Ei '^\s*AllowTcpForwarding\s+yes\b' /etc/ssh/sshd_config
如下为示例,表示不存在“AllowTcpForwardingyes”的配置。
Nothing is returned
- 命令一
- 编辑“/etc/ssh/sshd_config”配置文件,并重启sshd服务。
- 打开配置文件。
vim /etc/ssh/sshd_config
- 按“i”进入编辑模式,修改或添加“AllowTcpForwarding”参数,并设置为“no”。
AllowTcpForwarding no
- 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
- 重启sshd服务。
systemctl restart sshd
- 打开配置文件。
父主题: 运行和服务