2009年04月05日 21:40

此次构建大部分基本全部都是参考的 Intrusion Detection with snort(Snort入侵检测使用解决方案)。

  我是在系统构建了一部分之后才加入的,因为清明节有3天假期,而老师又不会来上班,所以老师把他做了一部分的内容交给我了,让我做剩下的部分,所以我就把前面我没接触的部分按原教程copy些精华下来就好了。

建立snort服务器

一、linux安装

(1)IP地址 RFC1918私网IP

(2)无防火墙

(3)时区 通用协议调时间(UTC)偏移;系统时钟使用UTC。

(4)账号

(5)软件:窗口;KDE&GNOME;network support; messaging web tools;Authoring and publishing; Uticities (实用工具); Soft Development;

(6)补丁:使用红帽自动更新或http://rhn.redhat.com/errata/rh73-errata.html(适用redhat linux 7.3)当然类似的可以自己找。

(7)Bastille Linux:Bastille Linux是一套可以自动加固Red hat 或Mandrake Linux设备的脚本。Bastille 下载:http://bastille-linux.sourceforge.net

文件权限,账户安全,等……

二、安装Snort服务器组件

建议:安装最新版本;尽量不用RPM。

1.安装openssl

openssl+stunnel 几乎可以对任何类型的tcp会话进行加密,此处加密服务器和传感器之间的会话,控制台和服务器之间的会话加密。

①预编译

./configure -DSSL_FORBID_ENULL    该选项禁止在ssl密码组中出现观空密码。

/usr/local/ssl

libcrypto.a

openssl

libssl.a

②编辑ld.so.conf

emacs /etc/ld.so.conf &

增加 /usr/local/lib

运行ldconfig命令更新新的共享库。

2.安装stunnel

下载:http://www.stunnel.org/download/source.html

(1)安装同探测器

(2)配置 —-我是从这里开始插手的

     PEM(Privacy Enhanced Mail)存储stunnel服务器的专用密码。

     位置/usr/local/ssl/certs/stunnel.pem

以上位置是书中给的,但在实际中,其位置不是那,通过find命令找到了stunnel.pem在/usr/local/etcs/stunnel/stunnel.pem

注:find用法  find 目录名 -name 文件名

     例:find / -name mysql   或者模糊查询 find / -name ‘*mysql*’

①创建新密码:在stunnel源代码目录下,make cert (会将新密码写入stunnel.pem)

但是我在执行make cert 命令的时候却报错了,,说什么具体英文忘记了,翻译成中文差不多就是,开始make,进入某个目录,no target to …,stop,出目录,error 2.

不知道这的错误代码2是什么意思,不过在solaris系统打补丁的过程中,错误代码2的意思就是此补丁已安装的意思~~~~在这,,,好像不是这个意思了。。

②修改stunnel.pem文件的权限,只有root可以访问,否则stunnel不执行。

chmod 600 /usr/local/ssl/certs/stunnel.pem

③列出/etc/services中mysql更新的安全版本。

即在该文件中加入 mysqls 3307/tcp

也不知道这句话是什么意思,也就没敢往里面加,3307应该是个端口,不过MySQL的默认端口是3306,这里来个3307,前面的构建我也没参与,不知道什么意思。。

④启用stunnel

  /usr/local/stunnel/sbin/stunnel -d mysqls -r 127.0.0.1:3306

  -p /usr/local/ssl/certs/stunnel.pem &

3.安装OpenSSH

下载:http://www.openssh.org/

(1)ssh,scp,sshd,sftp

sftp-server,ssh-agent,ssh-add,ssh-keygen

(2)安装

tar -xzvf stunnel-5.2pl.tar.gz

cd stunnel-5.2pl

./configure

make

make install

安装的时候却有个报错,,又是郁闷的我不行,差点就放弃了,但是仔细一看,居然是缺少一个zlib文件,然后下载一个http://www.zlib.net/  ,安装上后,再从新安装OpenSSH,顺利通过。看来要对英文也有点耐心啊,不能一看是一大堆英文就放弃,,仔细看看,其实挺简单的。

(3)产生DSA密匙

#ssh-keygen

会要求输入存放key的目录以及确认passphrase(口令)。

(4)运行

/usr/local/sbin/sshd

/usr/local/bin/egd.pl

不知道为什么,找不到egd.pl文件,也就是说第二行命令没法执行。。。

不知道是不是因为前面的原因,,郁闷~~~

4.下载并解压apache

这个可是轻车熟路啊,想当在solaris上装apache的时候可难死我了。

下载地址http://www.apache.org/dyn/closer.cgi/httpd

直接tar -xzf httpd-2.2.11 即可。不必安装,因为后面的MySQL安装时会用到apache的源代码。

5.安装MySQL

下载地址:http://dev.mysql.com/downloads/mysql/5.0.html#source

(1)安装

昨天晚上的时候做到这一步的,不过不知道为什么,总是有些网址,用学校的网死活打不开,比如说csdn,,上边有好多东西想去学学,,可是学校的网无论如何都打不开那玩意~~。再就是这个了,虽然可以打开到这个链接,但是然后选mirror的时候就傻眼了,开了3太电脑去打那网页,就是打不开…没辙,只好回宿舍把source下载下来再拷到学校了。。

我是用U盘从宿舍拷的,然后也不打算用ftp了,直接用u盘去拷到linux上就行,我一边在一旁的笔记本上查找着挂载U盘的命令,一边把u盘插上了,,结果。YY的,居然自己识别U盘了。。什么时候linux这么先进了,,。。

然后拷贝上,

tar -xzf mysql-5.0.77.tar.gz

./configure -with-apache=/usr/local/down/httpd-2.2.11

make

make install

这里安装的时候就用到了./configure -with-apache= 命令。这个就是在安装时需要用到其它软件的源程序。也可以用多个,如:./configure -with-apache=/path/ -with-lib=/path/

这里也可以选用 –prefix=/path/来指定安装目录,,我觉得还是有点必要的,至于为什么,后面就发现了。。

(2)配置

①创建用户组 groupadd mysqlgroup

  创建用户   useradd -g mysqlgroup mysqluser

②设置创建的MySQL文件

chown -R root /usr/local/mysql

③为mysqluser用户赋予对数据库的访问权

chown -R mysqluser /usr/local/mysql/var

④为mysqlgroup用户组赋予一定的访问权限

chagrp -R mysqlgroup /usr/local/mysql

⑤启动mysql守护进程

/usr/local/mysql/bin/safe_mysqld &

⑥修改mysql root密码

/usr/local/mysql/bin/mysqladmin -u root secure_password

然后就可以对mysql数据库进行操作了。。。

需要说的一句是,在到第五个步骤的时候,居然找不到mysql下的bin目录,这就是不指定目录的后果,mysql装的很混乱,不知道bin装到哪里去了。。。。find bin的话却又有好多bin目录。。

突然又想到,可以find一下 safe_mysqld ,看能不能找到。。目前尚在值班今天看样子也就到这了,明天再试试吧~come on~~~~~~~

轻松自在随风飘,天地悠悠任我闯.