ssh进阶,免密登录

免密登录(重点)

  • 公钥:一串字符串,在非对称加密里面用来加密数据,随意公开。
  • 私钥:一串字符串,在非对称加密里面用来解密数据,不能泄露。
    • 你原本是用root的密码进行身份验证,登录该服务器
    • 客户端更换为公钥形式登录
  • 普通密钥:一串字符串。在对称加密里面,加密和解密都用它

基于公私钥的认证(免密码登录)

windows免密登录linux

1. 生成公私钥,客户端的
客户端的~/.ssh 这个目录,就存放了客户端机器的公私钥文件
ssh-keygen
生成之后查看公钥私钥
$ ls ~/.ssh
id_rsa  id_rsa.pub

2.发给服务端
客户端的公私钥对以及有了,把客户端的公钥,发给服务端(~/.ssh/)
[root@m-61 ~]#ls ~/.ssh
known_hosts

通过命令,吧客户端的公钥,写入到服务端的authorized_keys文件中

$ ssh-copy-id root@10.0.0.61


3.检查服务端的 信任主机公钥文件 
这里存放了 客户端的公钥字符串
[root@m-61 ~]#cat  ~/.ssh/authorized_keys 


4.此时已经可以免密登录了,只能通过git-bash这个工具去免密登录,因为记录该主机名

ssh root@10.0.0.61

linux免密登录linux

master-61  免密登录 web-7

1.在61机器生成公私钥对儿
ls ~/.ssh/
[root@m-61 ~]#ssh-keygen 

2.检查公私钥
[root@m-61 ~]#ll ~/.ssh/

3.发送master-61的公钥,给web-7
为了免密登录
ssh-copy-id root@10.0.0.7

问题:web-7是如何允许master-61登录自己的

前提一定你通过某办法,吧master-61的公钥,写入到web-7机器的~/.ssh/authorized_keys
web-7 会去自己的 ~/.ssh/authorized_keys 是否有master-61的公钥

ssh账户密码认证涉及的配置文件、命令、以及作用

/etc/ssh/sshd_config 
Port 22999   修改端口
PubkeyAuthentication yes   允许公钥登录
PasswordAuthentication no    禁止密码登录
systemctl restart sshd   重启服务

ssh公私钥认证涉及的配置文件、命令、以及作用

ssh-keygen   生成公钥对
ll ~/.ssh/   生成公钥对的文件位置
ssh-copy-id root@10.0.0.7  将公钥发送给另一个机器
~/.ssh/authorized_keys   另一个机器接收到的公钥写入的文件

限制主机登录条件、设定iptables规则,只允许跳板机的流量(172.16.1.61)登录,其他机器的流量全部禁止。(只限定ssh的服务,限制22999的流量)

在想添加该规则的机器上执行

针对web-7限定只允许 master-61访问

[root@web-7 ~]#iptables -A INPUT ! -s 172.16.1.61 -p tcp --dport 22999 -j DROP
[root@web-7 ~]#
[root@web-7 ~]#
[root@web-7 ~]#iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
DROP       tcp  -- !172.16.1.61          anywhere             tcp dpt:22999

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  
posted @   不太聪明的大鹅  阅读(101)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示