SSH是建立在应用层和传输层基础上的安全协议,其目的是专为远程登录会话和其他网络服务提供安全性的保障,用过SSH远程登录的人都比较熟悉,可以认为SSH是一种安全的Shell。
SSH登录是需要用户名和密码的,要实现无密码登录,就需要创建SSH 密钥(ssh key),SSH 密钥可以认为是和另一台电脑通信时的唯一的识别证,SSH 密钥对可以让我们方便的登录到 SSH 服务器,而无需输入密码。
- 检查SSH密钥是否存在
输入下面命令
ls -l ~/.ssh
输入下面命令
cd ~/.ssh,ls -l ~/
如果有文件id_rsa.pub 或 id_dsa.pub,则密钥存在。
wwwdeiMac:~ www$ ls -l ~/.ssh
total 24
-rw------- 1 www staff 1766 2 2 2018 id_rsa
-rw-r--r--@ 1 www staff 402 2 2 2018 id_rsa.pub
-rw-r--r-- 1 www staff 367 2 26 11:25 known_hosts
- 生成新的ssh密钥在命令行中输入
ssh-keygen -t rsa -C "your_email@example.com"
wwwdeiMac:~ www$ ssh-keygen -t rsa -C "your_email@example.com"
# Creates a new ssh key using the provided email
Generating public/private rsa key pair.
Enter file in which to save the key (/your_home_path/.ssh/id_rsa):
生成ssh 密钥后,可以到~/.ssh目录下查看相关文件,一般来说ssh 密钥会包含id_rsa和id_rsa.pub两个文件,分别表示生成的私钥和公钥。
在git等源代码管理中,使用cat ~/.ssh/id_rsa.pub命令,打印并将相应内容复制到源代码管理服务器即可实现git的无密码管理。