跳至正文
首页 » 使用 SSH 密钥登录VPS:提升安全性,远离暴力破解!

使用 SSH 密钥登录VPS:提升安全性,远离暴力破解!

内容纲要

在远程管理 VPS 时,SSH 登录的安全性至关重要。尽管密码登录简单易用,但它面临着暴力破解弱密码泄露等多种安全隐患。相比之下,密钥登录则通过加密密钥对提供更高的安全性,有效抵御常见攻击,是更推荐的登录方式。

TIPS. 使用密钥登入只会改变ssh登入方式,在vps使用sudo时让你输的密码还是之前的密码。

开始

生成密钥对

首先在VPS上制作密钥对。(只要是类Unix系统的就行)

#在本地终端(Linux 或 macOS)或使用 Git Bash(Windows)生成 SSH 密钥对:
root@Jinqian:~ ssh-keygen #建立密钥对
enerating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): #按Enter
Enter passphrase (empty for no passphrase): #输入密钥锁码
Enter same passphrase again: #再输入一遍密钥锁码
Your identification has been saved in /root/.ssh/id_rsa. #私钥
Your public key has been saved in /root/.ssh/id_rsa.pub. #公钥
The key fingerprint is:
SHA256:***
The key's randomart image is:
+---[RSA 3072]----+
****
+----[SHA256]-----+

密钥锁码在使用私钥时必须输入,这样就可以保护私钥不被盗用。当然,也可以留空,实现无密码登录。

现在,在 root 用户的主目录中生成了一个 .ssh 的隐藏目录,内含两个密钥文件。id_rsa 为私钥,id_rsa.pub 为公钥。

安装公钥

  • 如果你是在本地系统创建的密钥,使用sftp等工具把 id_rsa.pub (公钥)上传到服务器用户的主目录。
  • 如果你是在当前服务器上创建的密钥,使用mv命令把 id_rsa.pub (公钥)移动到服务器用户的主目录。

    mv .ssh/id_rsa.pub ~/
    
    #输入以下命令,在服务器上安装公钥
    cat id_rsa.pub >> .ssh/authorized_keys
    
    #配置权限
    chmod 600 ~/.ssh/authorized_keys
    chmod 700 ~/.ssh

    设置 SSH,打开密钥登录功能

    编辑 /etc/ssh/sshd_config 文件,进行如下设置:

    PubkeyAuthentication yes

    留意 root 用户能否通过 SSH 登录

    PermitRootLogin yes

    保存,重启 SSH 服务

    /etc/init.d/ssh restart

    进一步加强安全性

    禁用密码登录
    nano /etc/ssh/sshd_config

    找到并修改以下参数

    PasswordAuthentication no

    保存并退出,然后重启 SSH 服务

    /etc/init.d/ssh restart
    修改默认 SSH 端口

    更改 SSH 的默认端口(22),以降低被扫描的风险。
    在 /etc/ssh/sshd_config 文件中,找到 Port 参数并设置为非标准端口(例如 2222)

    Port 2222

    保存并退出,然后重启 SSH 服务

    /etc/init.d/ssh restart
标签:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注