Linux之SSH安全,使用密钥对验证

Q:A服务器登录到B服务器,但为了安全起见,不想输入B服务器的用户帐号密码,该如何实现?

A:可以使用密钥对验证,实现在A服务器无需B服务器的用户帐号密码即可登录到B服务器。

 

 

登录验证对象:服务器中的本地用户帐号

登录验证方式:

  密码验证:核对用户名、密码是否匹配

  密钥对验证:核对客户的私钥、服务端公钥是否匹配

# vim /etc/ssh/sshd_config

PasswordAuthentication yes   // 密码验证

PubkeyAuthentication yes   //密钥对验证

AuthorizedKeysFile .ssh/authorized_keys  // 密钥保存地方

# systemctl restart ssh.service

 

构建密钥对验证的SSH体系:

第一步:创建密钥对(在客户端创建,创建后包含私钥和公钥,形成一个密钥对)

  私钥文件:id_rsa

  公钥文件:id_rsa.pub

# ssh-keygen -t rsa

// 设置密钥保存位置

// 设置密钥口令

【私钥权限为:600

公钥权限为:644

此加密方式为非对称加密,私钥文件一定不能公开】

第二步:上传公钥文件到服务端

第三步:导入公钥文件

以下命令把第二步和第三步合成一起实现上传并导入:

# ssh-copy-id remote_user_name@remote_ip_address

 

例子:

导入公钥文件前,使用guest用户切换到user001用户:
guest@debian:~$ ssh user001@192.168.9.119
user001@192.168.9.119's password:

开始上传并导入公钥文件:

    使用guest用户上传并导入公钥文件到user001用户,上传并导入成功后,使用guest用户切换到user001用户,无需user001的密码即可登录到user001(如果guest用户创建密钥对时候创建了密码,则需输入密钥口令):

guest@debian:~$ ssh-copy-id user001@192.168.9.119

// 输入user01的密码

// 上传并导入成功,在user001用户的 ~/.ssh 目录下有一个文件 authorized_keys ,即上传并导入后的公钥文件

// 使用guest用户切换到user001,无需user001的密码即可登录

guest@debian:~$ ssh user001@192.168.9.119
Enter passphrase for key '/home/guest/.ssh/id_rsa':

 

转载于:https://www.cnblogs.com/relax1949/p/8973016.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值