在购买VPS后首先应该做的就是禁止密码登录,并配置密钥登录保证服务器安全,附上脚本:
curl https://raw.githubusercontent.com/mixool/across/master/ssh/securityssh.sh | bash

如此过后,服务器虽然已经十分安全,但是执行lastb或者journalctl | grep -E "password"仍然可见很多非法登录请求,我们可以配置nftables禁止尝试爆破ssh的ip连接,不让其继续趴在心爱的VPS为所欲为

以下操作脚本在debian 10 64 上测试:
bash <(curl -s https://raw.githubusercontent.com/mixool/across/master/nftables/nft.sh)

Tips:

  1. 需要nftables版本大于0.9.2,debian 10可从buster-backports安装
  2. 每小时超过5次ssh请求的ip就加入黑名单,代码: tcp flags syn tcp dport ssh meter bbbmeter { ip saddr limit rate over 5/hour } add @blackhole { ip saddr } counter drop
  3. 黑名单默认禁5天,如果此IP期间继续尝试,时间会重置为5天
  4. 如果不小心把自己禁止了,需要面板重启服务器
  5. 脚本设置了仅允许访问 http https ssh 三个端口
  6. nft list ruleset 查看效果
  7. 其它参数设置看脚本内容,看不懂脚本就多看看nftables的wiki

标签: none

添加新评论