linux 代理软件 squid
查看是否安装squid  
以上信息表明,本机是已经安装了此软件了
如果没有显示说明没有安装,则可以使用yum工具来安装
 
安装完软件后我们接着开始配置squid代理服务器的配置文件squid.conf
 
目前的squid的配置文件内容也不多,该配置的就那几项,所以我们是给出主要的内容进行详解。
1.http_port 3128
默认的代理端口是3128,也可以自己自定义代理端口号,如80,8080等。
如果使用的是HTTPS,则使用80端口号。
2.cache_mem  64(bytes)
该条目是squid服务器的缓存大小,可以手动更改服务器的缓存大小理想值。
3.cache_dir /var/spool/squid
该条目是指缓存存放路径。
4.cache_access_log  /var/log/squid/access.log   
日志文件存放处,如果没有自己创建一个,注意权限。
5.dns_nameservers 192.168.0.1
指定一个DNS服务器
接下来是访问控制列表:
ACL 元素
你可以把他当作是一个变量,用来定义需要控制的内容
如:acl  haha  192.168.0.0/24  可以理解为 haha=192.168.0.0/24 
以后haha就是192.168.0.0/24拉。。
http_access 访问控制列表
用它来控制变量是允许通过还是拒绝通过拉。。
如:http_access  allow  haha  允许前面定义的haha(192.168.0.0/24)网段通过
http_access  deny  haha  拒绝前面定义的haha(192.168.0.0/24)网段通过
访问控制的高级功能
你需要拒绝访问某些IP、域名,采用一下操作 
Acl  deny_ip    dst   192.168.0.1/32
Acl  deny_name   dstdomain  -i    www.example.com  这是针对单个域名的
拒绝访问的IP和域名网站数量多等。可以在文件/etc/squid/deny_ip中存放拒绝的IP地址,在文件/etc/squid/deny_dns中存放拒绝访问的域名,操作如下
Acl  deny_ip   dst  “/etc/squid/deny_ip”
Acl  deny_dns  dstdomain  -l  “/etc/squid/deny_dns”
http_access  deny  deny_ip
http_access  deny  deny_dns
如在/etc/squid/deny_ip的内容是:
192.168.0.1/32
111.1.1.1/32
10.10.1.0/26
……..
拒绝的客户带有特定包含字符的URL,可以采取以下操作。
Acl  deny_url  url_regex  -i  example.com
http_access  deny  deny_url
禁止客户机下载*.mp3、*.exe、*.zip和*.rar类 型文件
acl deny_file  urlpath_regex -i  \.mp3$ \.exe$ \.zip$ \.rar$
http_access deny deny_file
禁止192.168.2.0这 个子网所有的客户机在周一到周五的9:00到18:00上网
acl workstation src 192.168.2.0/24
acl worktime time MTWHF 9:00-18:00
http_access deny workstation worktime
这些操作可以灵活控制受控制主机范围内的访问活动。
阻止某一内容的条目,最好放在允许条目前面,提高执行效率。
接下来是配置一个透明的代理功能。
在配置文件里添加这样一条:
http_port 3128 transparent 
我们直接就把80端口的访问全部重定向到3128端口就可以了
Iptables –t nat –A PREROUTING – p  tcp  -s 192.168.0.0/24  --dport 80 –mstate –state NEW,ESTABLISHED,RELATED –j REDIRECT –to-port 3128
接着修改sysctl.conf文件,使得系统具有转发包的功能
Vim /etc/sysctl.conf
Net.ipv4.ip forward = 1  把原来为0的修改成1,这样以后每次开机重启都具有包转发功能
上面改完后还不能立即应用到系统,我们需要更改已经在内存上加载的包转发模块。
Echo 1 >/pro/sys/net/ipv4/ip_forward
重启squid 就可以了
Service squid restart
Squid 无法启动原因
可以以下命令查看原因
Squid –X –d1 –N 
上次通过它查看到已经有一个squid进程在运行,我KILL它,重启就可以了。
还有查看var/log/squid/下面三个文件的大小,最好不要超过2G
修改配置文件中的cache_dir
Df 注意查看各个磁盘的情况。

Linux squid 安装配置的更多相关文章

  1. 阿里云服务器Linux CentOS安装配置(零)目录

    阿里云服务器Linux CentOS安装配置(零)目录 阿里云服务器Linux CentOS安装配置(一)购买阿里云服务器 阿里云服务器Linux CentOS安装配置(二)yum安装svn 阿里云服 ...

  2. 阿里云服务器Linux CentOS安装配置(九)shell编译、打包、部署

    阿里云服务器Linux CentOS安装配置(九)shell编译.打包.部署 1.查询当前目录以及子目录下所有的java文件,并显示查询结果 find . -name *.java -type f - ...

  3. 阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定

    阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx star ...

  4. 阿里云服务器Linux CentOS安装配置(七)域名解析

    阿里云服务器Linux CentOS安装配置(七)域名解析 1.购买域名 登录阿里云,左侧菜单点击[域名],然后[域名注册],完成域名购买.(一般首年45元) 2.添加域名解析 在域名列表里点击你的域 ...

  5. 阿里云服务器Linux CentOS安装配置(六)resin多端口配置、安装、部署

    阿里云服务器Linux CentOS安装配置(六)resin多端口配置.安装.部署 1.下载resin包 http://125.39.66.162/files/2183000003E08525/cau ...

  6. 阿里云服务器Linux CentOS安装配置(五)jetty配置、部署

    阿里云服务器Linux CentOS安装配置(五)jetty配置.部署 1.官网下载jetty:wget http://repo1.maven.org/maven2/org/eclipse/jetty ...

  7. 阿里云服务器Linux CentOS安装配置(四)yum安装tomcat

    阿里云服务器Linux CentOS安装配置(四)yum安装tomcat 1.yum -y install tomcat  执行命令后,会帮你把jdk也安装好 2.tomcat安装目录:/var/li ...

  8. 阿里云服务器Linux CentOS安装配置(三)yum安装mysql

    阿里云服务器Linux CentOS安装配置(三)yum安装mysql 1.执行yum安装mysql命令:yum -y install mysql-server mysql-devel 2.启动mys ...

  9. 阿里云服务器Linux CentOS安装配置(二)yum安装svn

    阿里云服务器Linux CentOS安装配置(二)yum安装svn 1.secureCRT连接服务器 2.先创建一个文件夹,用来按自己的习惯来,用来存放数据 mkdir /data 3.yum安装sv ...

随机推荐

  1. shell抓取

    #!/bin/sh ` configDir="$dir/config" ipport="$configDir/ip_port" url="http:/ ...

  2. LightOJ_1248 Dice (III)

    题目链接 题意: 给一个质地均匀的n的骰子, 求投掷出所有点数至少一次的期望次数. 思路: 这就是一个经典的邮票收集问题(Coupon Collector Problem). 投掷出第一个未出现的点数 ...

  3. Contest 高数题 樹的點分治 樹形DP

    高数题 HJA最近在刷高数题,他遇到了这样一道高数题.这道高数题里面有一棵N个点的树,树上每个点有点权,每条边有颜色.一条路径的权值是这条路径上所有点的点权和,一条合法的路径需要满足该路径上任意相邻的 ...

  4. C API向MySQL插入批量数据的快速方法——关于mysql_autocommit

    MySQL默认的数据提交操作模式是自动提交模式(autocommit).这就表示除非显式地开始一个事务,否则每个查询都被当做一个单独的事务自动执行.我们可以通过设置autocommit的值改变是否是自 ...

  5. 利用merge优化

    create table a1(TP_END_DATE NUMBER,WK_END_DATE NUMBER, MTH_START_DATE NUMBER, MTH_END_DATE NUMBER, T ...

  6. wpf 依赖性属性

    1 依赖性属性的作用 在WPF体系中,只有定义属性为依赖项属性,这个属性才支持样式设置,数据绑定,继承,动画和默认值.也就是 这个属性才能具有WPF中的一些特点. 它支持自动通知UI控件. WPF的属 ...

  7. Linux Shell编程(15)——操作字符串

    Bash已经支持了令人惊讶的字符串操作的数量.不幸地,这些工具缺乏统一的标准.一些是参数替换的子集,其它受到UNIX的expr命令的功能的影响.这导致不一致的命令语法和冗余的功能,但这些并没有引起混乱 ...

  8. 【转】Adnroid4.0 签名混淆打包(conversion to dalvik format failed with error 1)

    原文网址:http://jojol-zhou.iteye.com/blog/1220541 自己的解决方法:关闭Eclipse,再开启Eclipse就可以. 最新Eclipse3.7+android ...

  9. sql server 2008 创建新数据库报错、创建表报错、更改表的设计报错

    一:创建数据库报错如下: 二:解决,将软件以管理员身份运行 三:创建表报错如下图: 四:解决办法,在你创建的数据库下面的安全里,找到你创建的用户,属性,添加权限,红色标注,然后确定: 五:更改表的设计 ...

  10. 一个简单的GI--Reflective Shadow Maps

    Reflective Shadow Maps是一种简单的GI,虽然名字带有Shadow Maps,但是和Shadow Maps没有什么关系,是在screen space的一种方法,不像光线追踪和辐射度方 ...