軟件源代碼包的存儲位置:/usr/local/src
源碼包編譯安裝位置(前綴):/usr/local/software _ name。
腳本和維護程序的存儲位置:/usr/local/sbin。
MySQL數據庫位置:/var/lib/mysql(可根據情況設置)
Apache網站根目錄:/home/www/wwwroot(可根據情況設置)。
Apache虛擬主機日誌根目錄:/home/www/logs(可根據情況設置)
Apache流水賬:www:www
二、系統環境的部署和調整
1.檢查系統是否正常。
# more /var/log/messages(檢查系統級錯誤消息)
# dmesg(檢查硬件設備的錯誤消息)
# ifconfig(檢查網卡設置是否正確)
# ping www.163.com(檢查網絡是否正常)
2.關閉不必要的服務
# ntsysv
下面只列出了需要啟動的服務,建議關閉所有未列出的服務:
atd
克朗德
irqbalance
微碼_ctl
網絡
發送郵件
sshd
系統記錄
3.重啟系統
#初始化6
配置vim
# vi /root/。bashrc
在別名mv='mv -i '下添加壹行:alias vi='vim '保存並退出。
# echo '語法on ' & gt/root/。vimrc
5.使用yum程序安裝所需的開發包(以下是標準的RPM包名)
# yum安裝ntp vim增強的gcc gcc-c++ gcc-G77 flex bison autoconf automake bzip2-devel ncurses-devel lib JPEG-devel libpng-devel libtiff-devel freetype-devel PAM-devel內核
6.定期校正服務器時鐘,並與中國國家授時中心的授時服務器同步。
# crontab -e加壹行:*/30 * * * ntpdate 210 . 72 . 145.44。
7.源代碼編譯和安裝包(源代碼)
(1) GD2
# cd /usr/local/src
# tar xzvf gd-2.0.34.tar.gz
# cd gd-2.0.34
# ./configure-prefix =/usr/local/gd2
#制造
#進行安裝
(2) LibXML2
# cd /usr/local/src
# tar xjvf libxml2-2.6.30.tar.bz2
# cd libxml2-2.6.30
# ./configure-prefix =/usr/local/libxml 2
#制造
#進行安裝
(3) LibMcrypt
# cd /usr/local/src
# tar xjvf libmcrypt-2 . 5 . 8 . tar . bz2
# cd libmcrypt-2.5.8
# ./configure–prefix =/usr/local/libmcrypt
#制造
#進行安裝
(4) Apache日誌截斷程序
# cd /usr/local/src
# tar xzvf cronolog-1 . 7 . 0-beta tar . gz
# cd cronolog-1.7.0-beta
# ./configure–prefix =/usr/local/cronolog
#制造
#進行安裝
8.升級OpenSSL和OpenSSH
# cd /usr/local/src
# tar xzvf openssl-0.9.8e.tar.gz
# cd openssl-0.9.8e
# ./config-prefix =/usr/local/OpenSSL
#制造
#進行測試
#進行安裝
# cd..
# tar xzvf OpenSSH-4.7p 1 . tar . gz
# cd openssh-4.7p1
# ./配置\
"- prefix=/usr" \
"- with-pam" \
"-使用-zlib" \
"- sysconfdir=/etc/ssh" \
"-with-SSL-dir =/usr/local/OpenSSL " \
"-使用-MD5-密碼"
#制造
#進行安裝
(1)禁用SSH V1協議。
查找:
#協議2,1
替換為:
議定書2
(2)禁止root用戶直接登錄
這裏,首先建立壹個普通的系統用戶:
# useradd用戶名
#密碼用戶名
查找:
#PermitRootLogin是
替換為:
PermitRootLogin登錄號
(3)禁用服務器端GSSAPI
找到下面兩行,並對它們進行註釋:
GSSAPIAuthentication是
GSSAPICleanupCredentials是
(4)禁用DNS名稱解析
查找:
#UseDNS是
替換為:
使用號碼
(5)禁用客戶端GSSAPI
# vi /etc/ssh/ssh_config
查找:
GSSAPIAuthentication是
註釋掉這壹行。
最後,在確認正確的修改後,重新啟動SSH服務。
#服務sshd重啟
# ssh -v
確認OpenSSH和OpenSSL版本正確。
第三,編譯並安裝L.A.M.P環境
1.下載軟件
# cd /usr/local/src
f /etc/my.cnf
# mv/usr/local/MySQL/data/var/lib/MySQL
# chown-R MySQL:MySQL/var/lib/MySQL/
# vi /etc/my.cnf
修改以下內容:
(1)在[mysql]部分添加壹行:
default-character-set = gbk | Latin 1 | utf8 | big 5
(2)在[mysqld]段落中增加或修改:
datadir = /var/lib/mysql
-跳過-innodb
default-character-set = gbk | Latin 1 | utf8 | big 5
- wait-timeout = 3 | 5 | 10
max _ connections = 256 | 384 | 512
最大連接錯誤數= 10000000
Thread _ concurrency =數量×2。
評論日誌箱
# bin/mysqladmin -u根密碼'根密碼'
3.編譯並安裝Apache
# cd /usr/local/src
# tar xjvf httpd-2.2.6.tar.bz2
# cd httpd-2.2.6
# ./配置\
- prefix=/usr/local/apache2" \
"-含-含-四月" \
"- enable-so" \
"- enable-deflate=shared" \
"- enable-expires=shared" \
- enable-rewrite=shared" \
"-啟用-靜態-支持" \
"-禁用-用戶目錄"
#制造
#進行安裝
# echo '/usr/local/Apache 2/bin/Apache CTL start ' & gt;& gt/etc/rc .本地
4.編譯並安裝PHP
# cd /usr/local/src
# tar xjvf php-5.2.4.tar.bz2
# cd php-5.2.4
# ./配置\
"- prefix=/usr/local/php" \
"-with-APX S2 =/usr/local/Apache 2/bin/apxs " \
"-with-config-file-path =/usr/local/PHP/etc " \
"- with-mysql=/usr/local/mysql" \
"-with-libxml-dir =/usr/local/libxml 2 " \
"- with-gd=/usr/local/gd2" \
"-使用-jpeg-dir" \
"-使用-png-dir" \
"-帶-bz2" \
"- with-freetype-dir "
"- with-iconv-dir" \
"-使用-zlib-dir " \
"-with-OpenSSL =/usr/local/OpenSSL " \
"-with-mcrypt =/usr/local/libmcrypt " \
"-啟用-soap" \
- enable-gd-native-ttf" \
"-啟用-ftp" \
"- enable-mbstring" \
- enable-exif" \
"-禁用ipv6" \
"-禁用-cgi" \
"-禁用命令行界面"
#制造
#進行安裝
# mkdir /usr/local/php/etc
# CP PHP . ini-dist/usr/local/PHP/etc/PHP . ini
5.集成Apache和PHP。
# VI/usr/local/Apache 2/conf/httpd . conf
查找:
添加應用程序類型/x-gzip。gz。tgz
在這壹行下,添加
AddType application/x-httpd-php。服務器端編程語言(Professional Hypertext Preprocessor的縮寫)
查找:
& ltIfModule dir _ module & gt
index.html董事索引
& lt/if module & gt;
將該行替換為以下內容
& ltIfModule dir _ module & gt
index.html·index.htm·index.php
& lt/if module & gt;
查找:
#包括conf/extra/httpd-mpm.conf
#包括conf/extra/httpd-info.conf
# Include conf/extra/httpd-vhosts . conf
#包括conf/extra/httpd-default.conf
刪除前面的“#”並取消註釋。
註意:請根據相關原則合理配置上述四個擴展配置文件中的設置!修改後保存並退出。
#/usr/local/Apache 2/bin/Apache CTL重新啟動
6.檢查並確認L.A.M.P的環境信息,提高PHP的安全性。
將phpinfo.php腳本放在網站的根目錄下,檢查phpinfo中的所有信息是否正確。
確認php可以正常工作後,在php.ini中設置,提高PHP的安全性。
# vi /etc/php.ini
查找:
disable_functions =
設置為:
phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,
proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,
readlink,symlink,popepassthru,stream_socket_server
四、服務器安全設置
1.設置系統防火墻
# vi /usr/local/sbin/fw.sh
將以下腳本命令粘貼到fw.sh文件中。
#!/bin/bash
#首先停止iptables服務
服務iptables停止
#加載FTP內核模塊
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
#初始鏈默認策略
/sbin/iptables -F -t過濾器
/sbin/iptables -P輸入下降
/sbin/iptables -P輸出接受
#啟用本地網絡傳輸
/sbin/iptables -A輸入-i lo -j接受
#接受已建立的連接
/sbin/iptables -A輸入-m狀態-狀態建立,相關-j接受
# ICMP控制
/sbin/iptables -A輸入-p icmp-m limit-limit 1/s-limit-burst 10-j接受
# WWW服務
/sbin/iptables -A輸入-p tcp - dport 80 -j接受
# FTP服務
/sbin/iptables -A輸入-p tcp - dport 21 -j接受
# SSH服務
/sbin/iptables -A輸入-p tcp - dport 22 -j接受# chmod 755 /usr/local/sbin/fw.sh
# echo '/usr/local/sbin/fw . sh ' & gt;& gt/etc/rc .本地