以目前最新版CentOS6为例,整个过程只需要手动copy即可。
一、配置网络
如果购买的云主机可以省略这步,如果自己安装的CentOS需要先配置IP地址,以静态IP为例:
配置网卡:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
修改网关:
vi /etc/sysconfig/network
NETWORKING=yes
GATEWAY=192.168.1.1
修改DNS:
vi /etc/resolv.conf
nameserver 8.8.8.8
重启网络:
service network restart
二、增加国内yum源
cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
wget http://mirrors.aliyun.com/repo/Centos-6.repo
yum makecache
yum install yum-fastestmirror -y
三、提前配置防火墙
vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT #for ftp
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT #for ftp
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT #for ftp
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #for apache
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #for mysql
-A INPUT -p tcp --dport 12000:13000 -j ACCEPT #for ftp PASV
service iptables restart
四、安装Apache
yum install httpd
vi /etc/httpd/conf/httpd.conf
修改以下内容:
ServerName localhost:80
AllowOverride All
Options FollowSymLinks
DirectoryIndex index.html index.html index.php
创建虚拟主机:
vi /etc/httpd/conf.d/httpd-vhosts.conf
增加以下内容:
NameVirtualHost *:80
<virtualhost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/
ServerName localhost
#ErrorLog “logs/localhost-error.log”
#CustomLog “logs/localhost-access.log” common
</virtualhost>
<virtualhost *:80>
ServerAdmin webmaster@domain.com
DocumentRoot /home/domain_com/public_html
ServerName domain.com
ServerAlias http://www.domain.com
#ErrorLog logs/domain.com-error.log
#CustomLog logs/domain.com-access.log common
</virtualhost>
设置Apache开机启动
chkconfig httpd on
service httpd restart
五、安装MySQL
yum install mysql mysql-server
/etc/init.d/mysqld start
chkconfig mysqld on
设置root密码:
/usr/bin/mysqladmin -u root password 'new-password'
六、安装PHP
yum install php
service httpd restart
目前yum安装的是PHP5.3.3
根据yum源选择需要安装的组件:
yum search php
yum install php-bcmath php-gd php-imap php-ldap php-mbstring php-mysql php-odbc php-pdo php-pear php-soap php-xml php-xmlrpc php-mcrypt
service httpd restart
service mysqld restart
七、安装phpMyAdmin
目前最新版本是4.2.4,但根据yum安装的php和mysql版本,应该安装4.0.10才更合适。
首先进入要存放phpmyadmin的目录
cd /var/www/html/
wget http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/4.0.10/phpMyAdmin-4.0.10-english.zip
unzip phpMyAdmin-4.0.10-english.zip
为apache配置phpmyadmin的虚拟目录:
vi /etc/httpd/conf/httpd.conf
Alias /phpmyadmin "/var/www/phpmyadmin/"
<Directory "/var/www/phpmyadmin/">
AllowOverride None
Options FollowSymLinks
Order allow,deny
Allow from all
</Directory>
八、安装vsftpd
yum install vsftpd
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_local_user=YES
#注意这里:如果chroot_local_user设置了YES,那么chroot_list_file是不被chroot的用户(可以向上改变目录)。
#如果chroot_local_user设置了NO,那么chroot_list_file是被chroot的用户(无法向上改变目录)。
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
pasv_max_port=13000 #这里是设置PASV使用的端口范围 和前面iptables规则对应
pasv_min_port=12000
创建chroot_list
touch /etc/vsftpd/chroot_list
创建ftp用户
useradd -d /var/www/html/ -g ftp -s /sbin/nologin -M ftpusername
passwd ftpusername
chown -R ftpusername /var/www/domain_com
chmod -R 755 chmod -R 755
service vsftpd restart
chkconfig vsftpd on
这时登录ftp应该会出现550错误,原因是没有配置SELINUX权限
因为是偷懒,直接关闭SELINUX:
vi /etc/selinux/config
SELINUX=disabled
临时关闭:
/usr/sbin/setenforce 0
九、安装Postfix
一般来说CentOS内置了Postfix
检查下看看:
yum -qa | grep postfix
yum安装:
yum install postfix
安装后命令行运行mail测试一下,就算没问题了估计也不能通过php的mail()发送邮件,因为httpd没有maildrop的权限
chmod 777 /var/spool/postfix/maildrop
其他可能存在的权限问题:
chown apache.apache -R /var/www/html
chown mysql.mysql -R /var/lib/mysql
完毕!