用户登录

每次用 SSH 登录到云服务器,都需要输入用户的密码,我们可以配置使用密钥的方式验证用户身份,这样登录服务器的时候就不用输入用户的密码了。只需要把在本地电脑上生成的公钥内容,放到服务器上的某个用户主目录下的一个特定的文件里就行了。

我当前的位置是在用户主目录的下面,进入到 .ssh 这个目录,在这个目录里要创建一个文件。

先新建一个终端标签,然后查看一下本地电脑上的用户主目录下的公钥文件的位置,复制一下这个公钥文件内容,我们要把本地的这个公钥内容放到服务器上。

回到登录的这台服务器,在 wanghao 这个用户主目录下的 .ssh 目录里面,创建一个文件,用 vi 命令创建这个文件,名字是 authorized_keys。

按一下小 i 进入编辑模式,然后把刚才复制的公钥内容粘贴到这个文件里,再按下 esc 退出编辑模式,然后输入 :wq ,回车。保存并退出。

查看一下目录里的资源,观察一下刚才创建的这个 authorized_keys 文件的权限,这个文件的拥有者对这个文件有读取与写入权限,用户组也拥有读取与写入的权限,对于其它人,拥有读取权限。

因为这个文件非常重要,所以我们必须要限制一下文件的权限,用 chmod 修改一下这个文件的权限,改成 600,文件是用户主目录 .ssh 下面的 authorized_keys。

600 这个权限的意思是只给文件的拥有者读取还有写入权限,其它人对这个文件没有任何权限,只有这样才能使用密钥的方式验证登录。

执行 exit,退出登录,然后重新再试着用 wanghao 这个用户登录到服务器,你会发现这次就没要求我们输入用户的密码,直接就登录了。 再执行一下 exit 退出登录。

再试着使用 root 用户的身份登录,提示要输入用户的密码,因为之前我们只是配置了 wanghao 这个用户,通过密钥的方式验证登录。

查看一下 root 用户 .ssh 目录下面的这个 authorized_keys 文件,文件里没有内容。如果你想在用 root 用户登录的时候也用密钥的方式验证,需要再把本地的公钥放到这个 root 用户的 .ssh 下面的这个 authorized_keys 文件里。

用密钥的方式验证登录《 Node.js 服务端应用开发:云服务器 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点