Cài đặt mod_security/mod_security2 trên SuSE Linux
Enterprise Server 10 (SLES10)
Module mod_security là một module mnh mẽ. Kết hợp với các luật được định
nghĩa, bạn có th chặn nhiều lỗ hng của máy chủ được mở ra do việc viết mã
php hay perl kng tốt.
Không may mắn là mod_security kng phải là một phn của bản SLES10. Để
cài đặt mod_security cần cài đặt một i module của hãng th 3. Bài viết này
hướng dẫn ch cài đặt mod_security trên SLES10. Cũng như các gỡ b
module, bng cách xây dựng t gói RPM bạn có thể gỡ bỏ một cách dễ dàng.
Cài đặt Apache2
Đầu tiên bn cần i đặt apache2. Rất đơn giản bng cách sử dng câu lệnh
sau:
$ yast2 -i apache2
Cài đặt các gói yêu cu
Một vài module cn thiết phải được cài đặt để chun bị cho việc cài đặt
mod_security. y cài những gói sau:
$ yast2 -i libxml2-devel pcre-devel apache2-devel curl-devel gcc gcc-c++
Apache2-develbt buộc cho apxs2. curl là tùy chn.
Cài đặt checkinstall đóng gói)
Để theo dõi đượcc phần mềm được cài đặt cho phép người dùng th
gbỏ và cp nhật phần mềm, checkinstall có thể được y dựng RPM,
DEBIAN (DEB) và các gói Slackware. Thay thực thi "make install" chỉ cần
chy "checkinstall" và checkinstall s lấy tất cả các tp tin mà có th được cài
đặt bằng "make install".
Tải checkinstall tại : http://www.asic-
linux.com.mx/~izto/checkinstall/download.php.
$ wget http://www.asic-
linux.com.mx/~izto/checkinstall/files/source/checkinstall-1.6.1.tgz
$ make
$ make install
$ checkinstall
$ cp /usr/src/packages/RPMS/i386/checkinstall-1.6.1-1.i386.rpm .
$ rpm -ivh checkinstall-1.6.1-1.i386.rpm
Tải v cài đt liblua
Ngôn ngữ LUA được sử dụng bởi mod_security để cấu hình. Bn cần compile
LUA như là một module chia sẻ (shared module).
Tải LUA tại: http://www.lua.org/ftp/lua-5.1.3.tar.gz.
$ wget http://www.lua.org/ftp/lua-5.1.3.tar.gz
$ tar -zxvf lua-5.1.3.tar.gz
$ cd lua-5.1.3
$ make linux
$ checkinstall
[...]
1 - Summary: [ The LUA programming language ]
2 - Name: [ lua ]
3 - Version: [ 5.1.3 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ Development/Languages/Lua ]
7 - Architecture: [ i386 ]
8 - Source location: [ http://www.lua.org/ftp/lua-5.1.3.tar.gz ]
9 - Alternate source location: [ ]
10 - Requires: [ ]
11 - Provides: [ lua ]
[...]
$ cp /usr/src/packages/RPMS/i386/lua-5.1.3-1.i386.rpm ..
$ rpm -ivh ../lua-5.1.3-1.i386.rpm
y gibạn cn build một thư viện chia sẻ (shared library) từ góin liblua.
$ cd /usr/local/lib
$ gcc -shared -o liblua.5.1.3.so /usr/local/lib/liblua.a
$ ln -s liblua.5.1.3.so liblua.so
Tải v cài đt mod_security
Tải mod_security tại : http://www.modsecurity.org/download/direct.html.
Tài liu vềch cài đặt có thể xem tại đây:
http://www.modsecurity.org/documentation/index.html.
$ cd modsecurity-apache_2.5.2
$ cd apache2
$ ./configure
$ make
$ checkinstall
...
1 - Summary: [ mod_security application level firewall ]
2 - Name: [ apache2-mod_security ]
3 - Version: [ 2.5.2 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ Productivity/Networking/Web/Servers ]
7 - Architecture: [ i386 ]
8 - Source location: [ http://www.modsecurity.org/download/ ]
9 - Alternate source location: [ ]
10 - Requires: [ apache2 libxml2 ]
11 - Provides: [ mod_security ]
$ cp /usr/src/packages/RPMS/i386/apache2-mod_security-2.5.2-1.i386.rpm
../../
$ rpm -ivh ../../apache2-mod_security-2.5.2-1.i386.rpm
Cu hình Apache2 cho mod_security
# /etc/apache2/conf.d/mod_security.conf
LoadFile /usr/lib/libxml2.so
LoadFile /usr/local/lib/liblua.so
LoadModule security2_module /usr/lib/apache2/mod_security2.so
Include modsecurity/*.conf
LoadModule unique_id_module /usr/lib/apache2/mod_unique_id.so
Xn và cu hình Core Rules
Tải core rules ti : http://www.modsecurity.org/download/modsecurity-core-
rules_2.5-1.6.0.tar.gz.
$ cd /etc/apache2
$ mkdir modsecurity
$ cd modsecurity
$ tar -zxvf ../modsecurity-core-rules_2.5-1.6.0.tar.gz
Hiu chỉnh modsecurity_crs_10_config.conf cho đúng với đích của tập tin cấu
hình:
vi modsecurity_crs_10_config.conf