ssh公钥连接linux服务器

1.  生成SSH密钥

ssh-keygen -t rsa -C "10001@qq.com"

 会生成rsa和rsa.pub,默认保存在 ~/.ssh/ 目录 ,rsa是私钥,rsa.pub是公钥。

 

2.  服务器端设置

编辑 etc/ssh/sshd_config 

去掉以下几行的注释, 开启公钥认证登陆 。

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys
AuthorizedKeysCommand none
AuthorizedKeysCommandRunAs nobody

如果需要禁止使用密码登录,可以设置

PasswordAuthentication no

 

重启ssh

service sshd restart

 

3.   在.ssh目录创建config文件(设置服务器端口,在连git服务器时)

host 192.168.1.101
user git

PreferredAuthentications publickey
identityfile  C:/Users/Administrator/.ssh/admin

hostname 192.168.1.101
port 22

指定连接192.168.1.101的服务器时使用admin私钥进行验证 。

 

4.  上传公钥到服务器

在git  bash里面执行以下命令 :

scp ~/.ssh/admin.pub git@192.168.1.101: ~/ 

 

5.  将公钥写入服务器验证文件

以root登陆服务器 ,再切换到git用户 。

在git用户目录建立 .ssh/authorized_keys 文件 。目录和文件都要新建 。

然后执行添加公钥命令

cat id_rsa.pub >> ~/.ssh/authorized_keys

 

6.  设置文件和目录权限

SSH对公钥、私钥的权限和所有权的要求是非常严格的,总结如下:

1、设置.ssh目录权限

 

$ chmod 700 -R .ssh
 

2、设置authorized_keys权限

 

$ chmod 600 authorized_keys

 

要保证.ssh和authorized_keys都只有用户自己有写权限。否则验证无效。

 

7.  ssh公钥验证登陆

输入ssh连服务器命令

ssh git@192.168.1.101

 

如果显示以下信息 ,表明密钥登陆成功 。

$ ssh  git@192.168.1.101

Last login: Sun Jul  6 22:04:32 2014 from 192.168.1.100

[git@localhost ~]$

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值