macOS基于BSD的系统,有自带的SSH客户端,创建密钥、登录Linux服务器等操作还是很方便的,本教程就给大家讲解一下在macOS下如何创建SSH Key并登录Linux服务器。
创建密钥
ssh-keygen
该命令有一些参数,对于初次接触的,可以直接使用默认的参数。在创建的过程中,系统会提示我们输入私钥的密码和SSH Key存储的位置。
根据上图输入的,在当前目录下,会生成一个wker(私钥)和一个wker.pub(公钥)文件,私钥文件如果没有在.ssh目录(该目录在用户的根目录下,是隐藏的目录)下,请挪到该目录下。
上传私钥
目前很多的VPS提供商,如Vultr,可以在后台添加公钥,如果新建主机的时候选择了该SSH Key,那么就不需要上传,可以直接登录了。对于已经创建好的主机,需要自己把公钥追加到.ssh目录下的authorized_keys文件中,具体操作如下,以root用户为例:
scp ~/.ssh/wker.pub root@<ip地址>:/root/wker.pub
输入root用户的登录密码之后,私钥就会被上传到服务器的root目录下,然后追加到authorized_keys文件中:
cat /root/wker.pub >> ~/.ssh/authorized_keys
如果没有authorized_keys这个文件,请到.ssh目录下新建一个,并把权限设置为600:
cat authorized_keys chmod 600 authorized_keys
配置SSH服务
使用vi编辑器修改/etc/ssh/sshd_config文件,启用PubkeyAuthentication和PermitRootLogin,这两个配置一般都是存在,只要把这几个参数前面的#去掉即可。
PubkeyAuthentication yes PermitRootLogin yes
如果要禁用密码登录,把PasswordAuthentication 设置为 no即可。
PasswordAuthentication no
重启SSH服务即可:
systemctl restart sshd.service
扩展阅读
ssh-keygen命令用法:https://linux.die.net/man/1/ssh-keygen