本文要讲的,就是如何简化从Mac登录Linux主机的操作步骤,提高效率。所谓的“免登陆”其实是不存在的,只是说,从验证密码的登录方式,改为
公私钥对的登录验证方式。使用后者的方式,每次会由ssh客户端自动发送验证信息,所以就免去了人工输入密码,看起来好像“免登陆”一样。
关于这么做的原理,大家可以自己去Google,关键词是“非对称加密”,“RSA算法”,“基于ssh密钥对的自动登录”,等等,我就不多解释了。我直接说操作步骤吧:
- 生成密钥对
- 用密码登录远程主机,将公钥拷贝过去
- done
怎么样,无敌简单吧?
生成密钥对
执行命令 ssh
-keygen -t rsa
执行结果如下:
charles@mac:~ > ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/charles/.ssh/id_rsa):
Created directory ‘/Users/charles/.ssh’.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/charles/.ssh/id_rsa.
Your public key has been saved in /Users/charles/.ssh/id_rsa.pub.
The key fingerprint is:
c8:4b:85:87:90:7c:1a:67:b6:71:f5:51:0c:9d:a2:89 charles@TCMBP.local
The key’s randomart image is:
+–[ RSA 2048]—-+
| … .. o=.. |
| +.*o. …+ |
| Bo+o. o.. |
| …+E o |
| + S |
| . . |
| . |
| |
| |
+—————–+
注意:提示enter passphrase的时候,不要输入,因为你本来就想少打一次密码的,这里如果设置了用密码保护私钥,那登录的时候还是要输密码,就白做了。
做完这个步骤后,cd ~/.ssh,你就可以看到你刚才生成的密钥对,id_rsa是私钥,id_rsa.pub是公钥。下一步,就是把公钥拷贝到目标主机上。
将公钥拷贝到目标主机
用ssh登录到目标主机,然后cd ~/.ssh目录,如果目录不存在,那么要自己创建mkdir -p ~/.ssh。你今后要用哪个帐户登录主机,就在哪个帐户的home目录下操作,如果要免登陆root,就要去/root下操作。使用~比较好,不用多想了。
有了.ssh目录后,进去,然后把id_rsa.pub传过去,可以用scp命令,这里要做的一个主要操作,就是将id_rsa.pub,的文件内
容,写到一个叫authorized_keys的文件中去,如果目标主机的相应用户名下已经有了.ssh目录和authorized_keys文件,那你
操作要小心一点,可能别人也做过免登陆的设置,这个时候你要小心不要把别人的设置给覆盖了。如果没有的话,就创建文件touch
~/.ssh/authorized_keys,然后执行cat id_rsa.pub >>
authorized_keys,将你的公钥写入到authorized_keys中,公钥文件.pub里面只有一行信息,上面的命令相当于把那一行信息
追加到authorized_keys文件最后一行。
如果.ssh目录是你主机刚刚创建的,那么可能还需要改变一下这个目录的权限,将权限放低,chmod -R 0600 ~/.ssh,到此,所有设置就算做完了,你可以退出登录,在自己的主机上试一下了,现在再敲入ssh命令后,不用密码就可以登录主机了。
转自:http://sexywp.com/mac-os-x-ssh-key-pair-login-linux.htm
分享到:
相关推荐
解决的问题为 git 配置多个ssh key 我们配置好两个 sshkey 后 分别为两个 如果是 github.com gitlab.com gitee.com 这三个当然没有问题 开发此工具碰到的问题是 开发者碰到同一代码托管平台 来自多个账号的 sshkey ...
华为 h3c 3com ras转16进制工具 sshkey.exe华为 h3c 3com ras转16进制工具 sshkey.exe
华三路由器ssh加密文件转换器,使路由器可以使用.
sshkey 是放在服务器端,这样pull commit push就无需输入密码,这里提供个教程
C#SSH KEY各种工具文档说明,有集成代码项目 有兴趣可以看看!
putty,puttygen,sshkey工具合集下载,一次下载,不用东找西找了
将生成的公有密钥转化为设备所需要的字符串
华为、思科、W3C RSA认证转16进制
简单记录了CENTOS6中GIT安装,ssh-keygen生成,客户端使用TortoiseGit加载KEYGEN连接GIT服务器的过程。
Linux 自动更新sshkey秘钥 kown-host文件
使用密码远程登陆服务器容易被暴力破解,怎样提高安全性呢,建议使用ssh key登陆。
生成ssh key并分发到其他机器上,在filelist文件中填入主机IP(一行一个IP),然后运行install.sh即可。
ssh key 批量分发项目-仅做参考详细笔记实战案例
资源来自pypi官网。 资源全名:gitolite-sshkey-form-0.2.1.tar.gz
Win 10 ...Clone git repositories using ssh,clone前配置SSH key 1.本机生成密钥 ssh-keygen -t rsa -C 1********1@qq.com 连续回车后如下输出: 原创文章 40获赞 6访问量 2945 关注 私信 展开
主要给大家介绍了关于Redis未授权访问配合SSH key文件利用的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
Windows远程连接linux SSH Secure Shell Client + SSH Secure File Transfer Client
利用SSH-Key实现安全的密钥证书方式登陆