多人共用一个Linux机器怎么配置SSH?

Posted 段佳伟的小憩屋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多人共用一个Linux机器怎么配置SSH?相关的知识,希望对你有一定的参考价值。

问题:

iCode要求一个SSH公钥(public key)仅能给一个用户使用

当多人共用一台机器时,容易造成公钥重复的问题;

因为SSH公钥默认保存地址为:~/.ssh/id_rsa.pub

张三生成一个,李四不更改名字继续生成的话容易覆盖之前张三生成的key

解法:

第一步:每个用户生成一对自己专属的SSH密钥
用-f参数指定密钥文件的位置,把下面例子中的yangyang22换成你的名字,一路回车

$ ssh-keygen -t rsa -f ~/.ssh/id_rsa.yangyang22
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/users/yangyang22/.ssh/id_rsa.yangyang22.
Your public key has been saved in /home/users/yangyang22/.ssh/id_rsa.yangyang22.pub.
The key fingerprint is:
23:e4:7f:df:52:92:fb:f5:49:20:d4:36:f0:2d:bc:de yangyang22@cp01-rdqa-dev383.cp01.baidu.com
第二步:在~/.ssh/config中指定各个用户的密钥地址

【注】~/.ssh/config文件的权限必须是644,

chmod 644 ~/.ssh/config
这个文件里面,每个用户有三行,一定要换行,前面同学的答案里面格式有点问题,不换行一定会报Permission denied
按下面方式配置config文件,就能实现不同用户使用不同的密钥

Host icode.baidu.com
User yangyang22
IdentityFile ~/.ssh/id_rsa.yangyang22

Host icode.baidu.com
User yinyan
IdentityFile ~/.ssh/id_rsa.yinyan
git clone ssh://yangyang22@icode.baidu.com就会用~/.ssh/id_rsa.yangyang22来认证

git clone ssh://yinyan@icode.baidu.com就会用~/.ssh/id_rsa.yinyan来认证

第三步:把自己的ssh公钥(.pub文件内容)贴到icode上
cat ~/.ssh/id_rsa.yangyang22.pub
在iCode右上角>个人设置>添加SSH Keys

以上是关于多人共用一个Linux机器怎么配置SSH?的主要内容,如果未能解决你的问题,请参考以下文章

详解Linux系统安全:多人共用服务器,如何防止别人干“坏事”?

Linux配置免密登录

共用服务器多git账号配置

GitHubGiteeGitlab共用一个SSH密钥配置

如何在linux中如何配置ssh免密码登录

如何在linux中如何配置ssh免密码登录