前言

公司研发是内网的环境,研发服务器是没有通过网线直接连接外网的,所以要在研发服务器上上网或者apt install下载安装东西就要走网络代理。Squid就是一个高性能的代理缓存服务器,支持FTP,HTTPS和HTTP等协议,在实现上网的同时,也能配置管理上网的权限,比如添加网络白名单,对内网的研发环境做网络安全方面的保护。

网络代理服务器

Ubuntu 18.04 LTS,内网IP:192.168.0.5

Squid安装和配置

安装Squid:

sudo apt install squid

修改配置文件:
安装完成后,Squid的配置文件为/etc/squid/squid.conf,是一个非常长的配置文件:

sudo vim /etc/squid/squid.conf

如果基本配置和对上网不加限制的话需要注意两个地方,第一个是Squid使用的端口号:

默认使用的是3128端口,我们也可以使用其他未被占用的端口,查看端口使用情况的命令:

sudo netstat -tunlp

注意使用的端口要能被防火墙所允许。第二个就是在配置文件中添加:

http_access allow all

例如:

修改完成后保存,重启Squid:

sudo systemctl restart squid

完成后内网中的其他服务器就能在网格代理proxy中通过配置192.168.0.8:3128,实现上网。

Proxy配置

Windows服务器:

Ubuntu火狐浏览器:

Ubuntu apt install
如果在Ubuntu 18.04 下用apt命令下载的话也需要配置代理,修改/etc/apt/apt.conf.d/proxy.conf配置文件,没有的话创建个,在配置文件里添加:

Acquire::http::Proxy "http://192.168.0.8:3128/";
Acquire::https::Proxy "http://192.168.0.8:3128/";

Squid添加网络白名单

修改squid.conf配置文件,在acl CONNECT method CONNECT后添加:

acl whitelist dstdomain "etc/squid/whitelist"
http_access allow whitelist
http_access deny !whitelist

修改whitelist文件,没有的话创建个,在文件中添加允许上网的网站,例如:

.cn.bing.com
.google.com

结语

Squid还有许多其它功能能进行配置,来实现网络安全,欢迎大家留言讨论。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐