Centos云服务器安全防护

  1. 1. SSH防护
    1. 更改端口
    2. 更改用户
    3. RSA秘钥登录

  因为国内备案复杂,所以去年在国外买了个云服务器,AWS、GCP等一众大厂转了一圈,一个比一个贵,最后还是在 RackNerd 上买了个 2C4G 的小服务器,一年200多rmb,也不算贵。
  结果,没过两个月就被各种脚本攻击渗透,直接被 RackNerd 官方给封禁了。原来,RackNerd 只负责提供一个服务器,安全防护基本等于没有。所以,这里记录一下,如何防护自己的 Centos 云服务器。

  我们个人开发使用的服务器,一般来说不具有太高的价值,不太会吸引到高强度的攻击。绝大部分情况下,我们需要应对的是一些自动化脚本的恶意扫描和登录尝试。
  想要登录服务器,一般需要 IP + 端口 + 用户名 + 密码。而公网 IP 是无法隐藏的,这一点上我们做不了什么。所以,基本的安全防护,就要从其他三个方面入手。

1. SSH防护

更改端口

ssh默认的端口是22,将其改为其他端口(大于1024小于65535的都行)

vim /etc/ssh/sshd_config

# 修改 Port 配置
Port yourPort

# 保存退出,重启sshd
sudo systemctl restart sshd

更改用户

因为 Linux 中 root 用户是最高权限的用户,所有的 Linux 机器默认都是用 root 用户登录,所以我们需要把登录的用户名改掉,给黑客脚本增加破解难度。

useradd yourname -g root

visudo

# 给yourname用户添加权限
yourname ALL=(ALL) NOPASSWD: ALL

# 修改ssh配置,禁止通过root用户登录
vim /etc/ssh/sshd_config

PermitRootLogin no

# 保存退出,重启sshd
sudo systemctl restart sshd

RSA秘钥登录

不管使用什么样的用户名和密码,都有被攻破的概率,但是使用 RSA 秘钥,就能把概率降到最低。

ssh-keygen -t rsa -b 4096 -C "yourhost"

#然后将你本地的机器上的 id_rsa.pub 复制到服务器的 authorized_keys中

转载请注明来源,欢迎指出错误或表达不够清晰之处。可以在评论区留言,也可以邮件至 hellozhugj@gmail.com