版权声明:本文随便大家转载,但是要说明出处为linuxsir就行
帮某网吧配置的,参考文章:
http://www.chinaunix.net/jh/38/62061.html
http://www.chinaunix.net/jh/38/107156.html
http://www.chinaunix.net/jh/38/63081.html
本文在没有说明的前提下,一般命令都是需要在终端下使用。
硬件环境:赛扬2.4G,256M DDR,865PE主板,两个Intel的pro100网卡,eth0为对外网卡,eth1为对内网卡。
系统:slackware9.1(因为安装快,而且设置也快)
系统安装:
分区:
/ 4G
/home 5G
/var 4G
/var/cache 25G
swap 512M
分区格式为reiserfs
为了方便,安装了KDE环境,配置完后卸载(下次偶用zhcon+w3c算了)。
安装没什么可说明的,Slackware的安装虽是文本界面,但是也算简洁,只要记得将ipfoward装上,然后启动时让它自动加载就是了。
配置:
1、网卡:
首先运行命令netconfig,配置对外网卡eth0,内网ip地址为192.168.1.12
然后修改/etc/rc.d/rc.inet1.conf,配置对内网卡eth1:
内容如下:
# Config information for eth1:
IPADDR[1]="192.168.11.254" #IP地址
NETMASK[1]="255.255.255.0" #掩码
USE_DHCP[1]=""
DHCP_HOSTNAME[1]=""
2、安装squid:
首先到这里
下载:
http://www3.linuxpackages.net/packag...-i486-2rob.tgz
我就是用这个,应该是没问题的。
增加squid用户及组:用adduser命令吧,向导式的,最好把squid的home目录设定在/var/cache里
手动命令也可以:
groupadd squid
useradd -g squid -d /var/cache squid
slackware下还要设置一个地方才能用squid:修改/etc/services建立
端口3128的tcp侦听,加上一行:
squid 3128/tcp #squid proxy
这个要重启机器才能生效。
安装:终端下进入squid安装
文件所在的目录,比如你下载在root目录下,运行installpkg /root/squid*.tgz
KDE下可以用kpackages安装,更简单
3、设定squid:
squid的配置文件在/etc/squid/squid.conf(老实说很讨厌squid的原配置文件,注释太多了,宁可它另开一文做配置说明)
配置如下:
#打开3128端口
http_port 3128
#cache的内存容量
cache_mem 64 MB
#cache的目录及容量,我是设定为12G
cache_dir ufs /var/squid/cache 12000 16 256
#允许网吧内所有机器访问
http_access allow all
#squid的运行用户及组
cache_effective_user squid
cache_effective_group squid
#http加速端口设置,透明代理能用上
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
httpd_accel_host virtual
保存,然后用squid -Z来定位缓存目录,如果出现失败,就chmod 777 /var/cache
现在先测试一下squid是否能用,运行squid:
squid
测试一下是否有进程
ps -aux | grep squid
如果有,我们随便找一台网吧上的机器试试,在IE的连接处设置代理:
地址:192.168.1.12,端口:3128,如果能上网,那恭喜你,已经差不多能完成了,如果不行,看看是哪里的设置出了毛病。
设置iptables:
当然我们不能要求网吧的客人们都设置IE或QQ的代理(-__-),这就是透明代理的好处,
因为网吧不仅仅是用来浏览网页或者聊Q,
网络游戏连接需要各种端口,所以不能用iptables -F去丢包了
在/etc/rc.local下加入如下几行:
#加载iptables的相关模块:
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
#把80端口的包全部转向3128端口
iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
#ip转向,192.168.11.0/24为内网网段
iptables -t nat -A POSTROUTING -s 192.168.11.0/24 -o eth0 -j SNAT --to 192.168.1.12
运行/etc/rc.d/rc.local,到此设置全部完毕,看看能不能上网,找一台内网的机器,设定IP地址为
192.168.11.2,网关为192.168.11.254,现在试试不用代理能否直接上网,用IE或者QQ试试看,如果成功了,就拿去给人家用吧。
难点在于配置iptables,偶也是弄半天才行,一般都是内网客户机用代理上网就可以,但是改IP就不行,呵呵。
如果大家在安装slackware上遇到什么问题,可以到本站linux版块上咨询,windrose和struggle两位斑竹恭候您的大驾。
最后说一点,那个网吧管理员说现在浏览网页比原来快了好几倍。呵呵,最近想考虑一系列用linux替代在网吧中使用
windows做
服务器的方案(还有
路由),下一个研究目标是samba3.0