- 本地生成ssh key
使用命令ssh-keygen -t rsa -b 4096
生成ssh key,生成好的路径在:
- macOS/linux:
~/.ssh/id_rsa.pub
- win:
C:\Users\your-user\.ssh\id_rsa.pub
- 上传服务器
macOS / Linux机器超级容易:ssh-copy-id your-user-name-on-host@host-fqdn-or-ip-goes-here
windows:使用powershell 运行:
$REMOTEHOST="your-user-name-on-host@host-fqdn-or-ip-goes-here"
scp "$env:USERPROFILE\.ssh\id_rsa.pub" "${REMOTEHOST}:~/tmp.pub"
ssh "$REMOTEHOST" "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub"
但是我的服务器ssh端口号是改过的,试了一下这个脚本不行,我们手动重现这个过程也不难:
- 服务器上
mkdir -p ~/.ssh && chmod 700 ~/.ssh
- 在本地打开复制public-key
- 服务器
sudo vim ~/.ssh/authorized_keys
, 若里面已经有内容,回车后将复制的内容插入新的一行即可,若没有直接插入,:wq保存退出。 -
chmod 600 ~/.ssh/authorized_keys
完成
网友评论