我如何保护我的SSH访问?

我是那些爬上梯子跳高跳的人,然后意识到他不知道如何游泳。

所以我有一个VPS,我不知道如何pipe理它。 我知道要做的第一件事就是确保它的安全,到目前为止我所发现的这个方向的第一个具体步骤是在穆斯林的评论中 :

此外,你应该尽快保证你的SSH访问。 我build议更改默认端口,使用基于密钥的身份validation和禁用密码身份validation和rootlogin(基本上创build一个标准的用户帐户供您login)

到目前为止,我所知道的只是使用我的VPS提供商的Web界面来打开一个具有root权限的控制台。 那么我应该如何遵循穆斯林的build议呢?

为了确保你的SSH,你应该做的下一个:

1)确保你有一个用户与sudo访问和公共密钥,这样做,请按照下列步骤:
a)通过发出以下命令来创build用户:

useradd sudo_user 

b)以此用户身份login并创build一个公钥/私钥集,然后设置authorized_keys:

 su - sudo_user ssh-keygen -t rsa touch ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys exit 

c)从/home/sudo_user/.ssh/id_rsa获取您的私钥,您将进一步使用它来login到服务器:

 cat /home/sudo_user/.ssh/id_rsa 

d)为您的用户设置sudo访问权限:

 echo "sudo_user ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers 

2)编辑你的/ etc / ssh / sshd_configconfiguration并进行下一个修改:
a)通过确保下一行说:禁用根访问

 PermitRootLogin no 

b)通过设置禁用密码authentication:

 PasswordAuthentication no 

 PubkeyAuthentication yes 

c)更改ssh的端口,确保首先在防火墙中打开新的端口:

 Port 12345 

你可以改变它,但任何你喜欢的。 d)通过发出以下命令重新加载ssh:

 service sshd reload 

要么

 service ssh reload