9.配置和保护SSH

学习目标:使用 OpenSSH 配置远程系统上的命令行服务

学习内容:

1 . 使用SSH访问远程命令行
什么是 OpenSSH:
OpenSSH 为 Linux 提供了 Secure Shell 和 SSH 协议
SSH 协议为不安全的网络实现了通信加密
可以使用 ssh 命令连接远程系统,也可以在远程系统上直接运行命令
SSH 主机秘钥:
-SSH 通过公钥加密的方式保持通信安全。在客戶端登录之前, 服务器会向其发送公钥副本,用于设置通信渠道的安全加密,并验证客戶端服务器
-用户连接服务器时,会检查客户机本地 /etc/ssh/ssh_known_hosts 或~/.ssh/known_hosts 中是否含有服务器公钥,并与从服务器获得公钥进行匹配,以验证服务器的身份(防止服务器被假冒,或者需要编辑此文件替换新的服务器秘钥)
-服务器的公钥存放在:/etc/ssh/*key.pub 中
2 . 配置基于 SSH 的身份验证
-基于私钥-公钥对,可以配置 SSH 服务器,不输入密码就能登录服务器
-用户必须生成公私秘钥对,私钥用于身份验证,必须妥善保管,公钥复制到希望连接的系统,用于验证私钥,公钥不需要保密
生成 SSH 秘钥:
-ssh-keygen 命令创建用户的公钥和私钥,默认保存在~/.ssh/id_rsa 和~/.ssh/id_rsa.pub 文件中
-私钥还可以以密码加以保护,登录时,需要输入私钥保护密码
-使用 ssh-agent 配合 ssh-add 命令可将此私钥保护密码存入内存,协助登录时输入
共享公钥:
ssh-copy-id 命令可以将用户的 SSH 公钥(/home/user/.ssh/id_rsa.pub)
复制到目标系统中
3 . 自定义 OpenSSH 配置
配置 OpenSSH 服务器:
OpenSSH 的守护进程名为 sshd,主配置文件为:/etc/ssh/sshd_config
禁用 root 用户通过 ssh 登录
-黑客喜欢猜测 root 的密码
-root 具有最高权限
-建议普通用户进行登录,在有需要时提权成为 root
-编辑 /etc/ssh/sshd_config,设置 PermitRootLogin yes
-修改配置后,记得 systemctl reload sshd
禁止对 SSH 进行基于密码的身份验证
黑客无法通过猜测用户密码攻击已知用户
密码相对于公私钥保密性差
编辑 /etc/ssh/sshd_config,设置 PasswordAuthentication no
修改配置后,记得 systemctl reload sshd

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值