MacOs ssh

ssh

设备生成及设置ssh

生成ssh密匙

  • 1此命令将创建以所提供的电子邮件地址为标签的新 SSH 密钥
$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

> Generating public/private rsa key pair.
  • 2提示您“Enter a file in which to save the key(输入要保存密钥的文件)”时,按 Enter 键。 这将接受默认文件位置。
> Enter a file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]
  • 3在提示时输入安全密码。 更多信息请参阅“使用 SSH 密钥密码”。
> Enter passphrase (empty for no passphrase): [Type a passphrase]
> Enter same passphrase again: [Type passphrase again]

将 SSH 密钥添加到 ssh-agent

将新SSH密钥添加到ssh-agent以管理密钥之前,应检查现有SSH密钥并生成新SSH密钥。将SSH密钥添加到该代理时,应使用默认的macOS ssh-add命令,而不是使用通过macports,homebrew或某些其他外部来源安装的应用程序。

  • 1在后台启动 ssh 代理。
$ eval "$(ssh-agent -s)"
> Agent pid 59566
  • 2如果您使用的是 macOS Sierra 10.12.2 或更高版本,则需要修改(没有config文件,创建config文件)~/.ssh/config 文件以自动将密钥加载到ssh-agent中并在密钥链中存储密码。
Host *
	AddKeysToAgent yes
	UseKeychain yes
	IdentityFile ~/.ssh/id_rsa
Host www 别名
	HostName xxx.xx.xx.xxx 指定登录的主机名或IP地址
	Port 22 指定登录的端口号
	User root 登录用户名
	IdentityFile ~/.ssh/id_rsa 登录的私钥文件
	IdentitiesOnly yes 只接受SSH key 登录
	PubkeyAcceptedKeyTypes=+ssh-dss 接受的密钥类型
	# 代理
	AddKeysToAgent yes 向代理添加密钥
	UseKeychain yes 使用钥匙链

IdentityFile和IdentitiesOnly至少设置一个,PubkeyAcceptedKeyTypes可以不设置,AddKeysToAgent和UseKeychain可以不设置

  • 3将 SSH 私钥添加到 ssh-agent 并将密码存储在密钥链中。 如果您创建了不同名称的密钥,或者您要添加不同名称的现有密钥,请将命令中的 id_rsa 替换为您的私钥文件的名称。
$ ssh-add -K ~/.ssh/id_rsa

注:-K 选项位于 Apple 的 ssh-add 标准版本中,当您将 ssh 密钥添加到 ssh-agent 时,它会将密码存储在您的密钥链中。

如果您没有安装 Apple 的标准版本,可能会收到错误消息。 有关解决此错误的详细信息,请参阅“错误:ssh-add:非法选项 – K”。

连接设备设置

  • 1创建.ssh/authorized_keys文件
  • 2获取连接设备的ssh公钥
    cat ~/.ssh/id_rsa.pub
  • 3复制公钥添加到authorized_keys文件中

引用

https://help.github.com/cn/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

Mac ssh问题

Mac升级后ssh失效

方案

如上所示重新设置ssh,因为系统升级后macOS Sierra 10.12.2 或更高版本要求ssh私钥长度大于2048所以重新设置ssh,或者在config配置选项中增量PubkeyAcceptedKeyTypes=+ssh-dss选项

引用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值