Git SSHauthentication

我的服务器上有Debian,Fisheye和Git。 我的git仓库由Fisheyepipe理。 在鱼眼部分没有authentication。 所有的authentication程序都由gitpipe理。

我想使用SSH身份validation,所以我不需要提供用户名和密码,因为我将更改推送到服务器。 我知道如何创build一个rsa密钥,但我在哪里复制我的公钥在服务器?

文章“ 服务器上的Git – 安装服务器 ”的关键部分是:

您需要将一些开发人员SSH公钥添加到该用户的~/.ssh/authorized_keys文件中。
假设您通过电子邮件收到了几个密钥,并将其保存到临时文件中。 再次,公共密钥看起来像这样:

 $ cat /tmp/id_rsa.john.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCB007n/ww+ouN4gSLKssMxXnBOvf9LGt4L ojG6rs6hPB09j9R/T17/x4lhJA0F3FR1rP6kYBRsWj2aThGw6HXLm9/5zytK6Ztg3RPKK+4k Yjh6541NYsnEAZuXz0jTTyAUfrtU3Z5E003C4oxOj6H0rfIF1kKI9MAQLMdpGW1GYEIgS9Ez Sdfd8AcCIicTDWbqLAcU4UpkaX8KyGlLwsNuuGztobF8m72ALC/nLF6JLtPofwFBlgc+myiv O7TCUSBdLQlgMVOFq1I2uPWQOkOWQAHukEOmfjy2jctxSDBQ220ymjaNsHT4kgtZg2AYYgPq dAv8JggJICUvax2T9va5 gsg-keypair 

(注意:确保按键显示在一行上)

你只需将它们追加到你的authorized_keys文件中:

 $ cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys 

如果您的服务器上没有authorized_keys文件,请创build它,但一定要正确保护它。

 server$ mkdir ~/.ssh server$ chmod 700 ~/.ssh server$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys server$ chmod 600 ~/.ssh/authorized_keys server$ rm ~/id_rsa.pub 

有关具体示例,请参阅“ 为Gerrit和Hudson创buildSSH密钥 ”。

  • 确保git在你的ssh守护进程使用的PATH中。
  • 确保~/.ssh所有父目录不可写入组(仅适用于chmod 755 )。

你需要在〜/ .ssh / authorized_keys里面粘贴你的公钥。 创build文件,如果它不存在。