Mac 下 SSH 免密码登录
服务器公钥配置
本地进入~/.ssh/ 目录,找到id_rsa.pub,输入命令:cat id_rsa.pub,复制输出公钥内容。
可以通过:
ssh -p 端口号 username@xxx.xxx.xxx.xxx
说明:端口号非必填项,如果服务器是默认链接端口,就可以不填。
输入密码后,即可进入服务器,然后
cd ~/.ssh
进入~/.ssh目录,输入:
cat 刚才复制的内容粘贴在这里 >> authorized_keys2
赋予这个新建的authorized_keys2一定的读写权限:
chmod 600 authorized_keys2
配置好后,输入exit
退出服务器,接着在本地配置下面内容。
ssh本机配置(单服务器)
vim ~/.ssh/config
Host 根据自己的喜好填写主机名(爱填啥填啥,好记就行,因为这个是我们后面登录需要用到的。) HostName xxx.xxx.xxx.xxx(即服务器IP地址) User username Port 实际端口号
在本地终端输入ssh 主机名
即可马上登陆远程服务器。
多服务器登录配置
有些同学在看完上面单机版配置后,心里肯定想,我如果再配置一台是不是就需要在本地新建一个config2文件呢。
其实不然,只需要在配置多台服务器时,在config文件中进行追加服务器登录信息即可。
以下是我本地~/.ssh/config 配置多台服务器最终结果:
Host hostName1(暂时叫它 1号服务器)
HostName xxx.xxx.xxx.xxx
User username
Port 端口号
Host hostName2(暂时叫它 2号服务器)
HostName xxx.xxx.xxx.xxx
User root
保存后,输出 ssh hostName1
直接登录1号服务器
同样,可以在命令行输出ssh hostName2
直接登录2号服务器
不配置config的结果就是每次都需要输入一大串内容和复杂的密码进行登录,非常耗费时间。
如同本文开篇输入的:
ssh -p 端口号 username@xxx.xxx.xxx.xxx (回车,接着长长的难记的密码,通常是复制过来,但是找文件,打开,复制都是时间啊,如果你要在多台服务器之间来回折腾,这个时间省下来不就可以去泡妹子,或者陪媳妇了嘛!)
本作品采用《CC 协议》,转载必须注明作者和本文链接
消灭0回复,0评论
Mac 可以利用
ssh-copy-id
这个小工具将公钥上传到服务器补充建议:上传公钥到服务器之后修改
ssh
服务的sshd_config
配置文件@512817655 nice
多服务器要生成不同的
id_rsa.pub
文件吧我也按照楼主这样配置了,但是遇到了一个大坑,就是centos配置ssh免密码登录后,仍提示输入密码。最后我查了好久才解决,分享给大家我的解决方案。[http://www.cf2z.club/blog/Centos-configure...]
@mingyun 不需要,这个文件是本地生成的,生成一次就可以了,然后部署到多个服务器上。就相当于你有同一把钥匙,可以开启多扇大门。
补充一下,可以用这条命令直接将公钥推送到服务器:
scp id_rsa.pub user@ip:~/.ssh