VPS折腾记:系统安装、LNAP配置、安全设置、网站迁移

为什么折腾起VPS来了?原因曾说过,当初想与大家一起来维护这个VPS的,但是反应很冷,再加上“子痕”的建议,决定一个人用这个VPS,减少麻烦的同时与减少责任。VPS选用Linode的1024方便,可惜“子痕”推荐迟了,没有选择到DigitalOcean,大家可以试试。之所以选择Linode是因为它成熟,并且可以随时退款。

折腾正式开始。

一、操作系统选择

首先安装操作系统,在操作系统选择上只是在Ubuntu与CentOS做选择,最终选定的是CentOS,感觉CentOS更专业,必竟是企业级的操作系统。安装的过程非常简单,直接在Linode后台选择相应的操作系统版本和相应硬盘分区。全都是默认:(256 MB, swap)、(48896 MB, ext3),设定Root管理员的密码,直接下一步安装,2-5分钟时间就在VPS上成功安装了操作系统。安装成功后,点击Boot自动VPS。

Linode-Manager
操作系统安装完毕后,怎样操作呢?新手们纯代码非常有难度,解决方法就是安装第三方的主机控制面板,同时也方便管理。折腾高峰正式到达,这段时间最起码重新系统不上十次,安装各种第三方机控制面板进行测试,以下是测试本人体会。

二、主机控制面板推荐

国产虚拟主机控制面板推荐如下:

WDCP 闭源免费,国内用的人挺多的,简单易用,无论是个人用来建站还行还是小范围外租空间都是不错的选择,支持在CentOS,RedHat,ubuntu系统上搭建 apache,nginx,nginx+apache/MySQL/PHP环境,官网有一键安装脚本安装简单。同时还有各种安全设置,如修改SSH端口,禁止Ping,禁止Root用户登陆等,非常适合国人或新手使用。
官网:http://www.wdlinux.cn/
安装:http://www.wdlinux.cn/bbs/forum-3-1.html

LuManager 闭源有免费版,看起来貌似不错,用过的也说还行,支持在FreeBSD,Debian,Ubuntu,Centos系统上搭建,Apache,Nginx(Tengine),Nginx+Apache/MySQL/PHP环境,官网有一键安装脚本安装简单。虽说已公司运行模式,但官方还是比较简陋,还是论坛式的。
官网:http://www.zijidelu.org/
安装:http://www.zijidelu.org/forum-6-1.html

PS:如果真的要纯中文的话,推荐使用WDCP。国内还有一个产品值得推荐的:VPSMate - Linux 服务器WEB管理面板。可惜已停止更新,官方说将会以全新版本发布,值得关注。VPSMate是本人测试这么多个界面、操作最好的一个。

国外开源免费虚拟主机控制面板推荐如下:

Kloxo 很多人用最为推荐,支持Apache,Lighttpd不过只支持CentOS系统,官网有一键安装脚本安装简单,有第三方中文语言包汉化完整。可惜中文语言包还停留在2012年,并安装步聚稍多一些。
官网:http://lxcenter.org/software/kloxo
安装:http://wiki.lxcenter.org/Kloxo+Installation+Guide

Webmin/Virtualmin 如果英文还不错的话,本人推荐使它Webmin/Virtualmin,支持Apache支持Debian,Ubuntu,CentOS,Solaris系统,官网有一键安装脚本安装简单,官方默认支持简体中文不过汉化不全。但它的功能实在是太强大了,强大得让我们这些新手无从下手。值得推荐。 操作界面也非常美观。 官网:http://www.webmin.com/virtualmin.html
安装:http://www.webmin.com/vinstall.html

PS:你是技术控的话,建议Webmin/Virtualmin,它可是Linux服务器管理与WEB管理双合一。

三、Apache,Nginx,Nginx+Apache/MySQL/PHP环境的搭健

关于Apache与Nginx之间的选择,本人更加推荐Nginx+Apache的配合,nginx在处理静态内容上较apache是几倍或几十倍的差异,因而放在前面过滤静态内容是最为恰当的.同时nginx也是一个负载均衡器,低资源消耗,高性能转发是它的特点.经过nginx在前面的过滤,后端的apache需要处理的内容相对就比较少了.只需负责处理动态内容就可以了.在性能与稳定性的权衡下,使用nginx+apache搭配会让它们在各自擅长的领域展现自身的价值。

如果安装主机控制面板,那一般会自动搭建Apache,Nginx,Nginx+Apache/MySQL/PHP环境,但上面推荐的主机控制面板当中,只有WDCP可以实现Apache,Nginx,Nginx+Apache三种环境的自由选择。

wdcp

四、关于CentOS服务器的安全设置

1、禁止使用Root登陆是必须的
2、修改SSH默认登陆端口22,禁用不必使用的网络端品,如FTP的21。 3、注释掉不需要的用户和用户组

vi /etc/passwd
#userdel adm
#userdel lp
#userdel sync
#userdel shutdown
#userdel halt
#userdel news
#userdel uucp
#userdel operator
#userdel games
#userdel gopher
#userdel ftp
vi /etc/group
#groupdel adm
#groupdel lp
#groupdel news
#groupdel uucp
#groupdel games
#groupdel dip
#groupdel pppusers

4、更改口令文件的属性
chattr命令给下面的文件加上不可更改属性,从而防止非授权用户获得权限。

//添加属性,禁止修改
chattr +i /etc/passwd
chattr +i /etc/shadow
chattr +i /etc/group
chattr +i /etc/gshadow
//去除属性
# chattr -i /etc/passwd
# chattr -i /etc/shadow
# chattr -i /etc/group
# chattr -i /etc/gshadow

5、关闭那些不需要的服务

#setup
acpid
anacron
cpuspeed
crond
irqbalance #仅当服务器CPU为S.M.P架构或支持双核心、HT技术时,才需开启,否则关闭。
microcode_ctl
network
random #(centos 6 里没有该服务)
sendmail
sshd
syslog
yum-updatesd

6、启用iptables 防火墙,对增加系统安全有许多好处。设置好防火墙的规则。

vi /etc/sysconf/iptables
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
# allow local loopback connections
-A INPUT -i lo -j ACCEPT
# drop INVALID connections
-A INPUT -m state --state INVALID -j DROP
-A OUTPUT -m state --state INVALID -j DROP
-A FORWARD -m state --state INVALID -j DROP
# allow all established and related
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# add anymore rules here
COMMIT

以上是最基本的安全设置。互联网没有绝对安全,所以一条无规则20位以上的混合密码比你的再多设置更实在。呵呵。

五、网站迁移

这个太熟悉了,在新的主机上建立与旧主机MySql相同的用户名、数据库名、密码,然后在旧主机上导出数据,导入新主机的相同名字的数据库中,然后拷贝相应的文件到WEB空间既可。不做详解。

六、遇到的问题与解决方法

全部安装完毕,访问博客时都正常显示,但是在后台运行WordPree升级时出现“502 Bad Gateway”错误。

开始时是以为PHP运行内容过小,但一查看都128MB,不小了。又以为是PHP FastCGI进程数问题,已设置为300,还是出错,问题出在那里呢?VPS上的1G内存可以说是足够的呀。增加缓冲区容量大小再试试,故障依旧。问题出现在那呢?头痛。唉,没法子,试试最新版本的PHP看看,升级到最新的5.3.17,呵呵,“502 Bad Gateway”问题再也不出错了,原来程序对PHP版本有要求。

有一段时间发现网友留言无法收到邮件,原来是mail函数问题,为PHP的mail函数配置Postfix或者Sendmail的方法是一样的。两者都是执行"/usr/sbin/sendmail"程式。

编辑php.ini文件

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
sendmail_path = "/usr/sbin/sendmail -t -i"

保存后并重启httpd服务才可生效。通过以下命令进行测试看是否成功:

echo Hello | mail -s Test  [email protected](你想收件的邮件地址)

七、网站数据备份到DropBOX

这样的教程实在太多了,但很多文章都会有一些小差错,本人测试这么多方案,还是madman写的:“Centos使用DropBox定时同步备份方案详解”比较清晰明了,大家按照步聚去操作可以了,你的数据再也不会丢失了。

现在VPS只运行一个网站,内存只有量只用了250MB,还有很多空间与流量。但不打算合租了,本人一人使用,呵呵。对于VPS,你有什么好的建议?特别是在服务器或网站安全方面你觉得还有那些需要做的?欢迎你的留言。

VPS折腾记:系统安装、LNAP配置、安全设置、网站迁移》有18个想法

  1. 大路

    VPS是需要自己安装操作系统的,那么请问云服务器呢?是否已经装配好系统的?唉,我现在只能放在了虚拟主机。哈哈哈…

    回复
  2. Betty

    我目前用的服务器就是别人免费赞助的VPS

    就因为免费赞助,很怕哪天说给我撤就给我撤了

    不过日记本身就有在电脑上备份,真要瘫了顶多也就可惜点评论吧

    回复
    1. 佐仔

      博客也是个人资料,还是自已做主比较好,交给可信之人也不错。
      挺佩服你的,明天可以坚持写下去,我基本只能坚持到每周一篇。哈哈。

      回复
  3. 子痕

    我09年第一次使用vps装了Kloxo ,用了Apache,真是巨卡啊,就放一个wordpress经常打不开,后来就直接用nginx了,什么面板都不用,很省资源。

    回复
      1. maie

        我不懂,工作需要试用了一下阿里云,用过windows2008/Centos,最后直接用的wdcp,以后有时间再学习一下lnmp,哈哈!

        回复

回复 maie 取消回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注