我正在使用带有 SSH 隧道的 Proxmox。我已禁用所有外部端口和连接,但通过 SSH 隧道进行访问除外。
那么我的服务器强化策略是怎样的呢?
我的设置:
- 禁用 root 登录
- 使用 ssh 密钥代替密码
- 不要更改默认的 SSH 端口,因为除了隧道之外我不接受连接。
- 使用fail2ban
我应该添加什么?
答案1
评论太长:
- 不要忘记保持您的系统为最新状态并及时安装安全更新和错误修复。
使用 ssh 密钥代替密码
为了明确这一点:你不仅应该使用密钥而不是密码,但 ssh 服务器必须配置为完全禁止密码验证. 即PasswordAuthentication no
在sshd_config
配置。
使用fail2ban
我通常建议您仅在公开可用的服务上运行 fail2ban。
但你的 ssh 服务器真的需要公开访问吗?你的授权用户(可能)真的可以连接吗?从任何地方?
防火墙访问列表将显著减少攻击面,甚至可能完全消除暴力攻击。
即使您的用户没有固定的 IP 地址,您仍然可以使用来自您的用户通常用于此类防火墙策略的特定 ISP 的(大)IP 地址范围。即使这样,您仍然会看到滥用量大幅减少。