SSH密钥登录Linux系统服务器的设置方法
程序员文章站
2022-07-01 09:14:19
这篇文章主要介绍了SSH密钥登录Linux系统服务器的设置方法,同时附送关闭SSH密码登录的方法~需要的朋友可以参考下... 15-07-16...
在通过ssh访问服务器时,使用ssh密钥进行认证是尤其重要的。这样做为服务器增加了额外的保护,确保只有那些拥有密钥的人才能访问服务器。
在本地机器上运行下面命令以生成ssh密钥:
复制代码
代码如下: ssh-keygen -t rsa
你会看到下面的输出,询问要将密钥写到哪一个文件里,并且设置一个密码:
复制代码
代码如下: generating public/private rsa key pair.
enter file in which to save the key (/root/.ssh/id_rsa): my_key
enter passphrase (empty for no passphrase):
enter same passphrase again:
your identification has been saved in my_key.
your public key has been saved in my_key.pub.
the key fingerprint is:
sha256:mqd/pzztrscjzb6mpfjyrr5v1pjlbcgprr5tjnoi20a
enter file in which to save the key (/root/.ssh/id_rsa): my_key
enter passphrase (empty for no passphrase):
enter same passphrase again:
your identification has been saved in my_key.
your public key has been saved in my_key.pub.
the key fingerprint is:
sha256:mqd/pzztrscjzb6mpfjyrr5v1pjlbcgprr5tjnoi20a
完成之后,就得到两个文件:
复制代码
代码如下: my_key</p>
<p>my_key.pub
接下来把my_key.pub拷贝到~/.ssh/authorized_key中
复制代码
代码如下: cp my_key.pub ~/.ssh/authorized_keys
然后使用下面命令将密钥上传到服务器:
复制代码
代码如下: scp -p16543 authorized_keys user@yourserver-ip:/home/user/.ssh/
至此,你就可以从这台本地机器上无密码地访问服务器了。
关闭ssh的密码认证
既然已经有了ssh密钥,那么关闭ssh的密码认证就会更安全了。再次打开并编辑sshd_config,按如下设置:
复制代码
代码如下: challengeresponseauthentication no
passwordauthentication no
usepam no
passwordauthentication no
usepam no