mengjincn 发表于 2018-7-27 14:06

Linux下SSH密钥配置

本帖最后由 mengjincn 于 2018-7-27 15:00 编辑

### SSH 密钥配置

#### 生成SSH密钥

`ssh-keygen -b 4096 -t rsa`

> 批量生成`ssh-keygen -b 4096 -t rsa -f /tmp/id_rsa -C mengjincn@163.com -P ''`

对于提示可以按照默认设置即可,直接按回车

#### 向远端服务器上传公钥

`ssh-copy-id user@ip`

按照提示输入user用户在服务器ip上的密码

### GitHub密钥配置

#### GitHub上创建Git公钥

找到.ssh文件夹,用文本编辑器打开“id_rsa.pub”文件,复制内容到剪贴板。
打开 https://github.com/settings/ssh ,点击 Add SSH Key 按钮,粘贴进去保存即可。

#### 测试连接

把公钥添加到GitHub上后,在终端输入命令`$ ssh -T git@github.com` 如果返回的结果中包含如下内容,则连接配置成功:
` You've successfully authenticated, but GitHub does not provide shell access.`

克隆Git仓库的时候记得需要选择SSH地址,这样在提交代码的时候就可以不用再次输入用户名和密码了。


### 新建用户添加密钥

#### 新建用户

```
useradd dangdang
cd /home/dangdang
su - dangdang
```

#### 新建密钥

```
ssh-keygen -b 4096 -t rsa
cd .ssh
cat id_rsa.pub > authorized_keys
chmod 600 authorized_keys
```

#### 传递私钥给客户端用户

```
cat > id_rsa
输入私钥内容

chmod 700 id_rsa
ssh -i id_rsa dangdang@ip
```

lizi111 发表于 2018-7-27 14:18

嗯…………………

mengjincn 发表于 2018-7-27 14:51

liphily 发表于 2018-7-27 14:42
ssh -keygen
ssh-copy-id name
话说我按照提示输入key文件的filename,居然copy时候提示未找到授权文件— ...

先执行
ssh-keygen -b 4096 -t rsa

ssh-keygen是一个完整的命令,中间不能有空格。遇到提示直接点击回车,完成后会在~/.ssh 目录下生成id_rsa和id_rsa.pub两个文件。一个是私钥,一个是公钥。

cdaipojie 发表于 2018-7-27 15:05

没看懂呀。。好久没那个了。

5200pojie 发表于 2018-7-27 16:18

谢谢分享,向大佬学习
页: [1]
查看完整版本: Linux下SSH密钥配置