端口调整 | 面板管理 | 操作指南:Vestacp面板下修改SS端口的关键细节解析

  为了提升服务器的安全性,通常会修改SSH的默认端口,避免暴力破解攻击。常见的操作是编辑文件/etc/ssh/sshd_config,将默认端口22改为其他端口,然后重启SSH服务,命令为:/etc/init.d/ssh restart。

  更安全的方式是使用密钥认证代替密码登录,并关闭密码登录功能。具体步骤如下:

  首先,生成密钥并保存。以下示例将密钥保存在/root/.ssh目录下,其中id_rsa是私钥,id_rsa.pub是公钥。执行命令:

  ```bash

  ssh-keygen -t rsa

  ```

  系统会提示选择密钥保存路径,直接按回车使用默认路径即可。接着输入密码短语(也可留空),完成密钥生成后,私钥保存在/root/.ssh/id_rsa,公钥保存在/root/.ssh/id_rsa.pub。

  其次,将公钥添加到授权列表中:

  ```bash

  cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

  ```

  然后,编辑SSH配置文件/etc/ssh/sshd_config,找到以下三行配置,将前面的注释符号“#”去掉,确保启用公钥认证:

  ```

  RSAAuthentication yes

  PubkeyAuthentication yes

  AuthorizedKeysFile .ssh/authorized_keys

  ```

  保存后重启SSH服务:/etc/init.d/ssh restart。

  如果使用Putty连接服务器,默认无法识别id_rsa格式的私钥文件,需要使用Puttygen工具将其转换成.ppk格式。转换完成后,将生成的.ppk文件保存在本地并使用它进行登录。而Xshell等工具则支持直接使用id_rsa私钥,无需转换。

  最后,为了完全禁止密码登录,在/etc/ssh/sshd_config中找到以下配置:

  ```

  PasswordAuthentication yes

  ```

  将其修改为:

  ```

  PasswordAuthentication no

  ```

  并去掉前面的注释符号,保存后同样重启SSH服务。

  完成上述步骤后,通常就能通过密钥方式安全登录服务器。不过如果使用了VestaCP面板,可能会遇到无法用密钥登录的情况。原因是VestaCP自带的fail2ban安全工具,会阻止非默认端口的访问。需要提前在fail2ban里修改相应的防火墙规则,确保新端口被允许访问。否则,fail2ban会将登录尝试视为攻击并阻断。

  例如,如果将SSH端口改为8063,必须确保fail2ban规则中相应端口号也同步修改,保持一致,才能正常使用密钥登录。

  以上方法结合了多方资料和经验,能够有效提升SSH的安全性,减小被暴力破解的风险。

端口调整 | 面板管理 | 操作指南:Vestacp面板下修改SS端口的关键细节解析