首页 > 代码库 > Mac 下配置 SSH 免密码安全登录

Mac 下配置 SSH 免密码安全登录

Win下个人常使用 SecureCRT ,Mac 下感觉 SecureCRT 并不好使,常用 iTerm2+zsh 搭配使用。A连接B 无密码登陆,则A上面执行 ssh-keygen 一路回车,把 ~/.ssh/id_rsa.pub 内容拷贝到B的 ~/.ssh/authorized_keys里面即可
### 本地机器创建公钥
ssh-keygen -t rsa -C  ‘your email@domain.com‘
### 复制公钥到ssh服务器
使用ssh-copy-id-for-OSX工具将公钥复制至ssh服务器
brew install ssh-copy-id
ssh-copy-id username@hostname
### 快捷登录
ssh username@hostname
或使用了zsh,直接给zsh添加一条别名
echo "alias ssh-to-nickname=‘ssh username@hostname‘" >> ~/.zshrc
source ~/.zshrc
#使用别名即可登录到服务器
ssh-to-nickname

REMOTE HOST IDENTIFICATION HAS CHANGED 问题
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.

出现这个问题的原因是,第一次使用SSH连接时,会生成一个认证,储存在客户端的known_hosts中,由于我重新安装了服务器。
#指令查看:
ssh-keygen -l -f ~/.ssh/known_hosts
当然也可以直接编辑known_hosts文件,把里面相关的内容删掉即可。

REFER:
https://segmentfault.com/a/1190000000481249

Mac 下配置 SSH 免密码安全登录