如何将应用通过代理机进行内网部署?
实现原理
采用squid代理服务中的Internet正向代理功能,在代理机上指定目标主机的地址和端口,实现
目标主机的公网访问。
想了解squid更多相关知识,请前往squid官网。下面以Linux系统机器进行演示。
前提条件
操作步骤
步骤1:安装squid代理服务
①进入“代理主机-B”的命令行工具,执行以下命令:
yum install squid -y
②若回显最后为“Complete”,即为安装完成,可继续执行以下命令:
yum install iptables-services
步骤2:编辑squid配置文件
①进入“代理主机-B”的命令行工具,执行以下命令:
vim /etc/squid/squid.conf
②在空行中添加以下命令:
acl local src 主机的内网IP/24
③按“ESC”键,输入“:wq”,退出并保存。
步骤3:配置“代理主机-B”防火墙
进入“代理主机-B”的命令行工具,依次执行以下命令:
systemctl stop firewalld.service
systemctl disable firewalld.service
yum install iptables-services iptables-devel -y
systemctl enable iptables.service
systemctl start iptables.service
iptables -I INPUT 1 -s 主机的内网IP/24 -p tcp --dport 3128 -j ACCEPTiptables -I INPUT 2 -p tcp --dport 3128 -j DROP
步骤4:安装openssl
进入“代理主机-B”的命令行工具,执行以下命令:
yum install openssl
回显最后为“Complete”,即为安装完成。
步骤5:启动squid代理服务
进入“代理主机-B”的命令行工具,执行以下命令:
systemctl start squid //启动squid代理服务
systemctl status squid //检查squid状态
步骤6:配置正向代理
进入“部署主机-A”的命令行工具,执行以下命令:
echo "export http_proxy=http://代理机的内网IP:3128" >>/etc/profile
echo "export https_proxy=http://代理机的内网IP:3128" >>/etc/profile
echo "export http_proxy=http://代理机的内网IP:3128" >>~/.bashrc
echo "export https_proxy=http://代理机的内网IP:3128" >>~/.bashrc
echo "export http_proxy=http://代理机的内网IP:3128" >>~/.bash_profile
echo "export https_proxy=http://代理机的内网IP:3128" >>~/.bash_profile
source /etc/profile
source ~/.bashrc
source ~/.bash_profile
步骤7:新建应用
①登录软件开发生产线首页,单击目标项目名称,进入项目首页。
②单击菜单“持续交付 > 部署”,进入项目下部署服务界面。
③单击“新建应用”,进入“基本信息”页面,可根据需要修改应用名称、描述、执行主机等基本信息。完成应用基本信息的编辑后,单击“下一步”,进入选择部署模板页面,选择“空白模板”,单击“确定”。
④进入“部署步骤”页面,在右侧步骤列表中,单击目标步骤的“添加”键,可将该部署步骤添加到左侧的步骤编排区中。
⑤进入“环境管理”页面,单击“添加主机组”,输入主机组基本信息,单击“保存”完成新建。
步骤8:配置主机组
①将“代理主机-B”添加为代理机,输入IP为公网IP。
②将“部署主机-A”添加为主机,输入IP为内网IP,并打开“通过SSH代理”,选择“代理主机-B”为代理机。
步骤9:部署应用
部署应用,详细操作可参考应用管理。