公司企业网吧上网有好多种解决方案。按服务器OS来分。一个是采用windows做服务器,另一个是采用linux做服务器。按代理方式来分有透明代理和传统代理。目前采用windows的居多,在windows最著名的有sygate和wingate,而它们采用的方式是透明代理和传统代理。
但是由于windows本身的安全问题,使用此类代理不太适合对安全性要求比较高的公司企业上网。网吧上网主要解决速度问题,而这方面其实linux也占上风。在linux下代理软件也很多。著名的有:iptables,ipchains,squid,socks。前面两个都是透明代理,squid可以用传统代理也可以用透明代理工作。socks就是采用传统代理。linux下的软件质量很高,但是用法很复杂,对一般非专业人员很难使用。而在传统代理方面又没有像wingate这么强大的软件,可以代理多种协议,(squid只代理http,socks只代理socks)。更要命的是这些软件还没有中文版,这对英语不好的人是致命的。正因为此,我从2002年5月份着手准备,写一个linux上的wingate,但某些方面还要超过它。现在正式推出0.1版,采用传统代理模式。
1. kingate介绍
linux上的wingate,一个代理服务器软件,支持http,pop3,smtp,dns,telnet,ftp,socks代理。支持ip过滤规则,支持每个用户每个smtp服务器,ftp完整解决(用户名@主机地址),结合crontab可以实现某时间段关闭某服务或打开某服务,对一些公司要求上班时间可以用IE上网,而又不允许用QQ很有用;支持TCP端口映射,使外面可以通过kingate连接内部网的任何一台机器。安装及用法都用中文书写,安装配置很简单。开放源代码,源代码采用中文注释。
以下假设kingate为0.1版
2.准备工作
官方网站:http://www.kingate.net 有kingate的最新消息,也有下载地址。
也可以直接下载
http://www.txsms.com/kingate/download/kingate-0.1.tar.gz
下载完后:
tar xzf kingate-0.1.tar.gz
cd kingate
3:安装
./install.sh
4:反安装
./uninstall.sh
5:使用
有两个bash文件可以使用。
./run.sh 运行kingate
./stop.sh 关闭kingate
以下是详细用法
bin/kingate 启动kingate
bin/kingate -f 强行启动kingate,如果启动kingate提示有一个在运行,而你又确实kingate没有运行,可以使用这个。
bin/kingate -h 查看kingate用法
bin/kingate -q 关闭kingate
bin/kingate -v 查看kingate版本
bin/kingate -s service 启动服务,如 bin/kingate -s http 启动http服务。
bin/kingate -k service 关闭服务。
bin/kingate -u model=on|off 启动关闭模块
模块列表:
socks4 socks代理中socks4支持
socks5 socks代理中socks5支持
socks_udp socks代理中udp支持,
比如我们要socks代理支持ie上网,又要关闭QQ。我们可以运行
bin/kingate -u socks4=on
bin/kingate -u socks_udp=off
6:建议
kingate的运行最好是以普通用户运行(如果不代理dns的话)。有助于安全。
假设以用户nobody运行。在第2步后(解压)运行:
#chown nobody * -R
#chgrp nobody * -R
#su nobody
$./install
$./run
7:技巧
结合crontab的使用,可以实现某时间段关闭某服务,打开某服务。还可以打开某些模块,关闭某些模块,满足特殊要求。
比如:在每天9:00-17:00不准用QQ,其余时间可以用QQ。(假设:kingate目录/usr/local/kingate,kingate运行用户是nobody)
#su nobody
$crontab -e
加入:
9 * * * * /usr/local/kingate/bin/kingate -u socks_udp=off
17 * * * * /usr/local/kingate/bin/kingate -u socks_udp=on
保存退出
注意:此时socks代理要打开
用kingate -s socks 打开
8:tcp端口映射举例
公司内部一台机器想对外提供http服务(假设这台机子的ip是:192.168.0.100,http端口为80)
我们在conf/kingate.conf的重定向功能加上
redirect 80_192.168.0.100:80_100_../conf/access.conf
重起kingate:
kingate -q
kingate
9:ip过滤
在conf/kingate.conf的安全策略部分
后面的文件就是安全策略文件,可以为每个服务分别设置不同的过滤规则。
文件格式(一例):
model access
#src/port dest/port
#如果是地址是网络段,末尾加"."。
192.168.0./* */*
127. */*
model deny
*/* 202.
注意:如果即有access和deny,取只有在deny的补集中也在access中才通过,如果某一条件在两者中以放在后面的为优先。
所以上面的过滤规则意思就是:
192.168.0.网段(内部电脑)和127.(服务器本身)可以访问外面的除了202.网段的所有地址.
【相关文章】
|
|||
| · McWill、WiMAX、3G博弈 · 网管系统介绍 · 网络管理系统如何支撑I.. · CISSP认证成长之路 · 51CTO国庆充电专题之好.. · 网络技术经典基础教程 · 51CTO主编推荐经典专题 · RAID——磁盘阵列基础 |
· 充电计划之热门IT认证.. · 51CTO技术自测 挑战自.. · AMD Phenom三核处理器.. · 国际文档格式标准开战 · 2007年互联网大会 · 我是黑客我怕谁——讲.. · Solaris 10 配置管理 · Solaris基础知识入门 |
||
|
|||
| · Java基础教程 · VPN技术 · ARP攻击防范与解决方案 · SQL Server 2005全解 · SOA 面向服务架构 · SQL Server 2005全解 · Java编程开发手册 · RAID——磁盘阵列基础 |
· 三层交换技术专题 · SQL Server入门到精通 · Windows Server 2003企.. · Windows远程桌面应用 · C#技术开发指南 · VPN技术 · C#技术开发指南 · Solaris 10 配置管理 |
||
|
|||
| · ARP攻击防范与解决方案 · VPN技术 · SQL Server 2005全解 · Java基础教程 · SQL Server入门到精通 · SQL Server 2005全解 · SOA 面向服务架构 · Java编程开发手册 |
· C#技术开发指南 · 三层交换技术专题 · C#技术开发指南 · Windows远程桌面应用 · RAID——磁盘阵列基础 · Windows Server 2003企.. · 邮件服务器专题 · wimax技术与趋势 |
||
| ·DB2 Viper快速入门 ·DB2 9数据库的镜像分割与.. |
·将XML应用程序从DB2 8.x.. ·DB2 9中的pureXML:如何.. |
| ·服务器中的“傻瓜机”在.. ·盖茨也喜欢登录Youtube看.. |
· · |
| ·体验Windows Server 2008.. ·将超星图书转成PDF文档 |
·使用 Office Communicati.. ·VMware Workstation 6.01.. |
| ·强烈质疑“步行1公里就能.. ·国庆期间新闻回顾:微软.. |
·9月第3周回顾:微软和英.. ·9月第2周回顾:四核之战.. |
| · 华为、贝恩资本22亿美元.. · NGN:下一代网络 · 网络访问中断大排查 |
· 教你使用Anti ARP Sniff.. · 网络嗅探教程:使用Snif.. · 常见病毒手工清除方法大.. |
| · C++是垃圾语言?! · 2007年IT界七大抄袭事件 · Java实用开发全集 |
· 解析Ajax开发框架 走进A.. · 基于Google Maps与Ajax.. · 基于Google Maps与Ajax.. |
| · 热门 IT 培训认证官方资.. · Ubuntu 中文开源频道 · Solaris基础知识入门 |
· Google推出唯一硬件——.. · 硬盘之父获得诺贝尔物理.. · 理性面对四核服务器选购 |
| · 甲骨文Oracle 11g正式发.. · Oracle数据库开发之PL/S.. · Oracle数据库开发基础教.. |
· 硬盘之父获得诺贝尔物理.. · 存储2006,一个并购的大.. · IDC宣布浪潮蝉联存储市.. |