轻量、功能强大的代理服务器工具

一、背景

内网只有1台服务器可以上网,其他服务器或终端无法上网。解决其他服务器或终端无法上网的问题。这里需要通过能上网的服务器去代理其他无网络服务器的上网问题。
在这里插入图片描述

二、代理服务一键安装

curl -L https://mirrors.host900.com/https://github.com/snail007/goproxy/blob/master/install_auto.sh | bash  

三、代理使用

1、客户端无法上网篇

两台虚拟机:
代理服务器:1台2张网卡(1张NAT或桥接,1张仅主机模式)
客户端:1台1张网卡(仅主机模式)

  • 在代理服务器上使用代理命令
proxy socks -t tcp -p "0.0.0.0:10800"
  • 在客户端上使用socks代理无法访问百度,提示域名无法解析
$ curl -vv --socks5 192.168.54.130:10800 www.baidu.com

在这里插入图片描述

  • 但是通过ip去访问百度可以正常访问
$ curl -vv --socks5 192.168.54.130:10800 163.177.151.109

在这里插入图片描述

(原因是客户端网段无法访问公网,客户端的DNS也在同网段,所以也是不能解析公网地址的,这样客户端就会提示域名无法解析。socks代理仅提供ip连接,不提供域名解析,解析域名只能通过客户端的DNS去解析)

  • 有一种情况是可以通过socks代理解析的,那就是在socks5后面加个 h 参数,h参数表示使用代理去解析域名
$ curl -vv --proxy socks5h://192.168.54.130:10800 www.baidu.com

在这里插入图片描述

2、客户端可上网篇

两台虚拟机:
代理服务器:1台1张网卡(NAT或桥接)
客户端:1台1张网卡(NAT或桥接)

  • 在代理服务器上使用代理命令
proxy socks -t tcp -p "0.0.0.0:10800"
在客户端上需要先配置iptables规则,安装iptables
  • centos7默认没有安装iptables service,安装和开启iptables
$ yum install -y iptables-services.x86_64
$ systemctl start iptables.service
  • 为了测试通过代理去访问百度,需要先在iptables上禁止访问百度域名,否则无法测试代理的效果。

  • 添加iptables规则(表示192.168.3.0/24这个网段去访问所有的80端口都是拒绝的,客户端是192.168.3.68)

$ iptables -A OUTPUT -p tcp -s 192.168.3.0/24 --dport 80 -j REJECT

配置完拒绝规则后,测试一下效果。访问百度域名已经不通了,但是dns解析是正常的
在这里插入图片描述
在这里插入图片描述

我们在到客户端上使用socks代理访问百度,可以正常访问(这里没有带上 h 参数也能访问,因为DNS本身就可以解析公网域名)

$ curl -vv --socks5 192.168.3.22:10800 www.baidu.com

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值