Magento独立服务器配置指南之一

发布于2015-08-30

Magento是比较耗费资源的电商平台,一般的共享空间运行Magento比较吃力,好在目前独立服务器价格也比较便宜了,购买一套独立服务器来运行Magento网站可能是改善Magento 网站速度的最好解决方案,考虑到服务器的控制面板 Cpanel ,DirectAdmin 的使用成本比较高,我们为一些喜欢钻研的客户提供一系列的服务器配置指南,客户按照我们的教程可以不用再交商业控制面板的月使用费,也不用怕免费控制面板的安全性,丰衣足食,开启我们独服的配置之旅。

这实际上就是一份我们配置自己服务器的记录,虽然无法保证完全无错,但我们写作这个系列文章时,态度非常认真,力求每一步骤的准确,如果看官发现有什么错误,请联系我们,我们会验证后予以修正。废话少说,现在开始。

新服务器已经开通,没有控制面板,准备用Ubuntu 自己配置 web 服务器, 这里是整个配置过程记录。独立服务器硬件信息:

用lshw 查看服务器硬件信息,主要信息如下:

用 lsb_release -a 查看Ubuntu 版本信息如下:

1. 服务器配置准备工作

一直用root操作主机并不推荐,所有要创建一个非root用户。

使用户有root权限(可以运行 sudo):

安装sudo:

退出root用户,用新创建的 magedev 登陆,然后升级系统,

升级完成后,需要reboot 服务器:

重启后,重新用ssh 登陆,然后修改 hostname:

输入新的hostname 替换 localhost,然后重启hostname服务。

 

2.安装LAMP(PHP,MySql,Apache等)

在安装之前,最好检查一下相关的软件包是否已经安装,键入aptitude 可以查看所有已经安装的软件包。
现在开始安装LAMP。

安装apache

安装完后,重启apache服务器:

如果出现如下AH00558 错误:

我们需要做如下操作(仅对Apache 2.4 及以上版本使用,低版本有不同的处理方法,请google搜索)

在文件中加入下面内容:

最后执行下面命令,问题就可以解决了:

现在,如果用浏览器访问你服务器的IP 地址,可以看到Apache 默认页面。

安装php和mysql

最后一步,安装mysql时,会要你添加mysql root用户的密码2次。

我们在这里已经安装了php5-mcrypt,但在Ubuntu 14 版本,安装后如果依然提示没有php mcrypt 模块,请参考这篇文章问题1

把magedev加入www-data用户组

这样,以后基本用我们新建的用户登录,而尽量避免用root登录进行日常的操作维护,因为在第一步中,我们已经赋予magedev root权限,对于需要root权限的目录,可以加sudo来完成。
至此,网站运行环境就基本完成了,我们可以把网站文件用SFTP 上传到 /var/www/html 目录下,导入数据库后,就可以用域名或者 IP 地址来访问网站,只是最基本的配置,后续还有很多地方要考虑,ftp,phpMyAdmin, 邮件服务,添加IP地址等等,后续我们会有其他文章详叙。

 

3. 服务器安全设置

修改SSH端口号

出于安全考虑,我们最好修改一下SSH端口号,步骤如下:
修改文件sshd_config

我们只需修改ssh默认端口号至其他端口比如:60888

关于端口的选择,IANA推荐使用 49152 – 65535 之间的端口,而应该避免使用 0 – 1023, 和 1024 – 49151 之间的系统保留的端口
改为sshd_config 文件后,重启ssh服务就可以了。

安装UFW防火墙
为安全考虑,我们应该禁止外部对不用端口的访问,这就是UFW防火墙要做的,现在我们来安装UFW:

然后配置UFW

这里60888是我们刚才加的新的SSH端口。下面我们激活ufw

现在除了被允许的端口,其他端口都无法访问了,可以用下面命令查看哪些端口是打开的

以后如果发现有用的端口没有打开,只需用下面命令加上这个端口就可以了。

如果要临时禁用ufw,用下面命令:

如果要删除已经加的规则,用下面命令:

上面第一命令把所有规则加上行号列示,第二命令用行号删除对应的规则。

这篇网站叙述了在ubuntu 下配置web 服务的基本步骤,后续还有更多文章对FTP,邮件服务等进行讲解。