关于理想

对比虚拟空间和Windowsserver2008r2,在centos上建立相对安全高效的网站和运行环境

导读:

说起centos,这玩意知名度还挺高,各方面都方便性能极好极好,可以肯定的说centos已经是现在中小型网站首选的。先不提这个centos,就是linux,可能都听说过linux占据了世界上80%的服务端使用centos作为主流的系统,占据比率是多少我不知道,反正这个我用着确实比较舒服。

上文的比较舒服四个字让我暴露了。确实,我也是从虚拟空间到winNT又到的linux的centos。我们从使用机器服务的性能,和人工服务的保障这三个方面来看看这些东西的优缺点吧。全部使用php演示,边操作边写这篇文章的机器是win7,浏览器chrome。

目的是为了让小型站得以更好的运行和维护,以及往相对高效专业的技术上靠拢,运维技术(centos的shell命令及语法,centos磁盘快照,网站文件备份和数据库备份,centos的文件系统和权限分部,nginx反向代理,nginx301重定向,),选择适合自己的才是最好的

    虚拟空间:

虚拟空间的环境是已经装好的,比如php的各种版本,net的各种版本,mysql使用phpmyadmin管理。基本上所有的虚拟空间提供商都会给你一个控制面板,操作起来非常简单,我们只要在控制面板里面绑定域名(这一步简单)。再把域名使用a记录或者cname解析,详情看域名解析/IP地址,如果提供IP就用A记录解析到IP地址上如果提供的是看起来像是一个网址的话就用CNAME解析,这是别名解析,可以理解为原网址吧,不过没什么关系,对SEO的影响也不会太大。网站程序上传到ftp里面,就可以运行了,对了,还要配置你的数据库,数据库多数是以phpmyadmin的形式,也有提供地址和账号密码的。

虚拟空间控制面板

这张是数据库的,我们只用点击管理,便可以查看默认的账号密码,这里不进行演示。注意:基本上是不支持外部mysql工具连接管理的

虚拟空间数据库管理

把提供的ftp地址端口(默认21),用户名密码,在ftp工具(如Xftp)里面新建会话,把上面的四个信息填进去,如下图操作,便可成功登陆。下图右侧是登陆成功之后的。

虚拟空间登陆成功

登陆成功之后我们可以看到有三个文件夹,第一个DB,也就是databackups,是你的备份文件。现在虚拟空间市场,因为价格透明的原因,开始了激烈的竞争,提供的功能服务也是越来越多。

好了我们看第二个文件夹log,这是日志文件夹,但是我这个服务商好像不给用是个空的文件夹。其实也没什么意义,如果你到了要看日志的地步,那你也就不会选择虚拟空间了。

第三个是Web,这是网站文件的文件夹存放所有的文件(html,css,js,php,json,还有xml格式的网站地图,txt格式的蜘蛛协议,还有各种配置文件)。我们现在打开web文件夹。

刚才改了两处语言表达的错误,切屏看ftp已经是掉线了。不过这个掉线只是厂商节省资源的一种方式,可以理解,对网站的正常使用是没有任何影响的。我这个是前两年给朋友做的网站,放到这还算稳定,毕竟也不会天天没事查状态看日志各种东西的,反正隔一两个月会去看看有没有问题,也没听他说打不开什么的。域名我提醒他续费,这个虚拟空间也有短信提醒,挺好。

虚拟空间ftp目录

回归正题,我们如果想解决ftp掉线要重连的麻烦,可以这样配置一下

    发送保持活动状态信息自动刷新远程文件列表是我刚点选上的。

操作步骤,在xftp里面案件ctrl+o,找到命名“我的网站”的这个会话,右键拉最下面点击属性,常规里面是刚才输入的地址端口账号密码。操作的步骤在选项的这个选项卡里,把发送保持活动状态信息设置为120秒,下面自动刷新远程文件列表设置为1分钟即可。仅用于虚拟空间和windows搭建的ftp,centos和其他linux系列的倒是没必要。

ftp掉线问题解决

至此虚拟空间的操作演示完毕,但是我觉得好像漏了点什么,想不起来了,可以留言告诉我,我修正。再谈一下虚拟空间的服务吧,基本上都是以工单的形式,但是厂商并没有那么大的技术团队和客服系统。所以基本上还是以QQ咨询的方式,反正遇到问题直接找他们就对了,因为文件夹都是没有管理组的权限,基本上你的操作不会对他们的服务器构成威胁。而且各种文件和数据库文件都也能很快找回,还算可以吧,就是这个人工基本上都不是24小时的,你要是抬杠说阿里的虚拟空间那就没意思了,这些都是大多数的。所以对服务也不作过多的综合评价。如果实在是新手站长,而且想用低价购买虚拟空间。在这里推荐一个老薛主机,大家可以先了解一下,并且有终身的七折优惠码boke112.com可以领到。

    Windows server 2008 r2

windowsserver2008R2可以说是一个非常经典的版本了,大多数站长都在这用了很长时间吧。因为门槛也实在不高,操作非常简单。我代维护的这种机器很多,为此还特意在移动硬盘里面搞了一个windowsserver的预装软件包。

winNT服务器登陆命令

我们登陆windowsserver,windowsserver的登陆也是极其简单的。使用快捷的WIN+R打开运行(因为每个系统点鼠标打开运行的位置都不一样,我们使用通用的快捷键),输入mstsc /admini这条命令  先查看该命令的语法一般就使用mstsc这条命令。输入厂商提供的IP、端口、账号、密码。

我现在这台电脑没有登录过,也忘记了密码,好在笔记本上记住了密码而且保存凭据。这个windows的vps也没时间做太多的操作演示,对于新手来说就再提醒两点,第一:把IE ESC给禁用了,这个自己体验吧。第二:把默认的3389端口改一下。(我这个小厂的机器,香港的一个月25块钱,买着备用有时候测试点东西。无所谓IP也不打码了)。改端口在注册表,厂商提供的快捷批处理文件(bat)都可以。

WinNT服务器IEESC配置

为避免踩坑,建议大家要先装几个东西。输入法建议使用手心输入法,安装快没广告同步词库,避免你用微软输入法和只能ABC半天打出一个字的尴尬。编辑器notepad++(基本用语查找替换,支持正则表达式和语法扩展还有各种强大的插件),sublimetext注意区分系统位数)这个用起来最顺手,是我用出的效率最高的了,总之两者综合能力都非常强而且安装包也就10M上下压缩软件这个非常必要一定要装一个

WinNT服务器软件预装

总结一下windowsserver2008r2就是可视化操作适用于新手的,前提是你理解能力要好,平时windows的机器不少用,在这个上面也是没什么出入的。慢慢来吧。不会自己配置环境,用opensll生成证书的就直接装宝塔。低配置的windows server机器,你用Apache就可以了,nginx流量不大的情况下效果也不明显。

    Linux-Centos

说起centos,很多人都会马上想到nginx -s reload|reopen|stop|quit,或者tar –czf img.tar.gz *.jpg,再或者rm-rf/*。诶,刚入门的时候这家伙确实困难啊,还记得我用tar命令的首次成功,文件名是20130501.tar,我特意用当天日期命名,现在那个文件还在我u盘里面存着。tar完事以后我用ftp下载到本机windows上,用解压软件解压出来得到了一个打不开的文件,当时一脸懵逼。rm-rf的命令也曾在醉酒后尝试使用过,当时还觉得自己上网可以找到找回的方法,结果并不理想,真的是灾难。总之这个系统,脱离了我原来的使用习惯,他没有可视化的操作窗口,让我踩了很多坑,我还装过Gnome还是Kde想不起来了,装完重启开不开机。现在这些基础操作终于学会了,能简单玩玩了。提醒大家:谨慎操作Linux(老鸟请无视尽情笑话我就好)。

我推荐使用centos7.4,虽然centos7.5已经出来了,但是7.5还是过段时间再用吧,等社区里面的反馈解决的差不多了再装上,一般要等4-6个月,逐渐稳定之后再说。当然7.1和7.2也可以。

简单介绍一下centos吧。centos的开源的,免费的。跑题一下,可能大家从小到大都用的免费的windows,确实我也只用过三年的正版。但是windows其实是收费的,只不过当时要进入中国市场的时候,他不敢收费,因为收费就没人用了,所以马上出现了大量的破解版。这是我个人的观点,我认为,这是微软自己破解的,目的就是占领中国市场。当我们大量使用了他的产品,并且沉浸,他就有了这么庞大的用户群体,以后想干什么不行啊。那点买系统的几千块钱算钱么。价格<价值,这个不等式大家都会算吧。

好了扯远了,还是回归正题讲centos,如果要在centos上部署php+mysql的网站环境,我推荐使用lnmp(linux+nginx+mysql+php),因为比手工装环境要快很多而且不容易出错,一会儿讲讲和lamp的对比。

第一:lnmp这个东西兼容性好,说兼容性可能不恰当,就试着理解吧,在debian/centos/ubantu上和其他主流的linux发行版上都可以用,不管你是不是centos都可以用,当然lamp也一样。第二:nginx比于Apache,一个非常重要的因素是,Apache是同步多模型进程,意思就是一个连接对应的一个进程。但是nginx是异步非阻塞的,成千上万的连接可以对应一个进程。第三:nginx配置简洁,支持perl的语法。第四:nginx高并发的epoll模型FreeBSD上是kqueue)。第五:nginx的静态处理耗内存少反向代理也无敌,包括phpcgi,Apache用于动态效果突出。第六:Apache的模块比较多,你能想到的基本就能找到并安装,nginx相对来说比较少,而且nginx本身的bug也多点。总结来说借用大佬的一句话,前端用nginx抗并发,后端用Apache做集群

当然nginx的301和Apache的完全不同,从Apache转nginx的时候要注意。nginx的证书也是非常简单就可以配置的。

如果大家没用过centos作服务端玩过的话,还要把win2008的迁移到centos上之前,建议大家用VMware装到本机上先用着试试,给两核cpu,1600M内存,20G硬盘就够了,想用图形界面的话就装ubantu先玩着。

时间有限,写了四千字了。嗯,还是推荐一下宝塔吧,不是我水文章。宝塔还不错,各种能想到的功能也都有。

    再给几个建议:

1备份:一定要学会备份网站文件和数据库。如果用宝塔的话,建议用阿里云的oss

2复杂:cdn和反向代理和静态和缓存,这里面大有文章,也大有文章去讲,建议新手不要玩反向代理静态配置非常简单redis要先测试,切换php版本前要关闭redis再切换。

3快照:买centos作为服务端用的话,建议买大厂的,能自动存储快照,算是灾备吧。

4权限:centos是多线程多用户的,所有的东西都是以文件的方式存储,包括驱动都是文件。所以磁盘快照是必要的,但是权限的分配也是要动脑子的。比如我把一个zblog的程序从windowsserver2008r2上迁移到centos上,我发现我插件不能下载安装了,这就是你zb_users/plugin的文件夹没有执行权限,我发现我升级模板不能升级,那就是zb_users/theme的主题文件没有执行权限。要用chmod命令给权限,当然可以用ftp工具(如xftp),管理员登陆,右键目标文件更改权限,设置权限777(0777)并勾选包含子目录点确定等待即可。

5安全:如果买大厂centos的话,比如阿里云,就用密钥对,别用密码。这样可以彻底防御ssh的暴力破解。当然Anaconda也是不可少的,要注意

6工具:在windows上管理centos的话,就用xshell搭配xftp吧,中低级门槛低,没错就是我。xshell的菜单栏里面有个(工具T),这个里面有配色方案,可以去试试。装逼必备黑背景

Centos使用安全的密钥对登陆

(如图,当使用密钥对的时候,就没有输入密码的功能了,必须要有密钥对才能登陆,不然我就是给你真实IP和端口,以及管理员账号, 你都登不上去)

7命令:linux各个不同的发型版本命令的语法都有出入,要去查去记,在本机装VMware,下载centos镜像安装作为测试环境里面自己手打命令,不要怕麻烦。比如前文提到的tar并不是压缩,而是合成,但是tar.gz是压缩。注意语法和参数。

8GUI:在centos上装GUI的话请严格按照操作文档进行。

9常规:既然用了centos这个linux的主流代表,就要知道时间戳(timestamp)md5校验这些之前可能听说过但是不懂的词了。时间戳常用于知识产权保护、 合同签字、 金融帐务 电子报价投标、 股票交易上。比如我这篇文章是发布于2018-09-05 13:04:45的,时间戳就是1536123885,时间戳的md5就是b4f4af4a48be2c06dec720da80bd4538。这三组数组都是一样的意思。时间戳是从1970年01月01日00时00分00秒开始记录的,就是北京时间的1970年01月01日08时00分00秒(我们的时区是东八区)。md5校验的话在windows上也可以完成的,就是这个文件的唯一值。任何一点点的修改,就会让这个值产生巨大的变动。是保证安全验证原版的重要方式。还有其他的常规知识,建议买相关的书籍进行系统的学习。推荐这本《Linux系统管理与服务器配置(基于CentOS 7)》

79 thoughts on “对比虚拟空间和Windowsserver2008r2,在centos上建立相对安全高效的网站和运行环境

  1. Have you ever considered about adding a little bit more than just your articles?
    I mean, what you say is important and all. Nevertheless imagine if you added some great
    photos or video clips to give your posts more, “pop”! Your
    content is excellent but with images and clips, this website
    could certainly be one of the most beneficial in its
    field. Terrific blog!

  2. Hey would you mind sharing which blog platform you’re using?
    I’m looking to start my own blog soon but I’m having a difficult time selecting between BlogEngine/Wordpress/B2evolution and Drupal.
    The reason I ask is because your design seems different then most blogs and I’m looking for something completely unique.
    P.S Sorry for being off-topic but I had to ask!

  3. Thank you for every other informative website. The place else may I am
    getting that type of info written in such an ideal means?
    I’ve a challenge that I’m simply now running on, and I have been at the look
    out for such info.

  4. You could definitely see your expertise within the article you write.
    The sector hopes for even more passionate writers such as you who aren’t afraid to say
    how they believe. At all times go after your heart.

  5. The other day, while I was at work, my sister stole my iphone and tested
    to see if it can survive a 40 foot drop, just so she can be
    a youtube sensation. My iPad is now broken and she has 83 views.
    I know this is completely off topic but I had to share it with someone!

  6. Yesterday, while I was at work, my sister stole my iPad and tested to see
    if it can survive a forty foot drop, just so she can be a youtube sensation. My iPad is now
    broken and she has 83 views. I know this is totally off topic but I had to share it with someone!

  7. Do you mind if I quote a couple of your articles as long as I provide credit and
    sources back to your weblog? My website is in the very same niche as yours and my visitors would certainly benefit from a lot of the
    information you present here. Please let me know if this ok with
    you. Thanks a lot!

  8. Greate post. Keep writing such kind of info on your site.

    Im really impressed by your site.
    Hello there, You have done a great job. I will definitely digg it and in my view recommend to my friends.

    I’m sure they’ll be benefited from this website.

  9. Hello! Do you know if they make any plugins to help
    with SEO? I’m trying to get my blog to rank for some targeted keywords but I’m not
    seeing very good results. If you know of any please share.
    Appreciate it!

  10. Thanks for ones marvelous posting! I truly enjoyed reading it, you are a great
    author. I will make certain to bookmark your blog and may
    come back in the foreseeable future. I want to encourage continue
    your great job, have a nice afternoon!

  11. Good day! I know this is somewhat off topic but I was wondering which blog platform are you
    using for this website? I’m getting tired of WordPress because I’ve had problems with hackers
    and I’m looking at alternatives for another platform.
    I would be great if you could point me in the direction of a good platform.

  12. Do you have a spam problem on this site; I also am a blogger, and I was wanting to know your situation; many of
    us have created some nice practices and we are looking to exchange methods with
    others, please shoot me an email if interested.

发表评论

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

答案 : *
24 − 4 =


返回顶部