linux远程ssh秘钥登录

我们常常需要远程登录我们的linux服务器
从客户端来看,SSH提供两种级别的安全验证

  • 第一种级别(基于口令的安全验证)
    只要你知道自己帐号和口令,就可以登录到远程主机。所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器,也就是受到“中间人”这种方式的攻击。
  • 第二种级别(基于密匙的安全验证)
    需要依靠密匙,也就是你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。第二种级别不仅加密所有传送的数据,而且“中间人”这种攻击方式也是不可能的(因为他没有你的私人密匙)。
秘钥创建流程
  1. 创建一个用于远程登录的用户(不建议使用root直接登录)
# 创建一个用户userdemo
useradd userdemo
  1. 制作密钥对
#  我们要使用userdemo进行远程登录,需要为userdemo这个用户制作秘钥
#  切换用户
su userdemo
# 建立密钥对
ssh-keygen
# 一路回车,秘钥对就建立好了,当然中间也可以输入秘钥锁码,这样你的私钥需要配合一个密码才能使用
  1. 在服务器上安装公钥
# 安装公钥
cd ~/.ssh
cat id_rsa.pub >> authorized_keys
# 设置文件权限,否则可能无法连接成功
chmod 600 authorized_keys
chmod 700 ~/.ssh
  1. 设置 SSH,打开密钥登录功能
# 编辑文件sshd_config
vi /etc/ssh/sshd_config
   # 打开秘钥登录
   RSAAuthentication yes
   PubkeyAuthentication yes
   # 是否允许root用户登录,可以先开启,等以秘钥测试登录成功后,建议关闭
   PermitRootLogin yes
   # 是否允许以口令方式登录,一样,先开启,等秘钥登录成功后,建议关闭
   PasswordAuthentication no
# 重启ssh服务,使配置生效
service sshd restart	
  1. 下载私钥,使用秘钥方式远程连接
# 保存私钥
sz ~/.ssh/id_rsa
# 使用xshell等客户端使用秘钥方式登录
# 验证方式选择PublicKey, 秘钥选择上面保存的私钥即可连接
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值