SSH

SSH (Secure Shell)协议

●是一种安全通道协议。
●对通信数据进行了加密处理,用于远程管理。
OpenSSH
●服务名称:sshd
●服务端主程序: /usr/sbin/sshd
●服务端配置文件:/etc/ssh/sshd_config

服务器监听选项

●端口号,协议版本,监听IP地址
●禁用反向解析
例如:
vi /etc/ssh/sshd_config

PORT 22 //端口号
ListenAddress 172.16.16.22 //监听IP地址
Protocol 2 //协议版本
UseDNS no //禁用反向解析

用户控制登录

●禁用root用户,空密码用户
●限制登录验证时间,重试次数
在这里插入图片描述
AllowUser(白名单),DenyUsers(黑名单)不能同时用
例如:AllowUsers jerry admin(远程登录用户名字)@192.168.100.101(远程用户ip)
例如:DenyUsers jerry admin(远程登录用户名字)@192.168.100.101 (远程用户ip)

数字签名

发送方:

  • 对原始数据执行HASH算法得到摘要值。
  • 发送方用自己私钥加密摘要值。
  • 将加密的摘要值与原始数据发送给接收方。
  • 数字签名保证数据完整性,身份验证和不可否认。

公钥加密

  • 发送方使用接收方的公钥加密数据。
  • 接收方使用自己的私钥解密数据。
  • 数据加密能保证所发送数据的机密性。

构建密钥对验证的SSH体系

1.在客服机中创建密钥对
ssh-keygen命令
可使用的加密算法:RSA,ECDSA或DSA
例如:# ssh-keygen -t ecdsa

2.上传公钥到服务器
如何方式均可(FTP,Email,SCP.HTTP…)
例如:scp ~/.ssh/id_ecdsa.pub root@172.16.16.22:/tmp

3.在服务器导入公钥文本
将公钥文本添加至目标用户的公钥库
默认公钥位置:~/.ssh/authorized_keys
#mkdir /home/lisi/.ssh/
#cat /tmp/id_ecdsa.pub >> /home/lisi/.ssh/authorized_keys
#tail -1 /home/lisi/.ssh/authrized_key

4.客户端使用密钥对验证登录
验证用户:服务端的用户lisi
验证密码:客户端的用户zhangshan的私钥短语
例如:
ssh lisi@172.16.16.22
whoami
注:第2步和第3步可以采用另一种方法
ssh-copy -id -i 公钥文件 user@host
验证密码后,会将公钥自动添加目标主机user宿主目录下的.ssh/authorized_keys文件结果
ssh-copy-id ~/.ssh/id_rsa.pub lisi@172.16.16.22

免密登录

1.生成密钥
ssh-keygen
2.上传公钥到服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.100.101
3.测试免密登录
ssh root@192.168.100.101

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值