APP下载

基于UNIX的多功能服务器构建的实现

2010-09-17唐友

网络安全技术与应用 2010年5期
关键词:日志进程防火墙

唐友

哈尔滨德强商务学院 黑龙江 150025

0 引言

随着时代的发展和国际一体化的加快,国内和国外的各种行业都面临着前所未有的挑战。这些挑战已经不仅仅是某一个行业内部的问题,也不仅仅是一个行业或区域的问题。为了能尽快地面对这种挑战,从而立于不败之地,各行业都在分析带来这些挑战的原因,并试图找出解决的方法。这些研究对IT的发展带来了许多影响,并推动了对Linux的需求。

“随需应变”的商务有以下四个主要特点:实时响应、灵活可变、聚焦核心、坚固可靠。这些都要求在业务上有更快的响应,更广泛的集成,更高的安全性和更动态的业务动作。而作为支撑环境和手段,需要其IT提供更加统一,方便,可靠,安全的支持,这也是各行各业看好Linux以及众多的IT商家投入Linux的原因。

本设计主要任务是建设一个拥有多功能的信息处理和交换的安全服务器平台。该平台将担负多种服务所需的实时信息交互、资源共享的任务。

本系统针对操作系统,应该充分考虑系统的安全、稳定、高效、高可用、易于维护等特性,并且强调操作系统与硬件及第三方软件产品的兼容特性。

针对数据库、中间件等关键服务,要充分考虑服务的高可用性和可扩展性,比如对于数据库服务,需要采用高可用技术保证数据库的365天正常运转;对于如中间件,采用负载均衡技术,提高系统的负载承担能力。

1 总体设计

1.1 设计思路

操作系统使用ubuntu linux作为服务器,拥有众多先进的技术特性,是稳定高效的通用服务器平台。Ubuntu支持32路 SMP 架构(包括Intel超线程技术的CPU)和最大64GB内存的 IA32架构服务器,兼容高可用、负载均衡集群以及备份等配套解决方案,支持业界主流的商业应用,提供标准的Linux网络服务功能,此外该产品还提供完整的软件开发环境,完全可以满足本项目对于操作系统的技术要求。体系结构设计采用B/S与C/S架构想结合,整个系统,以分为三层体系结构:表现层、功能(业务)层、数据层,如图1所示。

图1 三层体系结构图

1.2 设计难点及技术实现

利用linux技术可以实现多功能网络服务器的架设,但是最大的难点在于服务器的安全性考虑。相应的解决方案如下:

Cracker入侵之前做的第一件事情就是刺探目标主机的信息,利用各种方法得到目标主机所提供服务的版本信息,从而判断其是否存有漏洞。可以对每个开放的端口进行相应的连接,通常这些服务程序会显示自己的‘banner’,这样就能直接获知版本号,如ftp、telnet、sendmail等系统服务。通过这些返回的banner,依靠经验或资料,判断系统版本及服务的漏洞信息,从而发动入侵。现在很多扫描器都具备了自动获取 banner的功能,这样大大减轻了入侵者的工作量如nmap、portready等。如果我们将Linux伪装成Windows主机,有助于减小被入侵的风险。

2 详细设计

本文采用 Unbuntu linux系统作为服务器平台。Ubuntu是一个完全以Linux为基础的操作系统,可自由的获得,并提供社区和专业的支持。Ubuntu对于桌面和服务器都是合适的。当前 Ubuntu 发布版支持Intel x86(BM-compatible PC),MD64(ammer)PowerPC(pple iBook和Powerbook,G4和G5)构。Ubuntu 包含了超过16,000种软件,但核心的桌面安装系统合并到一张光盘上,Ubuntu覆盖了所有的桌面应用程序,包含了文字处理,电子表格,internet应用程序,web server软件,email软件,开发设计工具,常用工具,当然还有一些游戏。“Ubuntu”是一个古非洲语单词,意思是“乐于分享”。班图精神也意味“我和他人紧紧相连,密不可分,我们都在同一种生活之中”。Ubuntu Linux 也将班图精神带到了软件世界。

2.1 配置路由与防火墙服务

这里用Ubuntu默认集成了iptables实现路由及防火墙服务。iptables是LINUX 2.4及其以上版本中所带的一个防火墙规则管理程序。用户可以使用它来建立、编辑、删除系统的防火墙规则。但通常,需要自己创建一个防火墙规则脚本,并使系统启动时自动运行这个脚本。一个 LINUX防火墙系统的安全机制是通过Input、Output、Forward这三个“防火链”来实现的。而用户正是使用 iptables在这三个“链”上分别创建一套“防火规则”,完成对到来数据包层层限制的目的。

2.2 配置Web服务、Mysql数据库服务

大多数 Internet上的 Web服务器,都使用 Apache和MYSQL作为Web和数据库服务器。Apache以免费,可靠,快速和很好的扩展性等优点脱颖而出,PHP是一种类似ASP的脚本语言,目前的发展为主流的Web语言,而MySQL是一个轻量级的数据库系统,特别是用于网站建设,这3个软件均是自由软件,是架设数据库驱动的动态网站的最佳排档。

2.3 配置Ftp文件传输服务

VSFTPD是一种在Linux中非常安全且快速的FTP服务器,目前已经被许多大型站点所采用。VSFTPD支持将用户名和口令保存在数据库文件或数据库服务器中。VSFTPD称这种形式的用户为虚拟用户。相对于FTP的本地(系统)用户来说,虚拟用户只是FTP服务器的专有用户,虚拟用户只能访问FTP服务器所提供的资源,这大大增强系统本身的安全性。相对于匿名用户而言,虚拟用户需要用户名和密码才能获取FTP服务器中的文件,增加了对用户和下载的可管理性。对于需要提供下载服务,但又不希望所有人都可以匿名下载;既需要对下载用户进行管理,又考虑到主机安全和管理方便的FTP站点来说,虚拟用户是一种极好的解决方案。

2.4 配置Mail邮件服务

postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件。postfix想要作用的范围是广大的Internet用户,试图影响大多数Internet上的电子邮件系统,因此它是免费的。postfix在性能上大约比sendmail快三倍。一部运行 postfix的台式 PC每天可以收发上百万封邮件。postfix具有多层防御结构,可以有效地抵御恶意入侵者。如大多数的postfix程序可以运行在较低的权限之下,不可以通过网络访问安全性相关的本地投递程序等等。

2.5 配置Samba共享服务

Samba是一种通过实现Unix的SMB/CIFS协议,可以让Unix/linux系统与标准 Windows客户机一起共享资源的工具。一个运行 SAMBA配置恰当的 Linux服务器可以替代Windows server服务器,它一般能共享目录,提供活动目录服务(active directory service,ADS)但是它可以做为主域控制器(Primary Domain Controller, PDC),进行Windows系统作为客户机的用户认证,共享资源(目录和打印机)和定制用户会话。

3 安全维护与监控

由于Linux操作系统使用广泛,又公开了源码,因此是被广大计算机用户研究得最彻底的操作系统,而Linux本身的配置又相当的复杂,按照下面的安全策略和保护机制,可以将系统的风险降到最低,但不可能彻底消除安全漏洞,作为Linux系统的管理员,头脑中一定要有安全防范意识,定期对系统进行安全检查,发现漏洞要立即采取措施,以确保linux系统服务器安全、稳定地运转。

3.1 用户级进程监控

Linux系统提供了who、w、ps和top等察看进程信息的系统调用,通过结合使用这些系统调用,我们可以清晰地了解进程的运行状态以及存活情况,从而采取相应的措施,来确保Linux系统的安全。它们是目前在Linux下最常见的进程状况查看工具,它们是随Linux套件发行的,安装好系统之后,用户就可以使用。

Linux提供的这些命令都能提供关于进程的一些信息,可以通过它们查看系统当前的进程状况,也可以找出那些占用了过多系统资源的进程并结束该进程。它们的优点在于速度快,透明性好,直观明了。上面给出了Linux系统中较为常见的重要的进程,可以采用上述工具来实时的监测这些重要进程的情况,并采取相应的防护措施。

3.2 日志管理

日志文件大多位于公用目录,通常是/var/log,或/usr/adm,/var/adm,有些日志位于禁止访问的/etc目录。具体请参考当前操作体系统文档。其中 syslogd守护进程提供非常强大的日志功能,比如装载一个内核模块的登记,其配置文件为/etc/syslog.conf,通常它提供的最有用的日志是:messages,secure,syslog.在syslog.conf中每一行含有三个字段:facility字段表示产生该日志文件的子系统;priority字段表明事件的严重级别;action字段表明如何记录日志,它提供了远程网络记录的能力。

TCP wrapper日志也利用 syslog记录,其中可能会有telnet,ssh,ftp等远程登录的信息。这些日志中有很多有价值的条目:尝试登录的时间日期,主机名称,访问的服务类型,以及源IP地址。

3.3 流量监控

整个ubuntu linux 多功能服务器网络的流量监控用专业流量监控软件NTOP进行网络维护。在互动模式下,ntop会将网络的使用状况显示在使用者的终端机画面上。在Web模式中,ntop会像Web Server一样产生出内含网络使用状况的网页传回到使用者的浏览器上。它可以通过分析网络流量来确定网络上存在的各种问题;也可以用来判断是否有黑客正在攻击网络系统;还可以很方便地显示出特定的网络协议、占用大量带宽的主机、每次通信的目标主机、数据包的发送时间、传递数据包的延时等详细信息。通过了解这些信息,网管员可以对故障做出及时的响应,对网络进行相应的优化调整,以保证网络运行的效率和安全。

4 总结

基于Unbuntu Linux的“网上多功能服务器”项目顺利实施满足了网上各种类型服务的要求;整个系统构建在稳定的技术架构的基础上,逐步引入和融合新的软硬件,保持了技术先进性,增强了功能,提高了效率。通过系统配置扩展要求,提高了系统性能的缩整体放能力,满足了接入点和数据分中心在数据库和应用服务器等方面的性能扩展需求。

[1](美])Michael jang著,邱仲潘等译.红帽Linux 9 从入门到精通.电子工业出版社.2007.

[2]m.f.komarinski,c.collet著,晓冬,马丁译.linux系统管理指南.清华大学出版社.2009.

[3](美)Kirk Bauer译,马孝荣.UNIX和Linux自动化管理.清华大学出版社.2004.

[4](美)Martin Fink.Linux及开发放源代码在商业经济中的应用.电子工业出版社.2006.

[5](美)Scott Mann.Linux系统安全——开放源码安全工具管理员指南(第二版).电子工业出版社.2004.

[6]前导工作室.Linux安全入侵防范、检测和恢复.机械工业出版社.2008.

猜你喜欢

日志进程防火墙
一名老党员的工作日志
扶贫日志
债券市场对外开放的进程与展望
构建防控金融风险“防火墙”
改革开放进程中的国际收支统计
雅皮的心情日志
游学日志
在舌尖上筑牢抵御“僵尸肉”的防火墙
下一代防火墙要做的十件事
社会进程中的新闻学探寻