SSH免密钥登录
1: 用 ssh-key-gen 在本地主机上创建公钥和密钥
win+r cmd 打开控制台
ssh-keygen -t rsa
一直按enter
2: 用 ssh-copy-id 把公钥复制到远程主机上
user 是用户名
remote_host是远程主机
ssh-copy-id -i ~/.ssh/id_rsa.pub user@remote_host
3: 直接登录远程主机(验证免密登录)
ssh [user@]machine_ip
4 常见报错
如果用win+r可能会出现下面的错误。
‘ssh-copy-id’ 不是内部或外部命令,也不是可运行的程序或批处理文件。
解决方法:
直接window搜索框搜索powershell打开后,粘贴代码后回车就行
function ssh-copy-id([string]$userAtMachine, $args){ $publicKey = "$ENV:USERPROFILE" + "/.ssh/id_rsa.pub"if (!(Test-Path "$publicKey")){Write-Error "ERROR: failed to open ID file '$publicKey': No such file" }else {& cat "$publicKey" | ssh $args $userAtMachine "umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/authorized_keys || exit 1" }
}
随便举个例子:
ssh-copy-id -i ~/.ssh/id_rsa.pub ymx@deckmanager.net -p 6000