Red Hat Enterprise Linux (RHEL) 7.0 基本配置
扩展系统Yum源
官方地址:http://dl.fedoraproject.org/pub/epel/OS版本号/x86_64/
- Eg: CentOS7 使用 rpm 安装源:
rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
1 | yum install epel-release |
最常用的源,不多说了。
国内的话,可以使用镜像来提高速度:
网易:http://mirrors.163.com/centos/7/extras/x86_64/Packages/epel-release-7-5.noarch.rpm
USTC:http://centos.ustc.edu.cn/centos/7/extras/x86_64/Packages/epel-release-7-5.noarch.rpm
REMI
官方地址:http://rpms.famillecollet.com/enterprise/版本号/
- Eg: CentOS7 使用 rpm 安装源:
1 | rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm |
REMI拥有最新的PHP资源,截至2015-06-07 PHP版本为5.6.9,可直接使用yum安装
1 | rpm -Uvh http://rpms.famillecollet.com/enterprise/7/php56/x86_64/php-5.6.9-1.el7.remi.x86_64.rpm |
⚠:REMI源安装完毕后需要手动启用:
1 | vi /etc/yum.repos.d/remi.repo |
修改所需源 enabled=0 为 enabled=1
更改系统默认防火墙
关闭firewalld
- 停止firewalld
1 | systemctl stop firewalld.service |
- 禁止firewalld开机启动
1 | systemctl disable firewalld.service |
安装iptables
- 安装熟悉的iptables:
1 | yum install iptables-services |
- 安装后使用
1 | iptables -L |
查看已启用规则,一般文件内默认有22端口规则,
若没有添加默认规则,则需手动添加iptables规则:
1 | vi /etc/sysconfig/iptables |
以下例子开启了SSH,HTTP,MYSQL端口
1 | *filter |
编辑完文件后,按ESC,输入 :wq! #保存退出,回车确认
- 重启防火墙使配置生效
1 | systemctl restart iptables.service |
- 确认设置无误后,设置开机启动,若设置有误则重启后重新编辑配置文件
1 | systemctl enable iptables.service |
安装组件
安装网页服务器,解释语言
Apache HTTPd
1 | yum install httpd |
- 启动httpd:
1 | systemctl start httpd.service |
- 停止httpd:
1 | systemctl stop httpd.service |
- 重启httpd:
1 | systemctl restart httpd.service |
- 设置httpd开机启动:
1 | systemctl enable httpd.service |
PHP
1 | yum install php |
默认安装版本较旧(5.4.x),若需最新版本,请安装php后继续添加REMI源安装”PHP+版本”:
- Eg: 安装PHP 5.6.9:
1 | yum install php56 |
- Eg: 安装PHP 7.0+:
1 | yum install php70 |
- 按需安装PHP组件:
1 | yum install php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhash |
- 按需安装PHP 7组件:
1 | yum install php70-php-mysqlnd php70-php-gd libjpeg* php70-php-ldap php70-php-pear php70-php-xml php70-php-xmlrpc |
- 用于开发的话,推荐安装xDebug:
1 | yum install php-pecl-xdebug |
安装数据库服务器
- MariaDB:
1 | yum install mariadb mariadb-server |
- 拷贝配置文件:(注:重名请覆盖)
安装后默认提供5个配置文件,选择合适的复制至/etc/my.cnf
1 | my-huge.cnf |
- 配置中型数据库:
1 | cp /usr/share/mysql/my-medium.cnf /etc/my.cnf |
- 启动MariaDB:
1 | systemctl start mariadb.service |
- 停止MariaDB:
1 | systemctl stop mariadb.service |
- 重启MariaDB:
1 | systemctl restart mariadb.service |
- 设置开机启动:
1 | systemctl enable mariadb.service |
- 安装完成并启动数据库后,执行数据库自带初始化安装:
1 | mysql_secure_installation |
一路Y与回车,设置数据库root密码,直到出现 Thanks for using MariaDB!
- 至此MariaDB安装结束,若需要远程登录(%权限)则:
1 | mysql -u root -p |
输入密码后按回车,进入mysql控制台,接着输入
1 | use mysql; |
接着会报错找到多个root用户,不用管他,还是会修改第一个root的访问权限为’%’
最后别忘记刷新权限,使修改生效:
1 | FLUSH PRIVILEGES; |
配置组件
配置Apache Httpd
- 一般情况下修改Httpd配置文件:
1 | vi /etc/httpd/conf/httpd.conf |
选项:
1 | Options Indexes FollowSymLinks |
修改为(禁止列目录):
1 | Options FollowSymLinks |
选项:
1 | AllowOverride None |
修改为(允许.htaccess文件Override设置):
1 | AllowOverride All |
配置PHP
- 一般情况下修改Httpd配置文件:
1 | vi /etc/php.ini |
选项disable_functions可阻止PHP运行高危函数:
1 | disable_functions = passthru,exec,system,chroot,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname |
选项open_basedir可限制PHP文件夹权限(此处限制到默认html文件夹以及tmp临时目录):
1 | open_basedir = /var/www/html/:/tmp/ |