SSH免密码登录

SSH免密码登录

Imagem de capa

SSH和SCP免密码登录

条件 A电脑(本机) B电脑(服务器)

  1. 在A电脑上执行如下命令,会有两个文件:id_rsa(私钥)id_rsa.pub(公钥)
ssh-keygen -t rsa
cd ~/.ssh
ls
  1. 把公钥传到B点脑上目录:/(登录账户名)/.ssh下,如root账户(/root/.ssh) 可以尝试以下命令上传
scp -r -P 22(ssh端口号) id_rsa.pub(上传的文件) root(登录的用户名)@xxx.xxx.com(服务器地址IP也可以):/root/.ssh/(指定文件上传的到B电脑的那个目录下,一定要提前建立好目录)
  1. 登录B服务服务器,到 /root(这个看你当时登录的用户名)/.ssh目录下
ls -lh
# 如果存在 authorized_keys 文件
cat id_rsa.pub >> authorized_keys
# 如果不存在
mv id_rsa.pub authorized_keys
  1. 需要开启B服务器的密钥验证
# 如果这个文件不存在就创建一个
vim /etc/ssh_config
#在文件末尾加入
PubkeyAuthentication yes
# 保存
  1. 设置快捷登录(现在已经免密钥登录了)
# 在A机器上,编辑如下文件,如果没有文件就创建一个
vim ~/.ssh/config
# 编辑内容
Host server #设置快捷登陆的别名(只要自己记得住的)
Port 22 #B电脑的ssh端口号
HostName 192.168.0.1 #B点脑完整的登录地址
User root #B电脑的登录账号
PreferredAuthentications publickey #优先验证类型ssh
IdentityFile ~/.ssh/id_rsa #私钥文件的路径
# 设置多个
Host server2 #设置快捷登陆的别名(只要自己记得住的)
Port 22 #B电脑的ssh端口号
HostName 192.168.0.1 #B点脑完整的登录地址
User root #B电脑的登录账号
PreferredAuthentications publickey #优先验证类型ssh
IdentityFile ~/.ssh/id_rsa #私钥文件的路径

  1. 登录方式
ssh root@server #直接就可以登录
scp 文件地址 root@server:/opt(上传的目录) # 可以直接上传
scp root@server:/opt/test.txt ~/opt(本地目录)#即可下载到本地