Linux服务器搭建
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Linux/CentOS各种服务框架的搭建完整流程在2012年的时候,因为要照顾新人对Linux以及相关服务的了解和学习,我特地把当时我们创业项目的所有服务搭建过程写成了一篇文档,可以让他们学习并且有所参照。下面就以这篇文档为底稿,进行一些修改和敏感信息的删除,分享给大家,希望对大家有益。本文除了Linux帐号、部分安全的基本配置,还有
php/php-fpm/mysql/redis/nginx的安装和配置。
第一部分干净服务器的安装
========================
1. 下载CentOS 6.3(当前最新已经是6.5了)64bit的CD1(不是liveDVD或者liveCD),然后按照向导设置,下面是设置的一些注意点:
1) 由光盘启动,安装Centos 6.3
2) 选择默认的英语安装
3) 磁盘选择整个硬盘
4) 时间选择上海,不要选择UTC
5) 设置root密码的时候,要备份这个密码
6) 选择basic server的方式安装
7) 自定义选择包,在语言中选择中文包
2. 网络和系统配置
1) 内部测试机,可以使用静态IP,也可以是动态IP。公网机器一定要使用静态IP,使用setup命令进行设置,也可以直接更改对应的配置文件: /etc/sysconfig/network-scripts/ifcfg-eth0,特别是要把ONBOOT的值改为yes,一般改好后最好重启,就能使用网络了
2) 然后执行yum update,对系统进行全面的更新,完成之后最好重新启动一次
3) 如果内核升级了,不要删除所有的老内核,至少保留最近一次的老内核,以防新内核有问题
4) 关闭SELinux,通过修改/etc/selinux/config来实现。以后可以通过防火墙来保护服务器
3. 账户的设置和维护
1) 创建管理用户,如useraddrafael
2) 对新创建的用户进行密码设置,如passwdrafael,一般要备份这个密码
4) 把rafael加入到wheel用户组中,在/etc/group中进行配置
5) 把wheel用户组设置为sudo的信任用户组,在/etc/sudoers中进行修改,注意这个文件要先改为可写,修改完后再该回去
6) 禁止root用户远程ssh登录,到/etc/ssh/sshd_config中进行配置,设置PermitRootLogin no,然后重新启动sshd
7) 以后尽量通过ssh远程登录这个机器了
第二部分安装nginx, mysql, php, redis等
========================
1. 设置epel更新源(官方源太老了)
1) 主要参照
/2011/install-nginx-php-fpm-on -fedora-centos-red-hat-rhel/,会有一些小的变动,以下面为准。首先完成下面两步:
a. sudo rpm -Uvh
/fedora/epel/6/x86_64/epel-release-6-8.no arch.rpm (最好到/fedora/epel/6/x86_64/看看epel的最新版本,应该不止6-8了)
b. sudo rpm -Uvh
/enterprise/remi-release-6.rpm(最好到/fedora/epel/6/x86_64/看看最新版本)?
2) 然后找到nginx源,到/en/download.html找到CentOS6一行,然后可以下载对应的rpm,也可以直接通过如下命令:sudo rpm -Uvh
/packages/centos/6/noarch/RPMS/nginx-release-ce ntos-6-0.el6.ngx.noarch.rpm
2. 安装需要的软件
1) 安装php和nginx,如:sudo yum --enablerepo=remi install nginxphpphp-fpm php-common
2) 安装php的组件,如:sudo yum --enablerepo=remi install
php-pecl-apcphp-cli php-pear
php-pdophp-mysqlphp-pgsqlphp-pecl-mongo
php-sqlitephp-pecl-memcachephp-pecl-memcachedphp-gdphp-mb stringphp-mcryptphp-xml php-devel
3) php-redis请根据https:///nicolasff/phpredis上的说明用Git下载并编译和安装(安装gcc和Git先:sudo yum --enablerepo=remi install gccgit),然后需要手动的在/etc/php.d/中增加redis.conf以及相关内容
4) 安装mysql和redis,如:sudo yum --enablerepo=remi install mysqlmysql-develmysql-server redis
5) 然后分别配置php-fpm/nginx/mysql/redis在2/3/4/5级别自动启动,可以通过chkconfig来设置
第三部分:配置mysql, redis, nignx, php等
========================
1. 配置mysql
1) 启动mysql:sudo service mysqld start,会提示你第一次启动的一些初始化注意事项
2) 设置root的本地密码,备份密码;可以看情况是否设置root的远程帐号
3) 登入mysql,用命令行创建其他用户和密码,必须设置gongfuxin帐号以及密码,备份密码,此帐号用于网站登录
4) 建立基于utf8的数据库gongfuxin,然后导入gfx_recreate_all.sql,还有城市,省份和大学的对应表,把gongfuxin数据库的所有权限赋予gongfuxin帐号:grant all privileges on gongfuxin.* to
gongfuxin@localhost;
5) 可以在远程登录mysql进行设置,这样更方便,但是之前要配置远程帐号,并且要打开防火墙的3306(tcp)端口,之前的帐号创建,数据库创建都可以使用这种方式,但是安全欠妥
6) 对于mysql的配置文件,可以在/usr/share/mysql/中找到,然后根据具体内存大小选择,覆盖到/etc/f中就可以了,然后重新启
动:sudo service mysqld restart
2. 配置redis
1) 配置文件在/etc/redis.conf,暂时不需要配置
2) 启动redis:sudo service redis start
3. 配置php
1) 编辑/etc/php.ini,修改如下(这里的配置是针对上线服务器的,不是针对开发环境的):