Ubuntu/centos 下使用docker搭建代理服务

代理服务对我们做研发的人员的重要性,大家都懂的,这里仅供大家参考使用,请使用的时候遵循相关的国家法律法规,勿用于非法用途。

我们这里使用的代理服务器搭建软件是squid
我们先拉取一下squid的镜像

docker pull sameersbn/squid

然后用这个镜像起一个容器

docker run --name squid -d --restart=always --publish 7777:7777 --volume /srv/docker/squid/cache:/var/spool/squid3 sameersbn/squid

安装密码访问组件

yum -y install httpd #centos
apt install apache2-utils #Ubuntu

设置访问密码

# 生成认证文件
sudo htpasswd squid_passwd your-username
## 在这里输入两次密码

# 将认证文件拷贝至容器
sudo docker cp squid_passwd squid:/etc/squid/

编写配置文件

acl localnet src 10.0.0.0/8    # RFC1918 possible internal network
acl localnet src 172.16.0.0/12    # RFC1918 possible internal network
acl localnet src 192.168.0.0/16    # RFC1918 possible internal network
acl localnet src fc00::/7       # RFC 4193 local private network range
acl localnet src fe80::/10      # RFC 4291 link-local (directly plugged) machines
acl localnet src 0.0.0.0/0.0.0.0
acl localnet src 0.0.0.0/8

acl SSL_ports port 443
acl Safe_ports port 80        # http
acl Safe_ports port 21        # ftp
acl Safe_ports port 443        # https
acl Safe_ports port 70        # gopher
acl Safe_ports port 210        # wais
acl Safe_ports port 1025-65535    # unregistered ports
acl Safe_ports port 280        # http-mgmt
acl Safe_ports port 488        # gss-http
acl Safe_ports port 591        # filemaker
acl Safe_ports port 777        # multiling http
acl CONNECT method CONNECT

# username&password auth config
auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid3/squid_passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users


http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access deny to_localhost
http_access allow localnet
http_access allow localhost
http_access deny all
http_port 3128

cache_dir ufs /var/spool/squid3 100 16 256
coredump_dir /var/spool/squid3

refresh_pattern ^ftp:        1440    20%    10080
refresh_pattern ^gopher:    1440    0%    1440
refresh_pattern -i (/cgi-bin/|\?) 0    0%    0
refresh_pattern (Release|Packages(.gz)*)$      0       20%     2880
refresh_pattern .        0    20%    4320

复制配置到容器中

sudo docker cp squid.conf squid:/etc/squid/squid.conf

重启容器

sudo docker restart squid

现在可以开始使用你自己的代理啦

你可能感兴趣的:(Ubuntu/centos 下使用docker搭建代理服务)