linux免密远程登陆
2018-06-13 本文已影响0人
季丽伟
作为一名搬砖的程序员,我们总是不断的会远程登录服务器去查看日志等东东...童鞋们可能会借助XSHELL、SecureCRT等辅助工具,但这样总感谢low low滴,我比较喜欢直接在终端下直接登到服务器。常用命令:
// 第一步
ssh root@116.62.145.100
//第二步
enter password
每次登录都要重复这2步,太烦了,我们一次性配置免密登录,以后登录只需ssh 别名, 再也不用担心输错密码了。更重要的是免密登录在project部署中是必不可少的。
ssh alias
下面我们将一步步的帮助小白们实现自己的第一个免密登陆
配置免密登陆的步骤
- 生成秘钥对
ssh-keygen -t rsa -C "你自己的名字" -f "你自己的名字_rsa"
-C:一定要大写
-f: 文件
rsa: 加密算法
前后“你自己的名字可以不一致”,名字可以设置花名或者邮箱都可以
// 新建目录
mkdir keys
cd keys
// 在keys下生成密钥对
ssh-keygen -t rsa -C "jiliweiying@126.com" -f "jiliweiying@126.com_rsa"
图片.png
图片.png
- 上传配置公钥
- 上传公钥到服务器对应账号下的home路径下的.ssh/下(ssh-copy-id -i "公钥文件名" 用户名@服务器IP或域名)
ssh-copy-id -i jiliweiying@126.com_rsa.pub root@116.62.145.100
公钥上传到服务器下的目录为:/root/.ssh
- 配置公钥文件访问权限为600
-rw------- (600) -- 只有属主有读写权限
chmod 600 authorized_keys
- 配置本地私钥
- 把第一步生成的私钥复制到你的home目录下的.ssh/路径下
cp jiliweiying@126.com_rsa ../.ssh
- 配置你的私钥文件访问权限为600
- chmod 600 你的私钥文件名
此时其实就可以进行免密登录了,小试牛刀一下:
注意此时是在.ssh目录下运行的,否则找不到私钥文件
// -i 找到私钥文件
ssh -i jiliweiying@126.com_rsa root@116.62.145.100
- 免密登陆功能的本地配置文件
- 编辑自己home目录下的.ssh/路径下的config文件
- 配置config文件的访问权限为644
#aliyun
Host myAliyun
HostName 116.62.145.100
IdentityFile ~/.ssh/jiliweiying@126.com_rsa
StrictHostKeyChecking no
IdentitiesOnly yes
Protocol 2
Compression yes
ServerAliveInterval 60
ServerAliveCountMax 20
LogLevel INFO
User root
至此,已经完美的实现免密登录了,可以给自己来个鼓掌了
图片.png