针对云主机内网代理的设置,通常有两种常见场景:让云主机作为代理服务器(为其他内网机器提供代理)或让云主机使用内网代理(连接其他代理访问外部资源),以下分别说明。
场景一:云主机作为代理服务器(为其他机器提供内网代理)
让云主机充当“跳板”,内网其他机器通过它访问公网或内网特定资源。
1. 安装代理服务(以 HTTP/HTTPS 代理为例,使用 Squid)
安装 Squid
# Ubuntu/Debian sudo apt update && sudo apt install squid -y # CentOS/RHEL sudo yum install squid -y
配置 Squid(仅允许内网IP访问)
编辑/etc/squid/squid.conf:
# 允许内网网段访问(假设内网段为 10.0.0.0/8 或 192.168.1.0/24) acl internal_net src 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 http_access allow internal_net http_access deny all # 监听内网IP(可选,默认监听所有IP,但建议绑定内网IP) http_port 0.0.0.0:3128
启动并设置开机自启
sudo systemctl restart squid sudo systemctl enable squid
开放云主机端口(若云主机有防火墙或安全组,需允许内网IP访问 3128 端口)
客户端配置
在内网其他机器的浏览器或系统代理设置中,填写云主机的内网IP和端口 3128。
2. 使用 SSH 隧道(简易 SOCKS 代理,适合临时使用)
无需安装额外软件,但需在云主机上开启 SSH 服务,且客户端机器能 SSH 到云主机。
在客户端执行:(端口 1080 为本地 SOCKS 代理端口,可自定义)
ssh -N -D 1080 user@云主机内网IP
之后客户端可将代理设置为127.0.0.1:1080,流量会通过云主机发出。
场景二:云主机使用内网代理(访问其他资源)
云主机需要通过内网已有的代理服务器访问公网或特定服务(常见于企业内部网络或通过代理上网)。
环境变量方式(临时)
export http_proxy=http://内网代理IP:端口 export https_proxy=http://内网代理IP:端口 export no_proxy=localhost,127.0.0.1,.local # 不经过代理的地址
持久化配置(写入 shell 配置文件)
在/etc/profile 或~/.bashrc 中添加上述 export 命令,然后source 生效。
apt/yum 使用代理
# apt(Ubuntu/Debian) echo 'Acquire::http::Proxy "http://内网代理IP:端口";' | sudo tee /etc/apt/apt.conf.d/80proxy # yum(CentOS/RHEL) echo "proxy=http://内网代理IP:端口" >> /etc/yum.conf
Docker 使用代理
创建/etc/systemd/system/docker.service.d/proxy.conf:
[Service] Environment="HTTP_PROXY=http://内网代理IP:端口" Environment="HTTPS_PROXY=http://内网代理IP:端口" Environment="NO_PROXY=localhost,127.0.0.1,.local"
然后systemctl daemon-reload && systemctl restart docker。
图形化设置
打开“设置” → “网络和 Internet” → “代理” → 手动设置代理 → 开启“使用代理服务器”,填入内网IP和端口。
命令行设置(全局代理)
netsh winhttp set proxy 内网代理IP:端口 # 取消代理 netsh winhttp reset proxy
1、安全组/防火墙
如果云主机在内网,通常无需额外开放端口,但若云主机有公网IP,务必仅在安全组或防火墙中限制来源为内网网段,否则代理可能被公网滥用。
2、认证
如果代理需要用户名密码,格式为:http://user:pass@代理IP:端口。
3、代理协议
常见有 HTTP、HTTPS、SOCKS5,确认内网代理的类型后再选择相应的客户端配置(curl 用-x http://...,系统层面尽量使用 HTTP 代理)。
4、检测是否生效
在云主机上用curl -I http://example.com(不带代理)对比curl -I --proxy http://代理IP:端口 http://example.com 的返回结果。
如果还有具体场景(如云主机之间需要互相代理、特定应用的代理配置),请补充说明,我可以提供更针对性的方案。
文章摘自:https://idc.huochengrm.cn/zj/26308.html
评论