背景

首先有两台服务器AB,其中A为局域网,B有公网。A配置(内网IP172.19.58.202\系统CentOS7.4),B配置(内网IP172.19.58.201\系统CentOS7.4)。现在A服务器是无法访问公网的,需要使用代理的方法让A通过有公网的B访问公网。

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

配置A代理

该步骤比较简单,直接配置环境变量即可。可以在/etc/profile下配置,这边采用在/etc/profile.d文件夹下配置环境变量。

#cd到/etc/profile.d/目录下
#新建proxy.sh,命名无所谓
[root@ali2 /] cd /etc/profile.d/
[root@ali2 profile.d] vi proxy.sh

proxy.sh里面内容:

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

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

[root@ali2 profile.d] echo $http_proxy
http://172.19.58.201:10991

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

方式一:使用squid

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

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

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

启动

#检查语法是否错误
[root@ali1 squid] squid -k parse
#初始化缓存空间
[root@ali1 squid] squid -z
[root@ali1 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@ali1 squid] service squid start
Redirecting to /bin/systemctl start squid.service
#检查端口是否开启成功
[root@ali1 squid]# netstat -an | grep 10991
tcp6       0      0 :::10991                :::*                    LISTEN

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

[root@ali2 ~] 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]

方式二:使用nginx

暂未写

步骤总结

服务器A

cd /etc/profile.d/
vi proxy.sh
#####################
export http_proxy=http://172.19.58.201:10991
export no_proxy="127.0.0.1, localhost, 172.19.58.202,172.19.58.201"
#####################
source /etc/profile

服务器B(squid方法)

yum install -y squid
cd  /etc/squid/
cp squid.conf squid.conf_bak
vi squid.conf
#########################################
#将http_access deny all注释修改为http_access allow all,如果觉得不安全可以自行搜索配置白名单
#http_access deny all
http_access allow all
# 修改端口为代理的端口
http_port 10991
#############################################
service squid start
结束:开始测试#因为只设置了http代理所以ping是不起作用的
curl www.baidu.com

局域网服务器如何设置代理访问公网相关推荐

  1. 使用squid 解决内网服务器通过设置代理访问外网

    背景 线上算法服务有一个偶尔触发的逻辑需要访问三方的api,由于生产服务器无法访问外网,因此一直使用代理进行外网访问,最近代理服务器被重装了,由于该代理是前同事装的,导致这台服务器重装时候没有通知相应 ...

  2. 内网服务器设置代理访问外网

    内网服务器设置代理访问外网 背景 首先需要两台云服务器,其中服务器A无公网IP,服务器B有公网IP. A B 公网IP / 110.40.255.180 内网IP 172.17.64.11 172.1 ...

  3. 给电脑设置不能访问公网但是能够访问局域网

    给电脑设置不能访问公网但是能够访问局域网 方法: 删除本地路由 手动添加只能访问局域网的路由 1.查看本地路由 打开cmd ipconfig /all 通常默认网管对应的路由即是默认的 查看路由rou ...

  4. 我的世界服务器物品不掉落,我的世界局域网服务器怎样设置死亡不掉落东西

    在我的世界里不小心被JJ炸挂,身上的一堆宝贝掉完了,该如何设置死亡不会掉落东西呢?下面是学习啦小编收集整理的我的世界局域网服务器怎样设置死亡不掉落东西,希望对大家有帮助~~ 我的世界局域网服务器设置死 ...

  5. 【HTTPS】IIS服务器下设置https访问

    本篇旨在说明在本地win10 IIS服务器上设置HTTPS访问,在此之前要确保本地已经安装开启IIS服务了哟,不知道怎么操作的小主可移驾到本人的另一篇解说[https://mp.csdn.net/co ...

  6. google浏览器 Proxy SwitchyOmega 插件设置代理访问内网服务器

    通过代理实现访问内网系统 https://www.cnblogs.com/gwxaizxh/p/10455313.html 通过socks5方式连接内网服务器 1. 设置隧道 使用远程登陆工具,如se ...

  7. win10系统访问局域网服务器,Win10系统不能访问局域网共享磁盘的解决方法

    很多 win10系统 用户因为工作需求,都会选择创建局域网共享.不过,部分windows10系统用户有时也会遇到访问局域网共享磁盘时提示访问受限的情况,这该怎么办呢?下面,小编就向大家介绍Win10系 ...

  8. centos7上搭建http服务器以及设置目录访问

    参考文献:http://www.jb51.net/article/137596.htm,原文摘抄如下,并根据具体需要作了相应的修改. 步骤: 1. 安装httpd服务 sudo yum install ...

  9. 阿里云ecs服务器如何设置实现访问互联网

    概述: 阿里云上新开了一台ecs服务器,想访问外网下载或安装一些源依赖或者应用,我们如何设置安全组实现访问外网? 首先我们先要了解rfc1918. 什么是rfc1918? 本段转载自:What is ...

最新文章

  1. 步进电机红外遥控C语言程序,单片机红外遥控+步进电机+1602液晶显示c语言源程序...
  2. PMCAFF微课堂 | 前YY产品总监深度揭秘P2P运营推广精髓
  3. java jstat gcutil_java深入了解(jstat)
  4. 2018宁夏邀请赛 - Goldbach(米勒罗宾素数测试)
  5. 力扣删除排序数组中的重复项
  6. 安装unzip_史上最详细的WordPress安装教程(六):安装WordPress
  7. 数仓中长跳转问题复现及解决方案
  8. 媒体查询Media Queries详解
  9. [论文评析] ArXiv-2021,Pyramid Vision Transformer A Versatile Backbone for Dense Prediction without Convo
  10. 关于QT报C:\Program Files (x86)\sogoupinyin\Components\的错误
  11. html 引入wav,如何通过javascript/html5播放wav音频字节数组?
  12. 破解完全入门篇 第八章--注册码是怎样炼成的
  13. 大数据云计算实习报告
  14. SQL vs NoSQL 没有硝烟的战争!
  15. 微信小程序动态更改标题栏_微信小程序动态改变导航栏标题和背景颜色
  16. ngx-bootstrap学习笔记
  17. tesseract安装及配置
  18. 一岁半女娃海中“游泳秀” 观众含泪观看
  19. workbook 读取excel表格
  20. Stimulsoft Reports.WEB 23.1.8 完美Crack

热门文章

  1. html5 url 传参数,[实时数据]仪表板URL直接添加参数条件传参
  2. 解决加载libqxcb.so失败以及Linux库搜索顺序
  3. 小白也能看懂的零知识证明与zk-SNARKs
  4. 文件上传插件WebUploader的使用
  5. php中获得上个月的同一时间,PHP判断两个给定日期是否在同一周的方法
  6. SEO怎么做?SEO的具体流程是什么?
  7. VC6使用GdiPlus绘制png图片
  8. VC/MFC 使用jsoncpp解析json格式内容
  9. html5动态连线,canvas简单连线动画的实现代码
  10. LeetCode--初级算法--数组篇--第十题--有效的数独