前言
对于Linux服务器,默认以密码登陆,安全性比较差,很早前就有计划修改为使用密钥登陆,一直觉得比较麻烦搁置着,其实步骤并不难,只是当时没觉得安全问题有那么严重而已。如果你也是这么认为,那么可以尝试登陆Linux服务器,输入以下命令:lastb | less
然后你会看到以下的情形:
这里显示的是尝试登陆,但是登陆失败的记录。可以看到几乎每天都会有大量的尝试登陆存在。为了服务器安全,禁止密码登陆,使用密钥方式登陆还是必要的。这里我尽量简单的记录下我设置的过程。
生成密钥
由于密钥是这里最为重要的部分,所以生成密钥务必亲自动手,切勿使用第三方不靠谱的服务生成。
Windows
如果你在Windows平台,那么直接去下载putty,使用其中的PuTTYgen生成即可。注意,一定不要从任何第三方网站下载。
这里操作比较简单,生成完成后,分别保存公钥和私钥即可。
Linux/MacOS
使用ssh-keygen生成,输入以下命令:ssh-keygen -t rsa
之后会在~/.ssh/目录下生成两个文件,其中id_rsa是私钥,id_rsa.pub是公钥,分别保存以备用。
上传公钥并配置服务器
配置上传生成的公钥
登陆需要配置密钥登陆的服务器,将公钥内容填入~/.ssh/authorized_keys文件中:cd ~/.ssh/
vi authorized_keys