创新互联linux教程:16.2 配置Squid服务程序

Squid服务程序的配置步骤虽然十分简单,但依然需要为大家交代一下实验所需的设备以及相应的设置。首先需要准备两台虚拟机,一台用作Squid服务器,另外一台用作Squid客户端,后者无论是Windows系统还是Linux系统皆可(本实验中使用的是Windows 7操作系统)。为了能够相互通信,需要将这两台虚拟机都设置为仅主机模式(Hostonly),然后关闭其中一台虚拟机的电源,在添加一块新的网卡后开启电源,如图16-3所示。

专注于为中小企业提供成都网站建设、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业渝北免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了数千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

图16-3 在其中一台虚拟机中添加一块新网卡

需要注意的是,这块新添加的网卡设备必须选择为桥接模式,否则这两台虚拟机都无法访问外网。按照表16-1配置这两台虚拟机的IP地址。

表16-1 Squid服务器和客户端的操作系统和IP地址信息

术语中文叫法含义
Control node控制节点指的是安装了Ansible服务的主机,也被称为Ansible控制端,主要是用来发布运行任务、调用功能模块,对其他主机进行批量控制。
Managed nodes受控节点指的是被Ansible服务所管理的主机,也被称为受控主机或客户端,是模块命令的被执行对象。
Inventory主机清单指的是受控节点的列表,可以是IP地址、主机名称或者域名。
Modules模块指的是上文提到的特定功能代码,默认自带有上千款功能模块,在Ansible Galaxy有超多可供选择。
Task任务指的是Ansible客户端上面要被执行的操作。
Playbook剧本指的是通过YAML语言编写的可重复执行的任务列表,把常做的操作写入到剧本文件中,下次可以直接重复执行一遍。
Roles角色从Ansible 1.2版本开始引入的新特性,用于结构化的组织Playbook,通过调用角色实现一连串的功能。

这样一来,我们就有了一台既能访问内网,又能访问外网的虚拟机了。一会儿需要把Squid服务程序部署在这台虚拟机上,然后让另外一台原本只能访问内网的虚拟机(即Squid客户端)通过Squid服务器进行代理上网,从而使得Squid客户端也能访问外部 网站。

另外,我们还需要检查Squid服务器是否已经可以成功访问外部网络。可以ping一个外网域名进行测试(手动按下Ctrl+c键停止)。

    [root@linuxprobe ~]# ping www.linuxprobe.com
    PING www.linuxprobe.com (162.159.211.33) 56(84) bytes of data.
    64 bytes from 162.159.211.33: icmp_seq=1 ttl=45 time=166 ms
    64 bytes from 162.159.211.33: icmp_seq=2 ttl=45 time=168 ms
    64 bytes from 162.159.211.33: icmp_seq=3 ttl=45 time=167 ms
    64 bytes from 162.159.211.33: icmp_seq=4 ttl=45 time=166 ms
    ^C
    --- www.linuxprobe.com ping statistics ---
    4 packets transmitted, 4 received, 0% packet loss, time 3006ms
    rtt min/avg/max/mdev = 166.361/167.039/168.109/0.836 ms

当配置好Yum软件仓库并挂载好设备镜像后,就可以安装Squid服务程序了。考虑到本书中大部分服务程序都是通过Yum软件仓库安装的,读者应该对此十分熟悉,因此这里不再赘述。当然,大家也不必担心自己过于依赖Yum软件仓库来管理软件程序包,第20章会讲解如何通过源码包的方式来安装服务程序。

    [root@linuxprobe ~]# yum install squid
    Loaded plugins: langpacks, product-id, subscription-manager
    This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
    rhel | 4.1 kB 00:00 
    Resolving Dependencies
    --> Running transaction check
    ---> Package squid.x86_64 7:3.3.8-11.el7 will be installed
    --> Processing Dependency: perl(DBI) for package: 7:squid-3.3.8-11.el7.x86_64
    --> Processing Dependency: perl(Data::Dumper) for package: 7:squid-3.3.8-11.el7.x86_64
    --> Processing Dependency: perl(Digest::MD5) for package: 7:squid-3.3.8-11.el7.x86_64
    --> Processing Dependency: libecap.so.2()(64bit) for package: 7:squid-3.3.8-11.el7.x86_64
    --> Running transaction check
    ………………省略部分输出信息………………
    Installed:
     squid.x86_64 7:3.3.8-11.el7 
    Dependency Installed:
     libecap.x86_64 0:0.2.0-8.el7 
     perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7 
     perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7 
     perl-DBI.x86_64 0:1.627-4.el7 
     perl-Data-Dumper.x86_64 0:2.145-3.el7 
     perl-Digest.noarch 0:1.17-245.el7 
     perl-Digest-MD5.x86_64 0:2.52-3.el7 
     perl-IO-Compress.noarch 0:2.061-2.el7 
     perl-Net-Daemon.noarch 0:0.48-5.el7 
     perl-PlRPC.noarch 0:0.2020-14.el7 
    Complete!

与之前配置过的服务程序大致类似,Squid服务程序的配置文件也是存放在/etc目录下一个以服务名称命名的目录中。表16-2罗列了一些常用的Squid服务程序配置参数,大家可以预先浏览一下。

表16-2 常用的Squid服务程序配置参数以及作用

参数作用
http_port 3128监听的端口号
cache_mem 64M内存缓冲区的大小
cache_dir ufs /var/spool/squid 2000 16 256硬盘缓冲区的大小
cache_effective_user squid设置缓存的有效用户
cache_effective_group squid设置缓存的有效用户组
dns_nameservers IP地址一般不设置,而是用服务器默认的DNS地址
cache_access_log /var/log/squid/access.log访问日志文件的保存路径
cache_log /var/log/squid/cache.log缓存日志文件的保存路径
visible_hostname linuxprobe.com设置Squid服务器的名称

新闻名称:创新互联linux教程:16.2 配置Squid服务程序
新闻来源:http://www.shufengxianlan.com/qtweb/news41/554291.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联