为什么折腾起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。
操作系统安装完毕后,怎样操作呢?新手们纯代码非常有难度,解决方法就是安装第三方的主机控制面板,同时也方便管理。折腾高峰正式到达,这段时间最起码重新系统不上十次,安装各种第三方机控制面板进行测试,以下是测试本人体会。
二、主机控制面板推荐
国产虚拟主机控制面板推荐如下:
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三种环境的自由选择。
四、关于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是需要自己安装操作系统的,那么请问云服务器呢?是否已经装配好系统的?唉,我现在只能放在了虚拟主机。哈哈哈…
其实所谓的云服务器与VPS是一样的东西吧,我是这样觉得的,都是虚拟化的服务器嘛。
果然能折腾,最近时间少,玩不起vps,只能当虚拟主机用。
但发现如果只是小站的话还是还是用主机吧,因为VPS动不动内存就不够用。
就是说你自己买了个主机玩博客?
是的,是的,呵呵,还不错哟。
我的VPS也是centos的,控制面板也是WDCP。备份我一般都是手动备份,反正也花不了多少功夫。
建立设置自动备份,可以不用每天备,但每周必备一次。
我目前用的服务器就是别人免费赞助的VPS
就因为免费赞助,很怕哪天说给我撤就给我撤了
不过日记本身就有在电脑上备份,真要瘫了顶多也就可惜点评论吧
博客也是个人资料,还是自已做主比较好,交给可信之人也不错。
挺佩服你的,明天可以坚持写下去,我基本只能坚持到每周一篇。哈哈。
我09年第一次使用vps装了Kloxo ,用了Apache,真是巨卡啊,就放一个wordpress经常打不开,后来就直接用nginx了,什么面板都不用,很省资源。
那时候内存一般很小,现在都1G了。
不过你给我信心,周末有空再折腾纯代码,呵呵。
哈哈,我也是今年九月份才用的digitalocean,详见我这个博文 http://www.mzihen.com/goodbye-linode-hello-digitalocean/
生命不息,折腾不止
嘻嘻。挺不错的用VPS,特别是同时维护几个站的。
现在担心的就是安全问题,有什么好的建议?
我不懂,工作需要试用了一下阿里云,用过windows2008/Centos,最后直接用的wdcp,以后有时间再学习一下lnmp,哈哈!