我正在AWS上安装Phabricator,而通常的代理/网络/数据库设置适用于HTTP / S.现在我想添加对repos的SSH访问。如何配置对存储库的SSH访问?我的用法很小,我宁愿不创建复杂或模糊的设置。
如果弹性IP与代理服务器关联,则代理必须代理对Phabricator的SSH请求。 SOCKS代理是否有效?是否有一种简单的方法(即包)让袜子代理连接到Web服务器时,无论何时重新启动?
没有SOCKS代理,似乎替代方案是将所有内容放在一台服务器上,当然除了数据库。这意味着Web服务器(运行Phabricator)需要在公共VPS中使用与之关联的弹性IP。这样HTTPS和SSH就可以连接到相同的主机名。
有替代品吗?我唯一的选择是在一台服务器上设置所有内容吗?
答案 0 :(得分:0)
这是通过IP和端口转发完成的。我最初的端口转发搜索被路由器和防火墙中的端口转发所淹没。
将以下内容添加到/etc/sysctl.d/50-ip_forward.conf
。这适用于openSUSE Leap和CentOS。
# Enable IP_FOWARD
net.ipv4.ip_forward = 1
使用sysctl
。
sudo sysctl -p /etc/sysctl.d/50-ip_forward.conf
然后转发SSH端口并进行测试。如果您无法访问服务器,请从AWS控制台重新启动它。在进行此更改之前,我已将管理端口更改为另一个端口。我将端口添加到我的~/.ssh/config
比用户在git客户端中指定不同端口更容易。
sudo firewall-cmd --zone external --add-forward-port port=22:proto=tcp:toaddr=1.2.3.4
如果一切都结束,请将更改永久化。
sudo firewall-cmd --zone external --add-forward-port port=22:proto=tcp:toaddr=1.2.3.4 --permanent
不要忘记在AWS安全组中添加必要的端口。重新启动服务器以确保在重新启动后保留所有内容。
作为额外的奖励,让我们将代理转变为NAT实例! external
区域已启用伪装,但未使用。将eth0
接口分配给外部区域。
sudo firewall-cmd --zone external --add-interface eth0
在您的VPC中,将具有上述实例目标的0.0.0.0/0
的默认路由添加到私有子网。现在测试私有子网中内部服务器的Internet连接。性能不是问题,因为此路由仅用于服务器更新,而不用于生产流量。
ping 8.8.8.8
如果一切正常,请将更改永久化。
sudo firewall-cmd --zone external --add-interface eth0 --permanent
我希望在进行网络/防火墙更改后重新启动,以确保所有内容都重新启动。