带群组授权的 SSH 跳转箱

带群组授权的 SSH 跳转箱

我正在尝试设置 SSH Jumpbox。登录 Jumpbox 的用户需要能够根据其组授权另一个 SSH 服务器。

(用户 A 在 Project1 组,用户 B 在 Project2 组,用户 A 应该能够 ssh 进入 project1.com,但用户 B 不能)

有没有什么办法可以在 Jumpbox 层面实现这一点?

答案1

假设 jumpbox 是一个 Linux 机器,iptables可以有效地在链上使用OUTPUT,以限制哪些组成员可以连接到哪些服务器。例如

iptables -A OUTPUT --gid-owner project1 -p tcp --dport 22 -d ip.of.project1.com -j ACCEPT
iptables -A OUTPUT --gid-owner project1 -j REJECT
iptables -A OUTPUT --gid-owner project2 -p tcp --dport 22 -d ip.of.project2.com -j ACCEPT
iptables -A OUTPUT --gid-owner project2 -j REJECT

它有一个方便的副作用,即限制 project1 组的成员做任何事情除了ssh 连接到 project1.com,对 project2 和 project2.com 也类似。INPUT如果您限制INPUT流量,可能还需要链中的一些相应规则。

相关内容