网站服务器安全构建策略基础

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

网站服务器不被攻击是不可能的事,世界上的著作权归作者所有,禁止商业用途转载。转载请注明出处:www.tangshuang.net黑客无时无刻不在惦记着你的服务器,用它来著作权归作者所有,禁止商业用途转载。未经授权,禁止复制转载。转发攻击、作为肉鸡、甚至用来挖比特币。你原创内容,盗版必究。【原创内容,转载请注明出处】或许觉得服务器的安全并没有想的那么严重,【原创不易,请尊重版权】【访问 www.tangshuang.net 获取更多精彩内容】谁会在乎你的小站呢?话虽如此,对于黑客而【作者:唐霜】【关注微信公众号:wwwtangshuangnet】言,只需要用自己的程序自动去扫描完成所有【本文首发于唐霜的博客】【本文首发于唐霜的博客】入侵即可,黑客自己或许都不清楚自己到底入【原创不易,请尊重版权】转载请注明出处:www.tangshuang.net侵了多少台服务器。

【访问 www.tangshuang.n【关注微信公众号:wwwtangshuangnet】【本文首发于唐霜的博客】et 获取更多精彩内容】【本文首发于唐霜的博客】【本文首发于唐霜的博客】转载请注明出处:www.tangshua著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshuang.netng.net

作为网站的创办者,如何连起码的服务器安全【关注微信公众号:wwwtangshuangnet】【本文首发于唐霜的博客】意识都没有,那么当大难来临时,或许只有捶转载请注明出处:www.tangshuang.net【本文首发于唐霜的博客】胸顿足。本文简单的讲一些我所遇到的想到的【访问 www.tangshuang.net 获取更多精彩内容】【版权所有】唐霜 www.tangshuang.net安全策略,以供参考。

【版权所有】唐霜 www.tangshu【未经授权禁止转载】【版权所有,侵权必究】ang.net【未经授权禁止转载】转载请注明出处:www.tangshua未经授权,禁止复制转载。【版权所有,侵权必究】ng.net【原创内容,转载请注明出处】

登陆安全策略

黑客的90%对服务器的攻击,都是通过尝试未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。破解服务器的登陆账号而实现的。由于我们很【原创内容,转载请注明出处】【本文首发于唐霜的博客】多人缺乏经验,所以在购买云服务器之后,往【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。往按照网上的一些教程,搭建起web环境,原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。然后就开始把重点放在web的开发和管理上著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】,而直接无视服务器本身的安全问题。如何换原创内容,盗版必究。【本文首发于唐霜的博客】位思考,你作为黑客,如果想搞一个网站,最【作者:唐霜】【原创不易,请尊重版权】狠的方法是什么?就是获取该网站所在服务器转载请注明出处:www.tangshuang.net原创内容,盗版必究。的登陆账号及密码,登陆之后,把该服务器上本文作者:唐霜,转载请注明出处。【未经授权禁止转载】的网站代码删掉,数据删掉。所以,保护你的【原创内容,转载请注明出处】【版权所有】唐霜 www.tangshuang.net登陆信息至关重要。

【转载请注明来源】【本文受版权保护】

创建非root管理员用户

一个系统中只有一个root,但是其他用户【未经授权禁止转载】【本文受版权保护】却可以随意创建。如果你创建了一个其他用户未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】用来作为管理,而禁用了root,你的系统【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。就会瞬间增加10倍以上的安全系数。因为你转载请注明出处:www.tangshuang.net【本文首发于唐霜的博客】所创建的管理员用户名,黑客就很难猜到。你【转载请注明来源】未经授权,禁止复制转载。可以用你的名字或昵称作为管理员账号,黑客本文作者:唐霜,转载请注明出处。【原创不易,请尊重版权】如何不知道这个账号,就无法登陆到你的服务【版权所有,侵权必究】转载请注明出处:www.tangshuang.net器干坏事了。

【版权所有】唐霜 www.tangshu【原创内容,转载请注明出处】本文作者:唐霜,转载请注明出处。ang.net著作权归作者所有,禁止商业用途转载。

首先,创建非管理员用户及用户组。

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

这样,创建了一个webmaster用户组原创内容,盗版必究。【本文首发于唐霜的博客】,在这个组中,增加了一个administ本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.netrator用户。

转载请注明出处:www.tangshua本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。ng.net【关注微信公众号:wwwtangshua【本文首发于唐霜的博客】转载请注明出处:www.tangshuang.netngnet】

其次,在sshd的配置文件中修改ssh登【关注微信公众号:wwwtangshuangnet】【原创不易,请尊重版权】陆权限。

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

找到PermitRootLogin,将它本文版权归作者所有,未经授权不得转载。原创内容,盗版必究。的值修改为no。这样就禁止了root通过【作者:唐霜】转载请注明出处:www.tangshuang.netssh登陆。但是,我们还要再做一个限制,【本文首发于唐霜的博客】【未经授权禁止转载】就是找到(如果没有,增加一行)Allow原创内容,盗版必究。【本文首发于唐霜的博客】Users,修改为如下:

著作权归作者所有,禁止商业用途转载。【原创不易,请尊重版权】原创内容,盗版必究。
AllowUsers administrator

AllowUsers配置项表示,仅运行后【版权所有】唐霜 www.tangshuang.net【版权所有,侵权必究】面配置的这些用户通过ssh登陆。一旦设置转载请注明出处:www.tangshuang.net【原创不易,请尊重版权】了这个项,其他所有用户都无法通过ssh登原创内容,盗版必究。【访问 www.tangshuang.net 获取更多精彩内容】陆了,这是我们想要的。

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

重启sshd服务(先别慌马上去做,往下面【访问 www.tangshuang.net 获取更多精彩内容】本文版权归作者所有,未经授权不得转载。读完本节再执行重启)。

【本文受版权保护】【版权所有】唐霜 www.tangshu本文版权归作者所有,未经授权不得转载。本文作者:唐霜,转载请注明出处。ang.net
service sshd restart

这样,你的服务器仅允许administr【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】ator登陆了。等一下,是不是漏了什么?本文版权归作者所有,未经授权不得转载。【原创内容,转载请注明出处】我CAO,administrator的密【版权所有】唐霜 www.tangshuang.net【未经授权禁止转载】码没有设置啊!不要慌,sshd重启之后,【关注微信公众号:wwwtangshuangnet】本文版权归作者所有,未经授权不得转载。当前你还是root用户,你还是可以给这个【未经授权禁止转载】【未经授权禁止转载】用户设置密码的。不过接着往下读,你会发现【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net好玩的事。

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

补充:赋予administrator执行本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。sudo的权限

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

如果是裸机,administrator默【原创不易,请尊重版权】未经授权,禁止复制转载。认是没有sudo命令的权限的,需要用ro【本文受版权保护】【关注微信公众号:wwwtangshuangnet】ot用户登录后做如下操作。

著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】
chmod u+w /etc/sudoers
vi /etc/sudoers

找到 root ALL=(ALL) AL【原创不易,请尊重版权】原创内容,盗版必究。L,在他下面添加 administrator ALL=(ALL) ALL,这样就允许了administrator【原创内容,转载请注明出处】【本文受版权保护】可以执行sudo命令了。但是如果你按照上【访问 www.tangshuang.net 获取更多精彩内容】【本文受版权保护】面的方法,不打算为administrat【版权所有】唐霜 www.tangshuang.net【原创不易,请尊重版权】or设置密码,那么需要把这行修改为:

转载请注明出处:www.tangshua转载请注明出处:www.tangshuang.net转载请注明出处:www.tangshuang.netng.net【原创内容,转载请注明出处】
administrator ALL=(ALL) NOPASSWD:ALL

因为我们都很熟悉,一般在第一次执行sud著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】o的时候是必须要输入密码的,而如果我们按【原创内容,转载请注明出处】【原创不易,请尊重版权】照上面的方法,没有设置密码的话,就麻烦了【本文首发于唐霜的博客】著作权归作者所有,禁止商业用途转载。,输入密码的时候你根本没有密码可以输入啊【本文首发于唐霜的博客】【版权所有,侵权必究】,所以这个地方要注意一下。

【访问 www.tangshuang.n著作权归作者所有,禁止商业用途转载。【关注微信公众号:wwwtangshuangnet】et 获取更多精彩内容】本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。

使用SSH密钥登陆

在《使用SSH证书远程登陆你的服务器》一文中,我大致讲到了使用ssh密钥登陆本文版权归作者所有,未经授权不得转载。【转载请注明来源】的过程。不过,本文讲的更简洁好用。前面不【版权所有】唐霜 www.tangshuang.net原创内容,盗版必究。是已经提到了,你没有给administr【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。ator设置密码吗?如果你使用ssh密钥【原创内容,转载请注明出处】【版权所有】唐霜 www.tangshuang.net登陆,就不需要密码了。注意,你当前在服务器上操作的,还是roo【转载请注明来源】【版权所有】唐霜 www.tangshuang.nett用户,千万不要退出来,否则你就悲剧了!读罢上面我提到这篇文章,我想你应该懂了转载请注明出处:www.tangshuang.net【版权所有,侵权必究】了ssh登陆的原理。我们这篇文章就不讲了【版权所有,侵权必究】【本文首发于唐霜的博客】,直接上操作方法。

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

首先,生成ssh密钥对。使用ssh-ke【版权所有】唐霜 www.tangshuang.net本文版权归作者所有,未经授权不得转载。ygen命令即可。如果你本地不是linu【原创内容,转载请注明出处】【原创内容,转载请注明出处】x系统,那么直接在服务器上面操作也行,我【原创不易,请尊重版权】【访问 www.tangshuang.net 获取更多精彩内容】们需要的,是这个密钥对,系统无所谓。

【本文受版权保护】【作者:唐霜】
cd ~
ssh-keygen

接下来会让你输入密码。这一点我在上面那篇转载请注明出处:www.tangshuang.net本文作者:唐霜,转载请注明出处。文章没有讲到。这个密码是用来认证当前密钥【访问 www.tangshuang.net 获取更多精彩内容】【版权所有,侵权必究】是不是你的,是客户端系统干的事情。在详细【版权所有】唐霜 www.tangshuang.net【原创不易,请尊重版权】解释一下:当你准备使用ssh密钥登陆服务【原创不易,请尊重版权】【未经授权禁止转载】器的时候,如果这个密码没有设置,会直接登转载请注明出处:www.tangshuang.net【本文首发于唐霜的博客】陆到服务器上,这样很方便。但是如果一旦你【本文受版权保护】【版权所有,侵权必究】的私钥(本地电脑上的)被盗,那么黑客只需未经授权,禁止复制转载。转载请注明出处:www.tangshuang.net要使用这个私钥,直接就可以连到你的服务器本文作者:唐霜,转载请注明出处。【转载请注明来源】上面。那么怎么办呢?ssh在使用你的私钥转载请注明出处:www.tangshuang.net【原创内容,转载请注明出处】之前,再对你的身份进行验证,也就是对私钥【关注微信公众号:wwwtangshuangnet】【访问 www.tangshuang.net 获取更多精彩内容】再进行加密。一旦加密后,你下次再使用ss【原创内容,转载请注明出处】【版权所有】唐霜 www.tangshuang.neth登陆服务器时,会让你输入你对私钥进行加转载请注明出处:www.tangshuang.net【本文受版权保护】密时的密码,而这个密码验证是在你本地电脑【本文受版权保护】原创内容,盗版必究。上完成的,速度更快,密码也不用在网络上传【访问 www.tangshuang.net 获取更多精彩内容】【原创不易,请尊重版权】播,当然也就更安全。说了这么多,我的目的著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。就是让你设置这个私钥。

【关注微信公众号:wwwtangshua【版权所有】唐霜 www.tangshuang.net【版权所有,侵权必究】ngnet】未经授权,禁止复制转载。

设置好私钥之后,系统会自动创建一个.ss著作权归作者所有,禁止商业用途转载。【转载请注明来源】h目录。

【原创不易,请尊重版权】【原创内容,转载请注明出处】
cd .ssh
ls

可以看到有id_rsa和 id_rsa.原创内容,盗版必究。本文版权归作者所有,未经授权不得转载。pub两个文件,第一个是私钥,第二个是公著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】钥,公钥可以公开给任何人看。如果你是在服【本文受版权保护】著作权归作者所有,禁止商业用途转载。务器上生成的这两个文件,把它们下载下来。【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。如果不知道怎么下载,直接用vi打开它的内【原创内容,转载请注明出处】原创内容,盗版必究。容,在你自己的电脑上建立两个文件名相同的【本文受版权保护】【访问 www.tangshuang.net 获取更多精彩内容】文件,把里面的内容拷贝过来就可以了。一旦本文版权归作者所有,未经授权不得转载。【本文首发于唐霜的博客】得到这两个文件,就在服务器上把它们删掉。

【未经授权禁止转载】本文作者:唐霜,转载请注明出处。【原创不易,请尊重版权】

如果你本地是linux系统,把这两个文件原创内容,盗版必究。本文作者:唐霜,转载请注明出处。放到你当前家目录的.ssh文件夹下面。在著作权归作者所有,禁止商业用途转载。【访问 www.tangshuang.net 获取更多精彩内容】服务器上继续操作。

本文版权归作者所有,未经授权不得转载。【作者:唐霜】

因为你是希望administrator这【版权所有,侵权必究】未经授权,禁止复制转载。个用户登陆上去,所以要把id_rsa.p【版权所有】唐霜 www.tangshuang.net【原创不易,请尊重版权】ub这个文件上传到administrat转载请注明出处:www.tangshuang.net转载请注明出处:www.tangshuang.netor用户的家目录下的认证文件夹中,或者直未经授权,禁止复制转载。【原创不易,请尊重版权】接用vi来创建也可以。

著作权归作者所有,禁止商业用途转载。【原创内容,转载请注明出处】
vi /home/administrator/.ssh/authorized_keys

把id_rsa.pub文件的内容拷贝进去【关注微信公众号:wwwtangshuangnet】【本文受版权保护】,保存退出。

【作者:唐霜】【转载请注明来源】【关注微信公众号:wwwtangshua【访问 www.tangshuang.net 获取更多精彩内容】著作权归作者所有,禁止商业用途转载。ngnet】【未经授权禁止转载】

完成上面的操作之后,你就可以实现:1.禁【转载请注明来源】原创内容,盗版必究。止root通过ssh登陆服务器;2.通过本文版权归作者所有,未经授权不得转载。本文版权归作者所有,未经授权不得转载。ssh密钥以administrator的原创内容,盗版必究。【原创内容,转载请注明出处】身份登陆服务器。在本地测试一下吧:

【作者:唐霜】原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshu本文作者:唐霜,转载请注明出处。【本文首发于唐霜的博客】ang.net
ssh administrator@192.168.1.111

输入刚才给密钥加密时用的密码。看看是否已原创内容,盗版必究。转载请注明出处:www.tangshuang.net经登陆服务器了呢?登陆到服务器上,要善于本文作者:唐霜,转载请注明出处。【版权所有,侵权必究】使用sudo命令哦。你所要保管好的,就是【本文受版权保护】【转载请注明来源】你的私钥,如果你想装逼,用一个只有可读权【原创内容,转载请注明出处】【原创不易,请尊重版权】限的U盘把私钥和公钥装起来,再装一个pu【转载请注明来源】【版权所有】唐霜 www.tangshuang.nettty,走到哪儿都不用怕了,U盘一插,很【原创内容,转载请注明出处】【转载请注明来源】快就能连上服务器。如果你把你的私钥弄丢了本文作者:唐霜,转载请注明出处。原创内容,盗版必究。,那你就完全悲剧了。所以,私钥还是使用多【版权所有】唐霜 www.tangshuang.net转载请注明出处:www.tangshuang.net种比较安全的方式进行备份吧。

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

访问安全策略

除了让黑客猜不到你的管理员登陆信息之外,【访问 www.tangshuang.net 获取更多精彩内容】【关注微信公众号:wwwtangshuangnet】修改你的服务器对外提供访问的端口,也是一未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】个安全策略。而这个安全,需要用到防火墙,【本文首发于唐霜的博客】【作者:唐霜】通过防火墙来控制哪些端口是对外可以访问的原创内容,盗版必究。本文作者:唐霜,转载请注明出处。,哪些端口是仅对局域网可以访问的,哪些端未经授权,禁止复制转载。【本文受版权保护】口是只有本机可以访问的。linux中最常【作者:唐霜】著作权归作者所有,禁止商业用途转载。用的防火墙软件就是iptables,我们转载请注明出处:www.tangshuang.net【转载请注明来源】这里就通过iptables作为防火墙案例【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。进行实操。

【关注微信公众号:wwwtangshua本文作者:唐霜,转载请注明出处。【原创不易,请尊重版权】ngnet】【转载请注明来源】

iptables的配置规则

关于iptables,这里有一篇参考文献,可以去了解。我们这里简单的对iptab【版权所有】唐霜 www.tangshuang.net未经授权,禁止复制转载。les的配置进行介绍,以完成我们本文要实原创内容,盗版必究。本文作者:唐霜,转载请注明出处。现的访问安全控制。

著作权归作者所有,禁止商业用途转载。本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshua【原创不易,请尊重版权】原创内容,盗版必究。ng.net

首先,我们打开iptables的配置文件【本文首发于唐霜的博客】未经授权,禁止复制转载。:vi /etc/sysconfig/i转载请注明出处:www.tangshuang.net【作者:唐霜】ptables,可以先大概了解一些规则的【原创不易,请尊重版权】未经授权,禁止复制转载。格式。

原创内容,盗版必究。【本文首发于唐霜的博客】

我们必须要理解iptables中的一个些【访问 www.tangshuang.net 获取更多精彩内容】【转载请注明来源】概念。一个请求指令(术语称为“数据包”)原创内容,盗版必究。未经授权,禁止复制转载。,从客户端发出,进入服务器,在服务器中流著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。动,再从服务器流出,服务器在接受到这个指原创内容,盗版必究。【未经授权禁止转载】令那一刻开始,就会对它进行监测,并设置了【版权所有,侵权必究】【本文首发于唐霜的博客】几个重要的关卡,在这些关卡(术语称为“链【版权所有】唐霜 www.tangshuang.net著作权归作者所有,禁止商业用途转载。”)上,就可以对该指令进行拦截、放行或修原创内容,盗版必究。【版权所有,侵权必究】改。这些关卡包括(按时间顺序):PRER【转载请注明来源】【原创不易,请尊重版权】OUTING(路由器)、INPUT(进入原创内容,盗版必究。转载请注明出处:www.tangshuang.net)、FORWARD(转发)、OUTPUT【版权所有,侵权必究】未经授权,禁止复制转载。(流出、服务器去访问外网时)、POSTR【本文首发于唐霜的博客】【作者:唐霜】OUTING(路由后、服务器去访问外网时转载请注明出处:www.tangshuang.net【本文首发于唐霜的博客】)。实际上,一个指令流动不一定非得经过这【转载请注明来源】【未经授权禁止转载】些关卡,大部分情况下不需要经过两个路由关本文版权归作者所有,未经授权不得转载。未经授权,禁止复制转载。卡,当我们的服务器作为代理服务器的时候,著作权归作者所有,禁止商业用途转载。转载请注明出处:www.tangshuang.net就会要经过路由关卡来处理数据。

【未经授权禁止转载】转载请注明出处:www.tangshua【转载请注明来源】未经授权,禁止复制转载。ng.net著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。

我们举一个例子来说明一个指令的情况:在自【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。己的电脑上ping服务器和在服务器上pi【作者:唐霜】【作者:唐霜】ng自己的电脑。

【访问 www.tangshuang.n【关注微信公众号:wwwtangshuangnet】【本文受版权保护】et 获取更多精彩内容】著作权归作者所有,禁止商业用途转载。

当我们ping服务器的时候,指令由我们客本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。户端发出,达到服务器的时候,就开始受防火【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。墙监控,我们为了禁止外部用户ping通我【原创内容,转载请注明出处】【作者:唐霜】们的服务器,我们在INPUT这个关卡上增【本文受版权保护】本文版权归作者所有,未经授权不得转载。加一个规则:

著作权归作者所有,禁止商业用途转载。【版权所有,侵权必究】
-A INPUT -p icmp --icmp-type 0 -j ACCEPT
-A OUTPUT -p icmp --icmp-type 8 -j ACCEPT

防火墙规则被保存在几张(四张)表中,其中【本文首发于唐霜的博客】【本文首发于唐霜的博客】我们最常用到的是nat、filter这两本文版权归作者所有,未经授权不得转载。【原创内容,转载请注明出处】张表,在指令到达每一个关卡的时候,防火墙【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。就去从表里面找出该关卡对应的规则序列,从【未经授权禁止转载】【作者:唐霜】上往下执行(也就是说前面的规则优先级更高著作权归作者所有,禁止商业用途转载。【关注微信公众号:wwwtangshuangnet】在满足前面的规则之后,后面的规则才能生效),选择用那张表,用-t tablena【作者:唐霜】著作权归作者所有,禁止商业用途转载。me来确定,例如:

【访问 www.tangshuang.n原创内容,盗版必究。【版权所有】唐霜 www.tangshuang.netet 获取更多精彩内容】【版权所有】唐霜 www.tangshu【访问 www.tangshuang.net 获取更多精彩内容】转载请注明出处:www.tangshuang.netang.net原创内容,盗版必究。
-t filter -A INPUT -p tcp --dport 80 -j ACCEPT

意思就是在filter表中增加一条规则,著作权归作者所有,禁止商业用途转载。【关注微信公众号:wwwtangshuangnet】这条规则作用在INPUT这个关卡上。后面原创内容,盗版必究。【转载请注明来源】蓝色字就是规则的内容。由于防火墙默认使用著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】的是filter表,所以当写防火墙规则的【版权所有】唐霜 www.tangshuang.net【作者:唐霜】时候,如果不存在-t,则默认表示往fil【版权所有】唐霜 www.tangshuang.net本文版权归作者所有,未经授权不得转载。ter这个表增加或删除规则。理解ipta【版权所有,侵权必究】本文作者:唐霜,转载请注明出处。bles,就必须理解这“四表五链”的概念【版权所有】唐霜 www.tangshuang.net未经授权,禁止复制转载。,理解之后,再深入去研究规则即可。

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

关于规则的部分,就不予多阐述,在参考文献【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。中有了比较多的解释。要强调的就是,必须认【本文首发于唐霜的博客】本文作者:唐霜,转载请注明出处。真思考规则的先后顺序,保证这些先后顺序最【转载请注明来源】著作权归作者所有,禁止商业用途转载。终实现的防火墙规则是你想要的结果。

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

参考文献 规则执行顺序

【版权所有】唐霜 www.tangshu【未经授权禁止转载】【转载请注明来源】ang.net【未经授权禁止转载】

控制外网公开访问规则

我们本文的重点是服务器安全,因此,重点还【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】是来讨论防火墙中各个关卡的一些安全性规则【关注微信公众号:wwwtangshuangnet】【关注微信公众号:wwwtangshuangnet】

本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。

首先,一个基本的策略:堵。意思就是,首先【关注微信公众号:wwwtangshuangnet】【版权所有】唐霜 www.tangshuang.net,把所有的关卡堵起来,然后再一个一个的打【访问 www.tangshuang.net 获取更多精彩内容】【原创不易,请尊重版权】开。

著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】【转载请注明来源】【原创内容,转载请注明出处】

就像我上面展示出来的iptables中一本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshuangnet】样,我们仅允许22端口和80端口可以被外本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net部访问。22端口是提供ssh登陆的,80【本文受版权保护】【关注微信公众号:wwwtangshuangnet】端口是提供web访问的。如果你的服务器不转载请注明出处:www.tangshuang.net未经授权,禁止复制转载。需要其他的服务,比如代理、转发,或者对外本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。提供mysql服务或某些图片服务等等,就本文版权归作者所有,未经授权不得转载。【未经授权禁止转载】可以只提供这两个端口可以对外访问。

【原创不易,请尊重版权】【本文首发于唐霜的博客】

为了禁止别人ping通我们的服务器?上面本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.net好像已经给出了规则。把那两条规则加到DR【关注微信公众号:wwwtangshuangnet】著作权归作者所有,禁止商业用途转载。OP前面。

【版权所有】唐霜 www.tangshu【未经授权禁止转载】【本文首发于唐霜的博客】ang.net【原创内容,转载请注明出处】

修改默认端口

通过前文,我们已经欺骗黑客,让他无法得知【版权所有,侵权必究】著作权归作者所有,禁止商业用途转载。我们的服务器的登陆信息。另外,我们还可以【原创内容,转载请注明出处】转载请注明出处:www.tangshuang.net直接隐藏ssh的连接端口,让黑客根本找不【原创内容,转载请注明出处】【本文受版权保护】到我们的服务器如何去连接。

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

找到Port 22,去掉前面的#,把22【版权所有】唐霜 www.tangshuang.net【关注微信公众号:wwwtangshuangnet】改为其他端口,比如1452。再重启ssh著作权归作者所有,禁止商业用途转载。本文作者:唐霜,转载请注明出处。d服务。下次你在连接到服务器的时候,记住【访问 www.tangshuang.net 获取更多精彩内容】【本文首发于唐霜的博客】使用1452端口去连接,而不是原来的22转载请注明出处:www.tangshuang.net【本文首发于唐霜的博客】

【访问 www.tangshuang.n未经授权,禁止复制转载。【作者:唐霜】et 获取更多精彩内容】【版权所有,侵权必究】

最后是我的/etc/sysconfig/转载请注明出处:www.tangshuang.net【原创内容,转载请注明出处】iptables:

【转载请注明来源】原创内容,盗版必究。【版权所有,侵权必究】
# Generated by iptables-save v1.4.7 on Sun Dec 20 16:02:52 2015
*filter:INPUT DROP [0:0]:FORWARD DROP [0:0]
:OUTPUT ACCEPT [55:5672]
-A INPUT -i lo -j ACCEPT
# 允许内部通信,本机访问本机,比如访问localhost
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# 接收到的数据包是本机回应后的,或者由于客户端接收到本机回应产生的新包,也就是说该数据包是服务器认证过的包
-A INPUT -p tcp -m tcp --dport 1452 -j ACCEPT
# 允许1452端口被外网访问,也就是ssh连接,如果你调整了ssh端口,那么这里必须修改,否则你就悲剧了
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
# 允许80端口被外网访问
-A INPUT -s 127.0.0.1/32 -p tcp -m tcp --dport 3306 -j ACCEPT
# 允许3306端口被外网中的某个网段访问,这个外网也包括局域网,凡是非本机的,在这里都称为外网,只有在你希望通过外网使用本服务器的mysql时,才使用该规则,否则,如果在本机使用mysql其实可以不需要,只需要使用localhost作为连接地址即可
-A INPUT -p icmp --icmp-type 0 -j ACCEPT
-A OUTPUT -p icmp --icmp-type 8 -j ACCEPT
# 上面两条ping不通
-A INPUT -j DROP
# 不允许其他访问,由于执行顺序是从上往下的,当上面的规则都不满足时,这一条才会执行
-A FORWARD -j DROP
# 不允许转发
COMMIT
# Completed on Sun Dec 20 16:02:52 2015

权限安全策略

我们在服务器上面运行web环境,主要有n【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】ginx、apache、mysql、ph本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。p、redis、php-fpm等几种常用未经授权,禁止复制转载。【版权所有】唐霜 www.tangshuang.net的环境。但是,如果我们安装这些环境的时候原创内容,盗版必究。【未经授权禁止转载】,没有注意安全性问题,可能直接就用roo原创内容,盗版必究。【原创内容,转载请注明出处】t去运行这些环境软件了,这个后果比较严重著作权归作者所有,禁止商业用途转载。【关注微信公众号:wwwtangshuangnet】,我曾经就因为redis漏洞,导致服务器本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。被黑,有一个木马进程无限制的重生,害得我【版权所有】唐霜 www.tangshuang.net【关注微信公众号:wwwtangshuangnet】只能重装系统。所以,我们尽可能的在权限问【本文首发于唐霜的博客】转载请注明出处:www.tangshuang.net题上事先处理好。

未经授权,禁止复制转载。【版权所有】唐霜 www.tangshu【转载请注明来源】本文作者:唐霜,转载请注明出处。ang.net本文作者:唐霜,转载请注明出处。著作权归作者所有,禁止商业用途转载。

用户和用户组

首先,我们可以大概看下自己服务器上面运行著作权归作者所有,禁止商业用途转载。转载请注明出处:www.tangshuang.net的一些软件哪些是提供给外部使用的,或者通未经授权,禁止复制转载。【版权所有,侵权必究】过外部调用可以在环境内使用的。其次,我们【原创内容,转载请注明出处】【版权所有】唐霜 www.tangshuang.net要为这些软件创建独立的,或者共用权限有限本文版权归作者所有,未经授权不得转载。转载请注明出处:www.tangshuang.net的用户。比如nginx、apache、m【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.netysql都用一个www用户去运行,由于前【版权所有】唐霜 www.tangshuang.net【版权所有,侵权必究】面我们已经只允许administrato本文版权归作者所有,未经授权不得转载。【未经授权禁止转载】r用户通过ssh登陆了,所以这个用户是无【版权所有,侵权必究】转载请注明出处:www.tangshuang.net法登陆的。而且,由于这个用户不是root未经授权,禁止复制转载。原创内容,盗版必究。用户,它无法对自己权限范围内的文件(夹)【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。进行读写操作,比如它无法去修改bin下的原创内容,盗版必究。【本文受版权保护】软件,它也无法在系统核心文件夹中运行一些原创内容,盗版必究。本文作者:唐霜,转载请注明出处。程序。

【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】

在nginx、apache、mysql的本文作者:唐霜,转载请注明出处。【本文首发于唐霜的博客】配置文件中可以对此进行配置。在apach【原创不易,请尊重版权】转载请注明出处:www.tangshuang.nete的配置文件中还可以配置php能够有权限【原创不易,请尊重版权】【版权所有】唐霜 www.tangshuang.net进行读写的目录,除了这些目录,php无法【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。在其他目录中进行读写。这样,即使黑客黑入【访问 www.tangshuang.net 获取更多精彩内容】【原创内容,转载请注明出处】了你的网站系统,也仅仅只能对你的网站程序转载请注明出处:www.tangshuang.net著作权归作者所有,禁止商业用途转载。和数据库做手脚,无法对服务器做坏事。

原创内容,盗版必究。【版权所有】唐霜 www.tangshu【作者:唐霜】【原创不易,请尊重版权】ang.net本文作者:唐霜,转载请注明出处。【版权所有,侵权必究】

文件及文件夹的权限

网站程序仅可以对规定目录中的文件进行读写【转载请注明来源】本文版权归作者所有,未经授权不得转载。。这涉及到两个操作,一个是chown,一转载请注明出处:www.tangshuang.net原创内容,盗版必究。个是chmod。chown让用户对某些文本文版权归作者所有,未经授权不得转载。【原创不易,请尊重版权】件及文件夹有所有权,可以进行读写。chm【原创内容,转载请注明出处】原创内容,盗版必究。od修改文件文件夹的读写和可执行权限,所转载请注明出处:www.tangshuang.net【原创不易,请尊重版权】以一般情况下,网站文件和目录都最好保持7转载请注明出处:www.tangshuang.net本文版权归作者所有,未经授权不得转载。55的权限。

【版权所有】唐霜 www.tangshu【转载请注明来源】【转载请注明来源】ang.net本文版权归作者所有,未经授权不得转载。【转载请注明来源】【访问 www.tangshuang.n【本文首发于唐霜的博客】本文版权归作者所有,未经授权不得转载。et 获取更多精彩内容】

数据库用户权限

mysql的root用户拥有最高权限,可【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。以对数据库随意修改和删除,因此,在网站运【转载请注明来源】【关注微信公众号:wwwtangshuangnet】行上线时,最好创建一个只能对某些数据库有未经授权,禁止复制转载。转载请注明出处:www.tangshuang.net部分权限的数据库用户,这个用户能执行增删【版权所有,侵权必究】【关注微信公众号:wwwtangshuangnet】改查,满足网站数据操作的需要,但是不能对未经授权,禁止复制转载。【版权所有】唐霜 www.tangshuang.net数据库进行管理。这样也可以降低数据库如果转载请注明出处:www.tangshuang.net【版权所有】唐霜 www.tangshuang.net被入侵可能带来的风险。

【本文首发于唐霜的博客】【关注微信公众号:wwwtangshua本文版权归作者所有,未经授权不得转载。【作者:唐霜】ngnet】著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】

结语

总结起来,核心知识点就包括:

本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。【原创不易,请尊重版权】
  • 账号及ssh
  • 原创内容,盗版必究。【作者:唐霜】【未经授权禁止转载】未经授权,禁止复制转载。
  • iptables
  • 【关注微信公众号:wwwtangshua【原创不易,请尊重版权】【本文受版权保护】ngnet】著作权归作者所有,禁止商业用途转载。未经授权,禁止复制转载。【原创内容,转载请注明出处】

写了这么多,归结起来其实就一句话,请诸君【本文首发于唐霜的博客】【访问 www.tangshuang.net 获取更多精彩内容】重视自己的服务器安全。当然,本文仅仅提供【原创内容,转载请注明出处】【转载请注明来源】了比较简单的安全策略,像服务器安全监测这【关注微信公众号:wwwtangshuangnet】【作者:唐霜】些知识,我也未曾接触,还需要在后期学习中未经授权,禁止复制转载。【版权所有】唐霜 www.tangshuang.net不断积累。

未经授权,禁止复制转载。【本文受版权保护】

2016-01-08 7766

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

本文价值77.66RMB