CentOS系统的被很多人使用,但是有些人是被CentOS系统的名声所吸引的,对CentOS系统的了解是很少,下面我们就来介绍一下CentOS系统的知识。
1. 检查CentOS系统是否正常
# more /var/log/messages (检查有无CentOS系统内核级错误(error)信息)
# dmesg (检查有无硬件错误(error)信息)
# ifconfig(检查网卡设置是否正确)
# ping www.discuz.net (检查网络是否正常)
2. 关闭不需要的服务
ntsysv
以下仅列出需要启动的服务,未列出的服务一律可以关闭:
crond
irqbalance (仅当服务器CPU支持S.M.P-对称多路处理器架构时才需开启,例如有2个或2个以上的CPU。否则关闭)
microcode_ctl
network
random
sendmail
sshd
syslog
3. 对TCP/IP网络参数进行调整,加强抗syn_flood能力
# echo \'net.ipv4.tcp_syncookies = 1\' >> /etc/sysctl.conf
# sysctl –p
4. 配置yum
1) rpm --import /usr/share/doc/centos-release-3/RPM-GPG-KEY-CentOS-3
2) yum list | tee /etc/yum.list
解释:yum是一个功能强大的可以方便管理CentOS系统中RPM包的工具,使用yum可以通过网络免费升级、安装CentOS系统中的RPM包,并且在升级安装过程当中自动判断解决依赖性问题,同时,也可以卸载删除RPM包,详细信息请参见Discuz!知识库中Linux部分对yum的详细介绍 (http://kb.discuz.com/index.php?title=%E4%BD%BF%E7%94%A8yum%E7%AE%A1%E7%90%86CentOS_RPM )
5. 安装所需的RPM
在安装前,请先使用 rpm -qa | grep NAME 检查是否已经安装了以下的RPM包(将命令中的NAME替换为下列包名称即可),如果CentOS系统显示已经安装过该RPM包,则无需使用yum再次安装!
gcc
gcc-c++
ntp
flex
bzip2-devel
ncurses-devel
libjpeg-devel
libpng-devel
libtiff-devel
freetype-devel
pam-devel
perl-CGI
perl-DBI
zlib-devel
yum install NAME (将NAME替换为上面列表中的RPM包名称即可开始自动网络安装)
6. 检查CentOS系统时间并设置定期时间同步
1) date (确认CentOS系统时间是否正确)
2) ntpdate 210.72.145.44 (与中国国家授时中心进行时间校正)
3) crontab -e 加入一行任务,每隔30分钟进行一次时间同步:
*/30 * * * * ntpdate 210.72.145.44 > /dev/null 2>&1
7. 重新启动CentOS系统
init 6
8. 源码编译安装环境所需的软件
1) LibXML2
# cd /usr/local/src
# wget http://download.discuz.net/env/libxml2-2.6.24.tar.bz2
# tar xjvf libxml2-2.6.24.tar.bz2
# cd libxml2-2.6.24
# ./configure --prefix=/usr/local/libxml2
# make
# make install
2) GD2
# cd /usr/local/src
# wget http://download.discuz.net/env/gd-2.0.33.tar.gz
# tar xzvf gd-2.0.33.tar.gz
# cd gd-2.0.33
# ./configure --prefix=/usr/local/gd2 --mandir=/usr/share/man
# make
# make install
[编辑]升级OpenSSL和OpenSSH加强安全性
1) 升级OpenSSL
# cd /usr/local/src
# wget http://download.discuz.net/env/openssl-0.9.7j.tar.gz
# wget http://download.discuz.net/env/openssh-4.2p1.tar.gz
# tar xzvf openssl-0.9.7j.tar.gz
# cd openssl-0.9.7j
# ./config --prefix=/usr/local/openssl
# make
# make test
# make install
# cd ..
2) 升级OpenSSH
# tar xzvf openssh-4.2p1.tar.gz
# cd openssh-4.2p1
# ./configure --prefix=/usr --with-pam --with-zlib --with-ssl-dir=/usr/local/openssl --with-md5-passwords --mandir=/usr/share/man
# make
# make install
3)禁止root直接登录,此处先建立一个普通CentOS系统用户:
# useradd username
# passwd username
# vi /etc/passwd (将passwd文件中username的登录shell改为/bin/sh)
# vi /etc/ssh/sshd_config (将#protocol 1,2一行改为protocol 2)
# vi /etc/ssh/sshd_config (将#PermitRootLogin yes一行改为PermitRootLogin no)
# vi /usr/etc/sshd_config (将#protocol 1,2一行改为protocol 2)
# vi /usr/etc/sshd_config (将#PermitRootLogin yes一行改为PermitRootLogin no)
# /etc/rc.d/init.d/sshd restart
[编辑]安装配置Apache+PHP+MySQL+Zend Optimizer
1) 下载软件
# cd /usr/local/src
# wget http://download.discuz.net/env/httpd-2.0.58.tar.bz2
# wget http://download.discuz.net/env/mysql-standard-5.0.22-linux-i686.tar.gz
# wget http://download.discuz.net/env/php-5.1.4.tar.bz2
# wget http://download.discuz.net/env/ZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz
2) 安装MySQL
# tar xzvf mysql-standard-5.0.22-linux-i686.tar.gz
# useradd mysql
# mv mysql-standard-5.0.22-linux-i686 /usr/local/mysql
# cd /usr/local/mysql
# scripts/mysql_install_db --user=mysql
# chown -R root .
# chown -R mysql data
# chgrp -R mysql .
# mv data /var/lib/mysql
# ln -s /var/lib/mysql ./data
# cp support-files/my-large.cnf /etc/my.cnf
# bin/mysqld_safe --user=mysql
# bin/mysqladmin -u root password newpassword_for_root