Linux-内网服务器通过代理服务器访问外网

转载

内网服务器通过代理服务器访问外网

https://blog.csdn.net/weixin_44455388/article/details/106299191

背景

首先有两台服务器183和184,其中184无外网,183有外网。现在184服务器是无法访问外网的,需要使用代理的方法让184通过有外网的183访问外网。

该操作一共可以分为两个部分:一、配置184代理 二、在服务器183上安装代理程序。

配置184代理

直接配置环境变量即可,可以在/etc/profile下配置:
在etc/profile中添加以下内容:

#IP为要连接的代理服务器183,端口是要代理的端口,如下的意思该服务器要通过192.168.1.183服务器的端口19191的代理来访问外网
export http_proxy=http://192.168.1.183:19191
#如果要设置https代理,应该添加如下配置,暂未尝试过
#export https_proxy=http://192.168.1.183:19191
#设置不代理的IP或者网址,如下配置,这些请求不会被代理,不支持模糊匹配
export no_proxy="127.0.0.1, localhost, 192.168.1.184,192.168.1.183"

然后source /etc/priofile,再使用指令echo $http_proxy,如果能打印出相关代理信息说明操作成功。

source /etc/profile
echo $http_proxy
[root@cdh02 etc] echo $http_proxy
http://192.168.1.183:19191

在服务器183上安装代理程序

使用squid

#安装squid,这里采用yum的安装方式
[root@cdh01 ~] yum install -y squid
#cd到配置文件目录下
[root@cdh01 ~] cd  /etc/squid/
#备份原始配置文件
[root@cdh01 ~] cp squid.conf squid.conf_bak
#修改配置文件
[root@cdh01 squid]# vi squid.conf

squid.conf配置文件修改内容如下:

#将http_access deny all注释修改为http_access allow all
#http_access deny all
http_access allow all
# 修改端口为代理的端口
http_port 19191

启动squid:

#检查语法是否错误
[root@cdh01 squid] squid -k parse
#初始化缓存空间
[root@cdh01 squid] squid -z
[root@cdh01 squid] 2018/12/05 13:58:56 kid1| Set Current Directory to /var/spool/squid
2018/12/05 13:58:56 kid1| Creating missing swap directories
2018/12/13:58:56 kid1| No cache_dir stores are configured.
#启动squid
[root@cdh01 squid] service squid start
Redirecting to /bin/systemctl start squid.service
#检查端口是否开启成功
[root@cdh01 squid]# netstat -an | grep 19191
tcp6       0      0 :::10991                :::*                    LISTEN     

测试,使用wget baidu.com或curl www.baidu.com 测试内网服务器能否访问外网

[root@cdh01 ~] wget baidu.com
--2018-12-05 14:07:48--  http://baidu.com/
Connecting to 172.19.58.201:10991... connected.
Proxy request sent, awaiting response... 200 OK
Length: 81 [text/html]
Saving to: ‘index.html.1’
100%[=================================================================================================================================>] 81          --.-K/s   in 0s      
2018-12-05 14:07:48 (20.7 MB/s) - ‘index.html.1’ saved [81/81]
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
访问内网服务器 路由器内网用户通过域名访问内网服务器的配置方法 一、 组网需求: 组网如图所示,内网中存在两台服务器分别对外提供www及ftp服务,网关路由器公网接 口上已下发nat server 配置。DNS服务器位于公网,将两台服务器的对应的域名映射到公网出口地址202.38.1. 1上,公网用户可以通过域名访问服务器。 要求:内网用户可以使用域名访问内网的两台服务器。 涉及产品:SR6600路由器 方案一:DNS-mapping 方案: 在SR6600路由器上配置DNS map功能,可以建立域名-公网地址-公网端口号- 服务协议的匹配表项。当内网用户发出的DNS解析请求得到的DNS Server响应到达配置了NAT server 的公网出接口时,接口上查找到DNS map表项后会将内网服务器的地址替换解析到的公网地址,主机就可以使用内网地址直接 访问服务器。 方案二:利用NAT 和NAT Server 下发在内网网关接口上,使内网主机通过公网地址去访问服务器。 在不使用DNS- mapping的情况下,主机用域名访问服务器意味着主机必须能使用公网地址(202.38.1. 1)去访问内网服务器。通过将NAT和NATServer 配置下发在内网网关接口上可以满足该应用(原先下发在公网接口上的nat server 配置是为了满足公网用户访问的,该部分配置不变)。 三、 配置步骤: "方案一配置 " 四、 配置关键点: 1.注意dns-map的配置中的ip地址应该配置公网出接口地址。 Nat server 的相关配置应该下发在公网出接口上。 2.在方案二中,nat server 及 nat outbound的配置应当配置在内网网关接口上。并且注意acl 规则中的目的地址应匹配服务器主机地址。 不是什么公网,私网....是外网,内网..... 内网:现阶段没有接入INTERNET的网络,称为局域网.俗称内网. 外网:INETERNET基础网络,俗称为外网. 公网即国际互联网(Internet),它是把全球不同位置、不用规模的计算机网络(包括 局域网、城域网、广域网)相互连接在一起所形成的计算机网络的集合体。我们通常所 浏览的WWW站点、FTP站点以及沟通时所采用的即时通讯软件均属于服务在Internet(公 网)的应用程序,因此也称它们为"网络应用程序"。 现在的网通,电信,铁通等架设的骨干及分支网络就是公网。 还有一点来!!内网外网是对于网络安全域来说的...国家已经明确规定,内网外网 之间是物理隔离,外网和互联网逻辑隔离。一般来说,逻辑隔离可以通过采取防火墙、 代理服务器等可以具有较强的安全网关。而一般用于传递内部机密信息的内网则必须与 外网进行物理隔离。 公网、内网是两种Internet的接入方式。 内网接入方式:上网的计算机得到的IP地址是Inetnet上的保留地址,保留地址有如下3 种形式: 10.x.x.x 172.16.x.x至172.31.x.x 192.168.x.x 内网的计算机以NAT(网络地址转换)协议,通过一个公共的网关访问Internet。内网的 计算机可向Internet上的其他计算机发送连接请求,但Internet上其他的计算机无法向 内网的计算机发送连接请求。 公网接入方式:上网的计算机得到的IP地址是Inetnet上的非保留地址。公网的计算机和 Internet上的其他计算机可随意互相访问。 NAT(Network Address Translator)是网络地址转换,它实现内网的IP地址与公网的地址之间的相互转换,将 大量的内网IP地址转换为一个或少量的公网IP地址,减少对公网IP地址的占用。NAT的最 典型应用是:在一个局域网内,只需要一台计算机连接上Internet,就可以利用NAT共享 Internet连接,使局域网内其他计算机也可以上网。使用NAT协议,局域网内的计算机可 以访问Internet上的计算机,但Internet上的计算机无法访问局域网内的计算机。 Windows操作系统的Internet连接共享、sygate、winroute、unix/linux的natd等软件, 都是使用NAT协议来共享Internet连接。 所有ISP(Internet服务提供商)提供的内网Internet接入方式,几乎都是基于NAT协议 的。 ----------------------- 访问内网服务器全文共6页,当前为第1页。 访问内网服务器全文共6页,当前为第2页。 访问内网服务器全文共6页,当前为第3页。 访问内网服务器全文共6页,当前为第4页。 访问内网服务器全文共6页,当前为第5页。 访问内网服务器全文共6页,当前为第6页。
代码是工作之余写的,代码分为转发服务器代理服务器 先说转发服务器 转发服务器其实也可以说成是重定向服务器,比如转发服务器监听80端口,如果有浏览器用户访问服务器IP(浏览器默认请求80端口),转发服务器接收到浏览器用户的请求后,便把浏览器用户的请求重定向到本机的其它端口或者处于同一网段其它机器的指定端口 再说一下代理服务器 先说明一下,我这个代理服务器只能代理指定的网站或其它可以代理的客户,比如建在内网的SVN服务或者有些地方不能访问外网网站。 代理服务器分为服务器端和客户端,服务器端需要运行在客户端和大家都能访问外网上,客户端需要放在能访问到需要代理的客户的网络上,也可以放在客户的本机上。 用法: 解压proxy.tar.gz 进入proxy目录,然后make,会生成三个我们需要的程序,transmit(转发服务器)、manager(代理服务器端)、client(代理客户端) 服务器端用法: ./transmit [端口](比如80) ./manager [端口](随便指定) 客户端用法: ./client -i [代理服务器IP]:[端口] -t [客户IP]:[端口] -d [客户域名] 举例: 假如我的外网服务器IP为1.2.3.4,代理的客户为网易(网易域名:www.163.com,IP:202.108.9.33) 服务器端如下运行 ./transmit 80 ./mananger 8000 客户端如下运行 ./client -i 1.2.3.4:8000 -t 202.108.9.33 -d www.163.com 或 ./client -i 1.2.3.4:8000 -t 202.108.9.33:80 -d www.163.com 然后在本机hosts文件(windows是c:windowssystem32driversetchosts linux是/etc/hosts)填加如下一行 1.2.3.4 www.163.com 这时在浏览器里敲www.163.com就可以通过代理服务器访问网易了 当然如果客户是自己申请域名,就可以直接把自己的域名指向1.2.3.4,而不用修改本机hosts文件了

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值