由于mac上的homebrew不提供sshpass索性直接用ssh密钥登录, 以下为ssh密钥登录的简单配置流程.
1.服务器端开启密钥登录模式
编辑服务端配置文件
# /etc/ssh/sshd_config
# 是否允许 root 远程登录
PermitRootLogin yes
# 开启公钥认证
PubkeyAuthentication yes
# 存放公钥的位置
AuthorizedKeysFile .ssh/authorized_keys
# root 就是 /root/.ssh
# ruinb0w 就是 /home/ruinb0w/.ssh
2.客户端创建密钥对
先查看~/.ssh/下是否已经有了id_rsa.pub文件, 如果有了这步可以略过
ssh-keygen -t rsa -C "your@email.com"
# 交互提示一直回车就行
3.将客户端公钥复制到服务端
复制客户端~/.ssh/id_rsa.pub文件中的内容到服务器的~/.ssh/authorized_keys中.
注意这里不要覆盖服务器
~/.ssh/authorized_keys中的内容, 请新起一行.
服务器端重启服务
systemctl restart sshd
# 或者 service sshd restart
4.客户端配置登录别名(可选)
# /etc/ssh/ssh_config
Host my-server # 登录的服务器别名 ssh examp 就可以了
HostName 233.233.233.233 #要登录的服务器ip
Port 22
User root #登录名
IdentityFile ~/.ssh/id_rsa #你的私钥路径
ServerAliveInterval 30
TCPKeepAlive yes
5.登录
ssh 用户名@服务器ip
# 如果配置了登录别名,直接 ssh my-server