2024-09-01
建站教程
00

黑客是很疯狂的,只要能登录你的服务器,就可以窃取你的数据,然后用数据要挟你给钱,我的服务器一晚上被尝试这么多次:

Last failed login: Thu Aug 29 20:25:51 EDT 2024 from 39.155.215.179 on ssh

There were 1827 failed login attempts since the last successful login. Last login: Thu Aug 29 10:02:13 2024 from 120.244.236.133

如图: image.png

为了有效防止黑客,就一定要保护好自己打开的端口。用ss -tuln指令查看自己打开了哪些端口,如下图,可以看到我的80、443、22都是打开的。

image.png

网站服务的80和443端口,用Docker启动,要以非root用户的身份运行Docker容器,可以在Dockerfile中创建和使用非root用户,或者在启动容器时指定用户。这一点不强求,毕竟很多东西是需要Docker里也是root的。

宿主机ssh登录的22端口,这个端口非常重要了,一定要保护好。保护措施:

为了保护你的服务器的22端口SSH登录,你可以采取以下措施:

  1. 使用强密码或SSH密钥认证
    • 确保所有用户使用强密码登录,或更好的是,禁用密码登录,使用SSH密钥认证。SSH密钥认证更安全,不容易被暴力破解。

这里介绍ssh密钥对登录,目前我采用的也是如此方式,首先在服务器执行: ssh-keygen -t rsa -b 4096 -C "[email protected]" 生成了密钥对。

把私钥文件/root/.ssh/id_rsa下载到windows本地C:\Users\Administrator\moba_ssh_rsa\id_rsa。确保私钥文件的安全性,不要泄露给他人。服务器的私钥可以删除掉。

本地可以用指令连接服务器:ssh -i C:\Users\Administrator\moba_ssh_rsa\id_rsa user@your_server_ip

或者用 mobaxterm 连接服务器,打开mobaxterm,如下图,使用密钥对登录:

image.png

  1. 更改默认SSH端口

    • 将SSH服务的默认端口22更改为一个非标准端口,这可以减少被攻击的机会。

    具体步骤:

    • 编辑/etc/ssh/sshd_config文件,找到Port 22行并将其更改为一个非标准端口,例如Port 2222
    • 重启SSH服务:sudo systemctl restart sshd

如下图:

image.png

  1. 使用防火墙限制访问

    • 使用防火墙如ufwiptables限制对SSH端口的访问,仅允许特定IP地址访问。

    具体步骤(使用ufw为例):

    • 允许特定IP访问SSH:sudo ufw allow from <your_ip> to any port 22
    • 如果更改了端口,允许新端口:sudo ufw allow <new_port>
    • 启用ufw:sudo ufw enable
  2. 启用Fail2Ban防止暴力破解

    • 安装并配置Fail2Ban,它会监控登录失败的尝试,并在多次失败后自动封锁可疑IP。

    具体步骤:

    • 安装Fail2Ban:sudo apt install fail2ban
    • 配置Fail2Ban:编辑/etc/fail2ban/jail.local,添加如下配置:
      ini
      [sshd] enabled = true port = 22 filter = sshd logpath = /var/log/auth.log maxretry = 3 bantime = 3600
    • 重启Fail2Ban:sudo systemctl restart fail2ban
  3. 禁用Root用户SSH登录

    • 禁用root用户直接通过SSH登录,增加安全性。

    具体步骤:

    • 编辑/etc/ssh/sshd_config文件,找到PermitRootLogin行,并将其更改为no
    • 重启SSH服务:sudo systemctl restart sshd

通过以上步骤,你可以显著提高SSH服务的安全性,减少被攻击的风险。

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!