使用SSH KEY

2019-09-30  本文已影响0人  网路元素

在使用git时,如果使用gitolite架设的服务器时,需要用到ssh key来作验证,同时也是方便每次操作git库时免去输密码的麻烦。同样情况,我们在常用的服务器与客户端之间使用SSH访问时,也可以使用ssh key来验证登录身份,每次只需连接即可。

在SSH里提供了两种级别的安全验证,其中一种就是最常用的帐号密码登录方式,这种级别在内网倒没什么问题,如果是在外网,建议使用基于“公钥加密”机制的安全验证了,其采用了非对称加密方式,将公钥上传到服务器,每次从服务器获取数据时,服务器先用公钥将数据加密,然后客户端收到加密后的数据 包再使用相应的私钥解密还原数据,这样就可以保证密文在网络传输过程中的安全,即使有人劫获了密文,没有对应的密钥也是还原不了数据。

那么接下来还是看看如何使用吧!

1.生成钥匙对

xinu@slam:~$ ssh-keygen -t rsa -C “guochongxin@qq.com

使用上述命令生成钥匙对,其中-t表示钥匙对采用的加密类型为后面设置的rsa,-C是注释,说明这个KEY的用途等,这里使用邮箱主要是方便管理,说明这个KEY是谁的。

运行该命令后有如下内容输出:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/xinu/.ssh/id_rsa):

这里按“回车”键确认生成的钥匙对保存在默认地址,接下来会提示如下:

Enter passphrase (empty for no passphrase):

这里要求输入密码,如果回车表示密码为空,请按实际处理,输入密码后会提示再次输入确认:

Enter same passphrase again:

输入并“回车”后会生成KEY,会显示该钥匙的私钥为/home/xinu/.ssh/id_rsa,公钥为/home/xinu/.ssh/id_rsa.pub,还有指纹及随机艺术图,该钥匙对文件以ASCII码形式保存,可随意打开查阅。

2.多钥匙配置

当我们再次生成一把钥匙或从朋友那拿到一个服务器登录的私钥时,我们如何使用这两人把钥匙呢?假如这把钥匙名叫id_rsa2,并且其保存在~/.ssh/目录下,接下来我们将/etc/ssh/ssh_config文件拷贝为~/.ssh/config,然后修改该文件,保证在Host * 节下有如下两项:

IdentityFile ~/.ssh/id_rsa
IdentityFile ~/.ssh/id_rsa2

这样两把KEY就可以对于任意主机进行访问(前提是该主机有相就的公钥并且开放SSH访问权限)。

3.launchpad里对于SSH的配置

登录Launchpad后,切换到个人信息管理页面,点击“SSH keys:”后面的“+”按钮,打开id_rsa.pub文件,将该文件所有内容复制到添加页面的文本框里,再点击“Import Public Key”按钮即可。

至此,整个SSH KEY的基本使用就了解了一遍,当然github.com也会使用到,都有相就的使用指南。

参考网址:

http://blog.lizhigang.net/archives/249
http://zuyunfei.com/2013/04/10/setup-github-ssh-key/
http://www.asheep.cn/skill/git-ssh-key.html
https://wiki.archlinux.org/index.php/SSH_Keys_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

上一篇下一篇

猜你喜欢

热点阅读