首页 >> 分享>>Ubuntu>>ssh-keygen配合ssh_config免密码登录VPS
ssh-keygen配合ssh_config免密码登录VPS
用过终端登录远程服务器或者VPS的童鞋都用过类似的命令:ssh username@hostname.com
,输入密码后就可以登录远程服务器了,但是人总是懒滴,Here,免输入密码登录远程服务器的方法:
-
打开终端,本地生成id_rsa(私钥),id_rsa.pub(公钥):
ssh-keygen -t rsa
如图所示(一路按enter键):
公钥(id_rsa.pub)和私钥(id_rsa)默认生成在:
~/.ssh/ 目录下。
-
拷贝公钥到远程服务器上,或则其他地方whatever…
scp ~/.ssh/id_rsa.pub username@hostname.com:~/.ssh/
上面的username换成你的用户名,和服务器地址。然后你需要登录到你的远程服务器上操作。
-
登录远程服务器操作
ssh username@hostname.com
输入密码后登录,也许是你最后一次登录服务器需要密码。
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
大功告成,
logout
如果你没操作错误的话,你就可以在客户端输入ssh username@hostname.com
登录服务器了,不用输入密码。 -
配置SSH CONFIG
touch ~/.ssh/config
新建一个自定义ssh config文件
vim ~/.ssh/config
用VIM或者其他编辑器打开config文件,配置config, 粘贴如以下格式内容,保存:
Host vps(这里是自定义的host简称,以后连接远程服务器就可以用命令
ssh vps
) User 这里填用户名(如:root) HostName 这里填服务器地址也可以是域名(如:server.xxoo.com) Port 这里填服务器open-ssh端口(默认:22) IdentityFile 这里是刚刚生成的私钥文件地址(如~/.ssh/id_rsa)其实这个东西可以用来配置你连接不同的远程服务器,比如有两个github账户,或者两个git服务器等等。
貌似你现在可以用ssh vps登录远程服务器了。一直记不住这些东东,就先上这一笔记吧,仅供参考。
PS..ssh-keygen
命令中-t代表生成文件的类型如rsa,dsa等等,然后-C参数貌似是一个注释吧,Provides a new comment.
如果用ssh-keygen -t rsa -C "注释内容,一般为邮件地址",生成的公钥后面会带上注释,暂时我也不知道拿来干嘛的。。。
更多内容:
来学习一下,好棒的内容
也太专业了
不知道博主交换链接否,谢谢
[…] 参考网页:http://fiture.me/share/657.html […]
不错不错,受益匪浅!!