梳理:我是如何开始一个服务器环境的搭建和网站的架设的

广告位招租
扫码页面底部二维码联系

这半年我大部分时间都在和服务器打交道,虽【原创不易,请尊重版权】【版权所有】唐霜 www.tangshuang.net然一直在写代码,但是和linux打交道的本文作者:唐霜,转载请注明出处。【本文受版权保护】次数却不计其数,为了更好的连接到服务器上未经授权,禁止复制转载。【访问 www.tangshuang.net 获取更多精彩内容】面,我甚至现在完全是在ubuntu下面工【关注微信公众号:wwwtangshuangnet】【原创内容,转载请注明出处】作,ubuntu对于我来说,目前最不好的著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。就是没有QQ和一个PS级的图片处理软件,【本文首发于唐霜的博客】【原创不易,请尊重版权】其他方面我可以完全抛开windows甚至【本文首发于唐霜的博客】著作权归作者所有,禁止商业用途转载。比在windows下面效率高很多。话归正著作权归作者所有,禁止商业用途转载。本文作者:唐霜,转载请注明出处。题,由于现在搭建服务器环境已经轻车熟路,【关注微信公众号:wwwtangshuangnet】【作者:唐霜】所以打算写一篇文章,用来梳理如何快速的搭【本文受版权保护】【版权所有】唐霜 www.tangshuang.net建网站服务器环境及代码部署。

【作者:唐霜】【本文首发于唐霜的博客】

购买环节

首先需要购买一台(云)服务器,一个很重要【版权所有,侵权必究】【未经授权禁止转载】的参数是服务器的配置,对于不同的项目,服【本文受版权保护】本文作者:唐霜,转载请注明出处。务器的配置,服务之间的搭配都很重要。我写原创内容,盗版必究。【本文首发于唐霜的博客】过一篇《如何应对服务器压力?服务器横向扩展(加机【作者:唐霜】【版权所有】唐霜 www.tangshuang.net器)策略详谈》用来介绍了在几台服务器搭配使用的情况下著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。的几种架构设计,所以,搭建服务器并非那么转载请注明出处:www.tangshuang.net【版权所有,侵权必究】简单,只需要在一台服务器上面完成所有工作【转载请注明来源】【原创内容,转载请注明出处】。不同的服务器用来完成不同的功能,虽然功原创内容,盗版必究。未经授权,禁止复制转载。能不同,但是我们可以统一把它们成为“服务【访问 www.tangshuang.net 获取更多精彩内容】【本文受版权保护】”,因此,架设服务器也就有套路可循,在知本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。乎上看过一篇文章,专门讨论“套路”,套路【关注微信公众号:wwwtangshuangnet】【版权所有】唐霜 www.tangshuang.net可以帮助我们提高工作效率,降低成本。

转载请注明出处:www.tangshua转载请注明出处:www.tangshuang.net【作者:唐霜】ng.net【版权所有,侵权必究】本文版权归作者所有,未经授权不得转载。

所谓套路,就是不要管任何干扰因素,直接按【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。照套路出牌即可,不管最终是否能成,即使中【版权所有,侵权必究】【未经授权禁止转载】途出现问题,你也可以根据实际情况调整,但【版权所有,侵权必究】【作者:唐霜】是之后你会发现,只要按套路走,每一个开始【作者:唐霜】原创内容,盗版必究。时的出发点总是对的。既然有“套路”,那么本文版权归作者所有,未经授权不得转载。【版权所有,侵权必究】我来谈购买服务器的套路,购买服务器之前,【未经授权禁止转载】【版权所有,侵权必究】你需要先想一下这个问题:你看我这篇文章的本文作者:唐霜,转载请注明出处。【原创不易,请尊重版权】时候,一定是网站还没有的情况下,也就是说本文版权归作者所有,未经授权不得转载。原创内容,盗版必究。网站还在开发,或者刚刚开发完,还在调试环【原创不易,请尊重版权】【版权所有】唐霜 www.tangshuang.net节,对于代码而言,上到服务器上后,仍然需【访问 www.tangshuang.net 获取更多精彩内容】【未经授权禁止转载】要有一段时间的调整和适应,试问,刚刚上线【原创不易,请尊重版权】【本文受版权保护】的网站,能否撑爆一台服务器?既然如此,我本文作者:唐霜,转载请注明出处。著作权归作者所有,禁止商业用途转载。现在给出的套路是:

【转载请注明来源】转载请注明出处:www.tangshua【未经授权禁止转载】转载请注明出处:www.tangshuang.netng.net【转载请注明来源】

购买一台内存为1G的服务器。

【访问 www.tangshuang.n本文版权归作者所有,未经授权不得转载。著作权归作者所有,禁止商业用途转载。et 获取更多精彩内容】【转载请注明来源】【版权所有,侵权必究】

LNMPA环境的搭建

有了服务器(裸机),现在就是网站运行环境【原创内容,转载请注明出处】【本文受版权保护】的搭建,我推荐使用nginx + apa【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】che的架构,有两个原因:1. 性能上O未经授权,禁止复制转载。著作权归作者所有,禁止商业用途转载。K;2. 对重写支持很赞。那么怎么搭建呢著作权归作者所有,禁止商业用途转载。【关注微信公众号:wwwtangshuangnet】?我推荐使用lnmp.org提供的lnm未经授权,禁止复制转载。著作权归作者所有,禁止商业用途转载。p一键安装包。

本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。

LNMPA一键安装

使用lnmp一键安装包安装非常方便,甚至未经授权,禁止复制转载。【转载请注明来源】可以无人坚守,执行一个命令后,去看看电影著作权归作者所有,禁止商业用途转载。【原创内容,转载请注明出处】,电影回来可能就已经安装好了。你不需要去本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。lnmp.org网站上去下载,按照我下方本文版权归作者所有,未经授权不得转载。未经授权,禁止复制转载。的命令行操作即可:

著作权归作者所有,禁止商业用途转载。【访问 www.tangshuang.n转载请注明出处:www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】et 获取更多精彩内容】转载请注明出处:www.tangshua【本文受版权保护】【原创内容,转载请注明出处】ng.net【原创内容,转载请注明出处】
yum install screenscreen -S lnmpwget -c http://soft.vpser.net/lnmp/lnmp1.3beta-full.tar.gz && tar zxf lnmp1.3beta-full.tar.gz && cd lnmp1.3-full && ./install.sh lnmpa

注意,最后一个单词是lnmpa。执行完毕本文版权归作者所有,未经授权不得转载。【转载请注明来源】之后,就会进入安装的配置选择界面,其中m【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。ysql一定要选择5.5版本,高的版本是【转载请注明来源】【版权所有】唐霜 www.tangshuang.net安装不上的,其他软件就无所谓了。这个配置【未经授权禁止转载】原创内容,盗版必究。过程没什么好说的,配置好之后进入自动安装未经授权,禁止复制转载。转载请注明出处:www.tangshuang.net吧。去喝杯咖啡,看场片,回来看看,是否已转载请注明出处:www.tangshuang.net【原创内容,转载请注明出处】经安装成功了?如果都OK了,那么进入下一【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。步吧。

未经授权,禁止复制转载。本文作者:唐霜,转载请注明出处。【本文受版权保护】

升级软件

上面我们已经说到了,mysql只能选择5【未经授权禁止转载】未经授权,禁止复制转载。.5版本的,但是现在mysql都已经5.本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.net7版本了,所以我们要做件事——升级。你可原创内容,盗版必究。原创内容,盗版必究。能会问,为什么不在安装的时候直接安装最新【访问 www.tangshuang.net 获取更多精彩内容】【原创不易,请尊重版权】版本呢?你可以自己试试,由于服务器内存是【版权所有,侵权必究】【本文受版权保护】1G,所以高版本是安装不上的,但是问题是【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。,我们使用lnmp一键安装包里面的升级脚原创内容,盗版必究。【转载请注明来源】本,却可以升级,所以我们要把mysql,原创内容,盗版必究。转载请注明出处:www.tangshuang.net apache, nginx, php都【本文受版权保护】【未经授权禁止转载】升级到最新版本。由于升级是一样的,所以下转载请注明出处:www.tangshuang.net著作权归作者所有,禁止商业用途转载。面我用升级php做演示:

著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。
./upgrade phpa

执行后,会进入升级的界面,它会提示你一个原创内容,盗版必究。【原创不易,请尊重版权】网址,进入这个网址,找到php的最新版本【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net,把版本号(7.0.3)拷贝过来,输入,【作者:唐霜】【作者:唐霜】回车,然后开始升级,直到升级过程自动完成【关注微信公众号:wwwtangshuangnet】未经授权,禁止复制转载。

【版权所有】唐霜 www.tangshu本文版权归作者所有,未经授权不得转载。未经授权,禁止复制转载。ang.net【版权所有】唐霜 www.tangshu【访问 www.tangshuang.net 获取更多精彩内容】著作权归作者所有,禁止商业用途转载。ang.net

你可能会问,为什么是phpa呢?因为我们【访问 www.tangshuang.net 获取更多精彩内容】【关注微信公众号:wwwtangshuangnet】使用的是lnmpa环境,为了区分lnmp【版权所有,侵权必究】【转载请注明来源】环境(php的调用运行方式不同),所以升【本文受版权保护】【未经授权禁止转载】级的时候要使用phpa作为升级php的标本文版权归作者所有,未经授权不得转载。【原创不易,请尊重版权】识。升级其他软件其实是一样的,mysql【原创内容,转载请注明出处】未经授权,禁止复制转载。升级的时候,要求你输入root用户的密码【版权所有,侵权必究】【版权所有,侵权必究】,其他的升级过程几乎都是全自动的。

【关注微信公众号:wwwtangshua【原创不易,请尊重版权】【本文受版权保护】ngnet】【本文首发于唐霜的博客】【作者:唐霜】

安装缓存扩展

一般的,网站会启用一项缓存服务,而且各个【版权所有,侵权必究】本文版权归作者所有,未经授权不得转载。缓存服务之间往往只选择一种。由于php7著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】自带了opcache,所以我们这里安装的【原创不易,请尊重版权】本文版权归作者所有,未经授权不得转载。缓存是memcache数据库。lnmp一【转载请注明来源】【转载请注明来源】键安装包提供了一个扩展安装脚本,执行如下【转载请注明来源】【本文受版权保护】命令:

转载请注明出处:www.tangshua【原创不易,请尊重版权】本文版权归作者所有,未经授权不得转载。ng.net转载请注明出处:www.tangshua本文版权归作者所有,未经授权不得转载。【本文首发于唐霜的博客】ng.net转载请注明出处:www.tangshua转载请注明出处:www.tangshuang.net【转载请注明来源】ng.net【关注微信公众号:wwwtangshua【转载请注明来源】【关注微信公众号:wwwtangshuangnet】ngnet】
./addons.sh

就可以看到哪些缓存服务,输入memcac本文版权归作者所有,未经授权不得转载。【版权所有】唐霜 www.tangshuang.nethe前面的数字,回车即可。在弹出了新提示著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】中,会让你选择安装memcache的哪一转载请注明出处:www.tangshuang.net【作者:唐霜】个服务,我们一般使用的是php-memc【版权所有】唐霜 www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】ache,注意末尾是没有d的那一项。之后【原创内容,转载请注明出处】本文版权归作者所有,未经授权不得转载。回车,即可自动完成安装。

【关注微信公众号:wwwtangshua【原创不易,请尊重版权】【原创内容,转载请注明出处】ngnet】【关注微信公众号:wwwtangshua【访问 www.tangshuang.net 获取更多精彩内容】本文作者:唐霜,转载请注明出处。ngnet】未经授权,禁止复制转载。

创建虚拟主机和绑定域名

lnmp安装好之后,可以使用一个lnmp原创内容,盗版必究。本文作者:唐霜,转载请注明出处。命令进行一些管理,你可以使用lnmp &【关注微信公众号:wwwtangshuangnet】【访问 www.tangshuang.net 获取更多精彩内容】#8211;help来看有哪些命令。现在【版权所有,侵权必究】【版权所有,侵权必究】,我们来创建一个虚拟主机:

著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】
lnmp vhost add

执行之后,会让你进行选择和输入。输入域名本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.net的地方要注意,你打算绑定哪个域名,就输入【未经授权禁止转载】【作者:唐霜】哪个域名,如果这个虚拟主机有多个域名可以【版权所有】唐霜 www.tangshuang.net本文版权归作者所有,未经授权不得转载。访问,可以在输入之后弹出来的新提示中加入【版权所有】唐霜 www.tangshuang.net转载请注明出处:www.tangshuang.net更多域名。把该填写的信息都填写好之后,就【转载请注明来源】【转载请注明来源】可以回车创建了。

【原创内容,转载请注明出处】【转载请注明来源】【关注微信公众号:wwwtangshua未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。ngnet】【版权所有】唐霜 www.tangshu本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。ang.net
cd /home/wwwroot

可以看到该网站的目录,进入到这个目录,创【版权所有,侵权必究】著作权归作者所有,禁止商业用途转载。建一个index.php,然后将你的域名本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。解析到你的服务器IP地址上,访问域名试试【版权所有】唐霜 www.tangshuang.net著作权归作者所有,禁止商业用途转载。看,是否可以显示index.php中写入【作者:唐霜】【访问 www.tangshuang.net 获取更多精彩内容】的内容了?

原创内容,盗版必究。【原创内容,转载请注明出处】【原创不易,请尊重版权】

你可以多操作几次,熟悉之后,对你今后的使未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。用有帮助。

本文作者:唐霜,转载请注明出处。【原创内容,转载请注明出处】

lnmp路径问题

和使用yum安装不同,lnmp一键安装包【未经授权禁止转载】原创内容,盗版必究。为了方便管理,将所有的软件统一安装在/u【原创不易,请尊重版权】【转载请注明来源】sr/local目录中,下面是所有的有关【本文受版权保护】【未经授权禁止转载】路径:

【关注微信公众号:wwwtangshua【作者:唐霜】【版权所有,侵权必究】ngnet】【本文首发于唐霜的博客】著作权归作者所有,禁止商业用途转载。本文作者:唐霜,转载请注明出处。

/usr/local/apache   【本文首发于唐霜的博客】原创内容,盗版必究。 # apache的软件安装路径,配置文【原创不易,请尊重版权】【转载请注明来源】件在它的conf目录中

原创内容,盗版必究。未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。未经授权,禁止复制转载。

/etc/init.d/httpd   【本文首发于唐霜的博客】【版权所有】唐霜 www.tangshuang.net   # httpd服务脚本,使用ser【作者:唐霜】【作者:唐霜】vice httpd start|sto【关注微信公众号:wwwtangshuangnet】【关注微信公众号:wwwtangshuangnet】p|restart

本文作者:唐霜,转载请注明出处。著作权归作者所有,禁止商业用途转载。

/usr/local/mysql    【原创不易,请尊重版权】未经授权,禁止复制转载。  # mysql的安装路径,数据在da【未经授权禁止转载】【本文首发于唐霜的博客】ta目录中

原创内容,盗版必究。转载请注明出处:www.tangshua未经授权,禁止复制转载。【本文首发于唐霜的博客】ng.net

/etc/init.d/mysql   【作者:唐霜】【转载请注明来源】  # mysql服务脚本,使用serv本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.netice mysql start|stop【访问 www.tangshuang.net 获取更多精彩内容】本文作者:唐霜,转载请注明出处。|restart

【版权所有】唐霜 www.tangshu【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。ang.net【访问 www.tangshuang.n本文作者:唐霜,转载请注明出处。【作者:唐霜】et 获取更多精彩内容】本文版权归作者所有,未经授权不得转载。

/etc/my.cnf         原创内容,盗版必究。原创内容,盗版必究。     # mysql配置文件

【作者:唐霜】【未经授权禁止转载】

/usr/local/php      【版权所有,侵权必究】著作权归作者所有,禁止商业用途转载。   # php安装路径,配置文件在它下【版权所有,侵权必究】【原创不易,请尊重版权】面的etc目录中

未经授权,禁止复制转载。本文作者:唐霜,转载请注明出处。

/usr/local/memcache 【未经授权禁止转载】本文作者:唐霜,转载请注明出处。    # memcahce安装路径

【版权所有,侵权必究】本文作者:唐霜,转载请注明出处。

/etc/init.d/memcache【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。d  # memcache服务脚本

【原创不易,请尊重版权】【原创不易,请尊重版权】本文版权归作者所有,未经授权不得转载。

/home/wwwroot    # 网【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。站默认根目录,所有网站的目录都放在这个目本文版权归作者所有,未经授权不得转载。【转载请注明来源】录中

本文作者:唐霜,转载请注明出处。【未经授权禁止转载】【本文受版权保护】【原创内容,转载请注明出处】

/home/wwwlogs    # 网【作者:唐霜】【转载请注明来源】站运行日志目录

【转载请注明来源】【原创内容,转载请注明出处】【本文受版权保护】
转载请注明出处:www.tangshua【版权所有】唐霜 www.tangshuang.net【作者:唐霜】ng.net【原创内容,转载请注明出处】

上面就是我们所安装的所有软件的路径,删除【版权所有,侵权必究】【版权所有,侵权必究】软件的方法很简单,先使用service 【原创内容,转载请注明出处】【访问 www.tangshuang.net 获取更多精彩内容】stop把服务停掉,然后把上面这些路径对【转载请注明来源】【版权所有,侵权必究】应的软件全部删掉,即可。如果我们哪一天需未经授权,禁止复制转载。【本文首发于唐霜的博客】要增加服务器,把服务转移到新的服务器上面【版权所有,侵权必究】【本文首发于唐霜的博客】去怎么办?我写过一篇《Mariadb数据库搬家(文件转移)》的文章,告诉你其实对于软件和数据而言,【版权所有】唐霜 www.tangshuang.net【原创不易,请尊重版权】只需要转移文件即可,但是也不尽然,因为软【本文受版权保护】本文作者:唐霜,转载请注明出处。件的运行需要依赖于其他软件,所以一般而言本文作者:唐霜,转载请注明出处。【版权所有,侵权必究】,如果我们要转移软件,则第一步是在新的服原创内容,盗版必究。未经授权,禁止复制转载。务器上面再次使用lnmp一键安装包进行一【未经授权禁止转载】【本文受版权保护】次安装,这样可以解决所有软件依赖问题,然【本文首发于唐霜的博客】本文版权归作者所有,未经授权不得转载。后在新的服务器上面停掉所有服务,并全部删【原创内容,转载请注明出处】转载请注明出处:www.tangshuang.net掉,然后把老的服务器上的要转移服务停掉,本文版权归作者所有,未经授权不得转载。转载请注明出处:www.tangshuang.net通过scp的方法,转移文件,最后把老服务【访问 www.tangshuang.net 获取更多精彩内容】【版权所有,侵权必究】器上的文件删掉。这样新老服务器的服务就分未经授权,禁止复制转载。未经授权,禁止复制转载。开了。

著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。

至此,我们的服务器环境已经搭建好了,网站未经授权,禁止复制转载。著作权归作者所有,禁止商业用途转载。也可以运行了,如果遇到问题,多练习几遍。

【作者:唐霜】【版权所有】唐霜 www.tangshu本文版权归作者所有,未经授权不得转载。【版权所有,侵权必究】ang.net著作权归作者所有,禁止商业用途转载。

补充:在开始运行网站之前,还有一个建议,著作权归作者所有,禁止商业用途转载。本文作者:唐霜,转载请注明出处。就是阅读一下《在开始之前就最小化你的MySQL》,如果你也和我一样,是为小型网站准备,著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。就可以尝试这种方法,如果是土豪用户,则可【未经授权禁止转载】本文作者:唐霜,转载请注明出处。以忽略。

【原创内容,转载请注明出处】【转载请注明来源】转载请注明出处:www.tangshua未经授权,禁止复制转载。【访问 www.tangshuang.net 获取更多精彩内容】ng.net著作权归作者所有,禁止商业用途转载。

服务器安全

服务器环境已经OK了,可是服务器的安全可著作权归作者所有,禁止商业用途转载。【原创不易,请尊重版权】不容小觑。我之前专门写过一篇《网站服务器安全构建策略基础》,比较详细,但是不利于实践,现在一步一本文作者:唐霜,转载请注明出处。【本文首发于唐霜的博客】步教你怎么完成基本的服务器安全维护。

著作权归作者所有,禁止商业用途转载。【本文受版权保护】

使用非root用户在服务器上操作

root用户的权限实在太高了,一个不小小【原创不易,请尊重版权】【访问 www.tangshuang.net 获取更多精彩内容】,可以把整个服务器删除掉,比如来一个rm -rf / ,那你的内心一定是崩溃的。所以,我们需本文版权归作者所有,未经授权不得转载。【未经授权禁止转载】要创建一个新的用户来作为服务器的管理者,原创内容,盗版必究。本文版权归作者所有,未经授权不得转载。在管理的时候使用sudo来进行操作。

本文作者:唐霜,转载请注明出处。【原创不易,请尊重版权】未经授权,禁止复制转载。
useradd -g www admin # 创建一个admin用户到www组中,www组是apache的运行用户组,后面我们会发现有必要这样做
passwd admin # 为admin设置密码,下面我们会禁用密码登陆,但是在sudo的时候,需要admin输入密码
chmod u+w /etc/sudoers 
vi /etc/sudoers

这个操作是为了让admin用户可以使用s【作者:唐霜】著作权归作者所有,禁止商业用途转载。udo命令,默认情况下linux是不允许【访问 www.tangshuang.net 获取更多精彩内容】【原创不易,请尊重版权】其他用户使用sudo命令的。在/etc/转载请注明出处:www.tangshuang.net本文版权归作者所有,未经授权不得转载。sudoers文件中,找到root ALL=(ALL) ALL,在它的下一行写上

【转载请注明来源】著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。

admin ALL=(ALL) ALL

著作权归作者所有,禁止商业用途转载。【原创内容,转载请注明出处】
本文作者:唐霜,转载请注明出处。原创内容,盗版必究。原创内容,盗版必究。本文版权归作者所有,未经授权不得转载。

OK,这样在以后使用admin登陆之后,本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。就可以使用sudo来操作一些root权限本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshuangnet】的命令了。

【本文受版权保护】转载请注明出处:www.tangshua【版权所有】唐霜 www.tangshuang.net未经授权,禁止复制转载。ng.net本文作者:唐霜,转载请注明出处。

使用SSH密钥登陆

使用SSH密钥登陆会安全很多,因为密钥是【转载请注明来源】著作权归作者所有,禁止商业用途转载。经过加密的,黑客很难破解,除非他可以黑入未经授权,禁止复制转载。转载请注明出处:www.tangshuang.net你的办公电脑,偷走你的密钥文件,并且可以【未经授权禁止转载】【访问 www.tangshuang.net 获取更多精彩内容】拿到你的密钥口令(这种情况几乎不可能)。

【原创内容,转载请注明出处】未经授权,禁止复制转载。
mkdir /home/admin/.ssh
vi /home/admin/.ssh/authorized_keys

这个地方你需要阅读一下上面我提到的那篇关本文作者:唐霜,转载请注明出处。【版权所有,侵权必究】于服务器安全策略的文章,了解这里使用ss本文作者:唐霜,转载请注明出处。原创内容,盗版必究。h登陆的实施过程。把你的pub key拷【原创内容,转载请注明出处】转载请注明出处:www.tangshuang.net贝到authorized_keys中,这未经授权,禁止复制转载。【转载请注明来源】样就可以使用ssh密钥登陆了。

【未经授权禁止转载】原创内容,盗版必究。【作者:唐霜】

为了安全,请为你的ssh密钥设置口令。

本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshua【本文首发于唐霜的博客】【原创不易,请尊重版权】ng.net【原创内容,转载请注明出处】

修改SSHD权限相关配置

我们希望服务器仅允许admin可以登陆,【作者:唐霜】本文作者:唐霜,转载请注明出处。而且登陆的时候必须使用ssh密钥登陆,而【原创内容,转载请注明出处】【未经授权禁止转载】不能使用密码登陆,我们需要修改sshd的【版权所有】唐霜 www.tangshuang.net【转载请注明来源】配置文件:

【原创不易,请尊重版权】【转载请注明来源】
vi /etc/ssh/sshd_config

这个就是sshd的配置文件了,我们要修改本文版权归作者所有,未经授权不得转载。原创内容,盗版必究。4个地方:

【未经授权禁止转载】【本文首发于唐霜的博客】【原创内容,转载请注明出处】
  1. port 2020 # 取消port前面转载请注明出处:www.tangshuang.net原创内容,盗版必究。的注释符号,并修改端口值
  2. 【版权所有,侵权必究】【版权所有】唐霜 www.tangshu未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。ang.net【版权所有】唐霜 www.tangshu著作权归作者所有,禁止商业用途转载。【作者:唐霜】ang.net
  3. PasswordAuthenticati【访问 www.tangshuang.net 获取更多精彩内容】【版权所有】唐霜 www.tangshuang.neton no # 这一行让登陆服务器时不能【原创内容,转载请注明出处】【版权所有】唐霜 www.tangshuang.net使用密码登陆
  4. 【版权所有,侵权必究】【关注微信公众号:wwwtangshua著作权归作者所有,禁止商业用途转载。【版权所有,侵权必究】ngnet】
  5. PermitRootLogin no #著作权归作者所有,禁止商业用途转载。【原创内容,转载请注明出处】 不允许root登陆
  6. 【本文首发于唐霜的博客】转载请注明出处:www.tangshua本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshuangnet】ng.net
  7. AllowUsers admin # 仅本文作者:唐霜,转载请注明出处。原创内容,盗版必究。允许这些用户登陆,由于我们只设置了adm【版权所有】唐霜 www.tangshuang.net【作者:唐霜】in,所以只有admin可以登陆
  8. 【本文首发于唐霜的博客】【关注微信公众号:wwwtangshua【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。ngnet】【关注微信公众号:wwwtangshua【原创不易,请尊重版权】【关注微信公众号:wwwtangshuangnet】ngnet】

以上这几条配置如果没有找到的话,可以自己【作者:唐霜】【未经授权禁止转载】另起一行自己添加进去。完成后保存,执行:

原创内容,盗版必究。【转载请注明来源】【原创不易,请尊重版权】【原创不易,请尊重版权】
service sshd restart

这个时候已经生效了,这个时候你要注意,如【本文受版权保护】【原创内容,转载请注明出处】果你的root用户退出,则再也登陆不进去转载请注明出处:www.tangshuang.net【关注微信公众号:wwwtangshuangnet】了,所以如果有需要修改的,即使更改,一旦【版权所有】唐霜 www.tangshuang.net【版权所有,侵权必究】退出,只能使用admin登陆了。

【关注微信公众号:wwwtangshua【原创不易,请尊重版权】【原创内容,转载请注明出处】ngnet】【未经授权禁止转载】原创内容,盗版必究。【未经授权禁止转载】

现在回到你自己的电脑(linux,ubu【作者:唐霜】本文版权归作者所有,未经授权不得转载。ntu,mac osx)上,使用下面的命【版权所有,侵权必究】本文版权归作者所有,未经授权不得转载。令连接到服务器:

著作权归作者所有,禁止商业用途转载。【作者:唐霜】本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。
ssh admin@192.168.3.45 -p 2020

最好在root用户退出之前先试下是否可以【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net登陆,登陆之后用sudo命令操作一下试试转载请注明出处:www.tangshuang.net本文作者:唐霜,转载请注明出处。是否可行。这里最好还暂时不要推出root【未经授权禁止转载】【本文受版权保护】,继续往下看。

【作者:唐霜】转载请注明出处:www.tangshua【关注微信公众号:wwwtangshuangnet】【关注微信公众号:wwwtangshuangnet】ng.net著作权归作者所有,禁止商业用途转载。

配置iptables防火墙

iptables防火墙是我们在linux【关注微信公众号:wwwtangshuangnet】【原创不易,请尊重版权】服务器上最常用的,我写过一篇文章《iptables入门:规则及路由基础》来谈iptables的一些基本的概念和未经授权,禁止复制转载。本文作者:唐霜,转载请注明出处。规则撰写。下面我们就直接给出规则文件吧。

未经授权,禁止复制转载。【原创不易,请尊重版权】
vi /etc/sysconfig/iptables

打开iptables的链表规则文件,修改【转载请注明来源】未经授权,禁止复制转载。为下面的规则:

【未经授权禁止转载】著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。
*filter:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1:140]
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 2020 -j ACCEPT # 允许ssh连接到服务器
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT # 允许http访问
-A INPUT -p icmp -m icmp --icmp-type 0 -j ACCEPT # 允许服务器对外ping得到结果
-A INPUT -j DROP # 除了ssh、http以外,其他所有接口都无法访问服务器了,包括ping服务器,如果后期你还要使用https的话,在上面的80端口后面需要再加上443端口
-A FORWARD -j DROPCOMMIT

上面就是我所设计的最基本的iptable【未经授权禁止转载】【本文受版权保护】s规则,它可以防止外部使用mysql、m未经授权,禁止复制转载。【转载请注明来源】emcache等服务,然后执行:

【版权所有,侵权必究】著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshu本文版权归作者所有,未经授权不得转载。转载请注明出处:www.tangshuang.netang.net
service iptables restart

这个时候,回到你自己电脑上,通过ping【本文受版权保护】著作权归作者所有,禁止商业用途转载。服务器,ssh连接到服务器,http访问【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。服务器(phpmyadmin)试试看是否【本文首发于唐霜的博客】【原创内容,转载请注明出处】已经运行了防火墙规则,一般情况下,ssh【原创不易,请尊重版权】转载请注明出处:www.tangshuang.net能连上,ping不通,就说明已经起作用了【本文受版权保护】本文版权归作者所有,未经授权不得转载。

【版权所有】唐霜 www.tangshu【版权所有】唐霜 www.tangshuang.net【转载请注明来源】ang.net【作者:唐霜】本文作者:唐霜,转载请注明出处。

OK,到这里,服务器运行环境的搭建就搞定著作权归作者所有,禁止商业用途转载。未经授权,禁止复制转载。了,接下来就是部署你的网站了。这个地方有【原创不易,请尊重版权】原创内容,盗版必究。一个点要注意,前面我们说过,admin用【版权所有,侵权必究】著作权归作者所有,禁止商业用途转载。户是放在www用户组里面的,为什么?因为未经授权,禁止复制转载。未经授权,禁止复制转载。我们不打算使用ftp,而是使用admin原创内容,盗版必究。【版权所有】唐霜 www.tangshuang.net用户,通过sftp连接到服务器上面上传网著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。站文件,所以,只有当我们在服务器上规定网【本文首发于唐霜的博客】【版权所有】唐霜 www.tangshuang.net站文件为77x权限时,admin用户才能【关注微信公众号:wwwtangshuangnet】【关注微信公众号:wwwtangshuangnet】操作文件,否则admin是没有文件权限的【未经授权禁止转载】【原创内容,转载请注明出处】,其实这样,我们又增加了一层安全防护。

本文版权归作者所有,未经授权不得转载。【原创不易,请尊重版权】

2016-02-20 15038

为价值买单,打赏一杯咖啡

本文价值150.38RMB
已有2条评论
  1. alex 2017-11-02 00:07

    博主,谢谢你的分享,另外命令./updrade phpa 是不是应该为./upgrade.sh phpa?

    • 否子戈 2017-11-04 16:05

      是的,谢谢提醒