【ssh】ssh密钥配置无效(如git@github.com: Permission denied (publickey).)

使用ssh-keygen创建密钥后,默认会将公司钥保存至~/.ssh目录下,文件名分别为id_rsaid_rsa.pub(如果你使用的是rsa加密)。这种情况下,一般不需要配置其他内容即可使用这个密钥。


但是,如果你生成的密钥不是这个名字!
那么ssh是不会默认使用这个密钥的!
这也很自然,毕竟~/.ssh下可能放着一堆密钥,怎么知道用哪个呢?


要使用一个密钥,需要编辑/etc/ssh/ssh_config文件(需要root权限),把你要使用的密钥声明出来:

Host *
	# 默认情况下这个文件中的Host *下有很多注释
	# 不用管这些注释,直接新增一行以下内容即可
	IdentityFile ~/.ssh/<你使用的密钥的【私钥】文件名>

假如你创建的密钥叫my_key(私钥)和my_key.pub(公钥),那么这里需要新增的内容就是

	IdentityFile ~/.ssh/my_key

保存后会在下次连接时生效。


显然Host *行是声明匹配规则的,因此如果你想在某个特定的server使用特定的配置(包括特定的密钥)只需要新建一个Host段,修改匹配规则即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值