第一层:
登录入口,凡是有堡垒机使用权限的均可以由此入口处登录成功。
涉及主要服务: user login shell。
服务主要功能:
读取用户信息,判断是否有登录权限;
调用动态Token服务,验证用户passwd;
调用动态token服务,实现二维码扫码快速登录;
调用第二层中的授权服务api,获取&判断用户的login权限;
记录用户操作日志;
关联服务:
登录入口,凡是有堡垒机使用权限的均可以由此入口处登录成功。
涉及主要服务: user login shell。
服务主要功能:
读取用户信息,判断是否有登录权限;
调用动态Token服务,验证用户passwd;
调用动态token服务,实现二维码扫码快速登录;
调用第二层中的授权服务api,获取&判断用户的login权限;
记录用户操作日志;
关联服务:
下面对这个架构图做下说明:整体分为三层,总体来说,
第一层 校验用户是否有登录堡垒机的权限;
第二层真正为用户分配权限,同时判断经过第一层的用户是否有对目标机器操作的权限;
第三层则是真正登录/操作服务器的方式,在这里我将服务器的auth+sudo权限通过ldap来进行分布式动态管理,稍后会有专门的说明;
跳板 服务器客服咨询热线:@HGD889
第一层 校验用户是否有登录堡垒机的权限;
第二层真正为用户分配权限,同时判断经过第一层的用户是否有对目标机器操作的权限;
第三层则是真正登录/操作服务器的方式,在这里我将服务器的auth+sudo权限通过ldap来进行分布式动态管理,稍后会有专门的说明;
跳板 服务器客服咨询热线:@HGD889
第二层:
授权服务管理,获取登录用户当前的权限ip列表,判断用户的操作是否符合预授权。
涉及主要服务:授权管理服务服务主要功能:
设置用户/team的 权限列表;
将权限数据下发至第三层的ldap集群;
提供api获取用户的权限list;
关联服务:
CMDB,以cmdb中的服务树为基本单位做授权,同时在cmdb中判断授权的服务器对象是否有效;
OA,以oa中的用户组为基本单位做权限授予,同时基于oa来判断用户是否有效;
授权服务管理,获取登录用户当前的权限ip列表,判断用户的操作是否符合预授权。
涉及主要服务:授权管理服务服务主要功能:
设置用户/team的 权限列表;
将权限数据下发至第三层的ldap集群;
提供api获取用户的权限list;
关联服务:
CMDB,以cmdb中的服务树为基本单位做授权,同时在cmdb中判断授权的服务器对象是否有效;
OA,以oa中的用户组为基本单位做权限授予,同时基于oa来判断用户是否有效;
在用户电脑上访问172.16.0.30:3307即等同于访问10.1.0.40:3306,于是就可以在用户电脑愉快的访问目标机器上的服务啦。
在用户电脑上开启一个 http 代理
./4dnat -proxy http 1080
在跳板机器上使用监听模式监听两个端口,用于交换数据
./4dnat -listen 10000 10001
在目标机器上使用监听模式监听两个端口,用于交换数据
./4dnat -listen 20000 20001
在用户电脑上使用代理人模式主动连接两个目标地址,用于交换数据
./4dnat -agent 127.0.0.1:1080 172.16.0.30:10000
在跳板机器上使用代理人模式主动连接两个目标地址,用于交换数据
./4dnat -agent 127.0.0.1:10001 10.1.0.40:20000
./4dnat -proxy http 1080
在跳板机器上使用监听模式监听两个端口,用于交换数据
./4dnat -listen 10000 10001
在目标机器上使用监听模式监听两个端口,用于交换数据
./4dnat -listen 20000 20001
在用户电脑上使用代理人模式主动连接两个目标地址,用于交换数据
./4dnat -agent 127.0.0.1:1080 172.16.0.30:10000
在跳板机器上使用代理人模式主动连接两个目标地址,用于交换数据
./4dnat -agent 127.0.0.1:10001 10.1.0.40:20000
目标机器上修改代理
cat <<EOF >> /etc/profile
http_proxy=http://127.0.0.1:20001
https_proxy=http://127.0.0.1:20001
export http_proxy https_proxy
EOF
source /etc/profile
在目标机器上测试访问互联网
curl https://typesafe.cn
最后奉上项目地址 https://github.com/dushixiang/4dnat
cat <<EOF >> /etc/profile
http_proxy=http://127.0.0.1:20001
https_proxy=http://127.0.0.1:20001
export http_proxy https_proxy
EOF
source /etc/profile
在目标机器上测试访问互联网
curl https://typesafe.cn
最后奉上项目地址 https://github.com/dushixiang/4dnat
Next-Terminal
Next Terminal 运维审计系统
next terminal 运维审计系统是一款先进的堡垒机工具,专注于终端管理和安全运维,为企业提供全方位的交互审计解决方案。
使用ssh登陆远程服务器是每个开发者或运维再熟练不过的事情了。事实上,ssh是远程服务器的唯一入口,试想一下,如果不用ssh,还有什么方式可以进入服务器呢? ssh的功能其实远不止此,本文结合实际应用场景介绍三种鲜为人知的高级用法。你或许听说过使用ssh可以翻墙,是的,它可以作为socks5代理服务器;除此之外,它还能帮助你跳过堡垒机访问无法直接访问的服务器,穿透nat路由器访问内网中的计算机。
跳板 服务器客服咨询热线:@HGD889
跳板 服务器客服咨询热线:@HGD889
就可以登录到目标服务器。这里的root是目标机的用户,因为23.105.207.175将1993端口收到的数据转发回了目标机192.168.3.220的22端口。
使用ssh搭建一个socks代理服务器这应该是在pc上最简单的翻墙方法。你只需要购买一台没有被墙的虚拟主机(virtual private server,下面简称vps,等同于云主机),将它作为一个代理服务器,推荐https://bandwagonhost.com,性价比高。
socks5是工作在介于传输层和应用层的代理协议(应该算应用层),对上层的http等可以实现透明代理,ssh恰好支持这种协议。
socks5是工作在介于传输层和应用层的代理协议(应该算应用层),对上层的http等可以实现透明代理,ssh恰好支持这种协议。
23.105.207.175是我位于洛杉矶的vps的公网ip地址。
-D表示动态端口转发。 -N和-f的意义同用法一。 以上命令会在本地(我的PC)的后台启动一个socks5服务器,监听1080端口。
-D表示动态端口转发。 -N和-f的意义同用法一。 以上命令会在本地(我的PC)的后台启动一个socks5服务器,监听1080端口。
要使用socks5代理需要进行设置,下面介绍全局配置和浏览器配置两种方式
全局配置(以MBP为例)
以我的MacBookPro为例,在系统偏好设置->网络->wifi->高级->代理页面设置如下:
跳板 服务器客服咨询热线:@HGD889
全局配置(以MBP为例)
以我的MacBookPro为例,在系统偏好设置->网络->wifi->高级->代理页面设置如下:
跳板 服务器客服咨询热线:@HGD889
上面的方式会将所有流量通过socks5进行代理,如果只需要浏览器能翻墙,则可以使用这种配置方式。并且在chrome里结合Proxy SwitchyOmega,还能控制哪些网站走代理,哪些网站直接连接,否则,连接国内的网站不仅速度慢,而且浪费vps的流量。
在浏览器安装Proxy SwitchyOmega扩展,然后新建一种PAC情景模式,ssh,在PAC网址中粘贴https://raw.githubusercontent.com/breakwa11/gfw_whitelist/master/proxy.pac,点击立即更新情景模式。
]我们设想这样一种情况,我们是一家小公司,在全国有几个小分支办公机构,每个机构有一台服务器,由于公司财务紧张,买不起专线,用的也是普通家用宽带,SD-WAN设备说实话也挺贵的,那么我们怎么去登录各个分支机构的服务器