Loading...

iptables屏蔽各国IP脚本下载

Filed under: 网站技术,虚拟主机 — 江东 @ 2013-05-15 19:30:50 才(5)条评论

由于现在成千上万的肉鸡对wordpress进行疯狂的攻击,所以部署一个防火墙很重要。

经过对homezz cdn日志分析,我发现主要的攻击IP都是 俄罗斯,土耳其,还有中国的福建莆田(个人的发现结果,请禁止任何地域攻击)

所以,经过搜索,我整理一个屏蔽俄罗斯和土耳其IP的脚本,供各位下载使用。

运行方式很简单,下载下来,bash b.sh即可。

要清楚也简单 iptables -F; iptables -X

 

共享主机被为啥难以定位被ddos的网站

Filed under: 网站技术 — 江东 @ 2012-04-03 19:30:30 才(7)条评论

最近,有一个用户被ddos,经常导致同IP的其他用户遭殃。

于是有人就说了,你技术太不过关了,不能排查么?不能看日志么?不能根据流量来看么?

好吧,我来通俗的讲解一下ddos为啥难以排查(比喻不是很恰当,懒得去想更恰当的比喻了)。

超市就是一个服务器,超市里面的东西就是用户的网站, 超市里面有暴利的灰色行业的物品,我们暂且假设是成人用品。

正常的时候,外面的人来超市买东西,是很容易的。

由于其他超市也卖这种暴利的成人用品,竞争对手觉得本超市卖便宜了,或者干脆不希望这个超市的成人用品能卖出去,于是就雇佣了一大帮人(肉鸡),去这个超市来逛逛。这些人的衣着打扮和普通购物的一模一样,行为也一样。

于是超市入口的走廊都被堵死了。

保安怎么办?报警?大家都是来买东西的,怎么报警?增大超市门?你增大的速度有人数增加的速度快么?当然,还是有办法的,那就是真的报警,网站被DDoS的时候报警,这个时候警察会抓住一大批人(肉鸡),问是谁派他们来的,找到后面的肉鸡指挥者,从而将发动ddos的人绳之于法,但是你认为我朝警察会管这些么?

排除是什么原因导致超市人流量多,拥堵,你问这些人来干嘛,这些人要么不会告诉你,要么告诉你他是来买东西的,多部分人发现超市走道堵死了,就走了,下一批又来了,而下一批你也无法知道谁是真正买东西的,谁是假的(肉鸡)。

排除产品问题(找哪个网站导致ddos)?发现哪个产品前的人突然增加,比如成人用品?就把成人用品下架?

可是问题是,人太多,都堵在了门口,根本还没有走到产品那边,直接通道就堵死了。

怎么解决,增加询问机制,问来的人是干嘛的(防火墙,比如我们现在购买的防DDoS的服务),如果人太多,这也是不行。

唯一的办法:关门(拔掉网线)

或者竞争对手主动告知,请下架某产品,否则我们会继续攻击?! (攻击方通知我们关闭某个网站,否则继续攻击)

要么猜测是哪个商品导致(我们猜测是哪个共享用户导致)。

所以,在阅读了上面的内容之后,您还继续责怪服务器技术不到家,连谁被ddos都排查不出来,那我无话可说了?

一言蔽之,ddos的时候,都堵在了水管上,要判断好难的。

今后我们只有努力增加IP,让同IP上的用户更少,这样才能更好的排除。

利用rsync在两台服务器之间定期同步数据

Filed under: 网站技术,虚拟主机 — 江东 @ 2012-04-03 11:27:25 才(4)条评论

首先,在两台服务器A和B同时装上rsync。

centos:yum install rsync -y

debian:apt-get install rsync -y

这里我们假设B是备份服务器,A上所有的改动都同步到B上去.

在A上输入 ssh-keygen。命令(一路回车):

ssh-keygen

输入ssh-keygen将会显示如下结果

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
d7:15:ad:ff:37:99:4b:c8:01:20:b2:8b:1a:2b:2d:1f root@030.homezz.com
The key’s randomart image is:
+–[ RSA 2048]—-+
| . . . .. |
| o . . ..|
| . . .. |
| . . …. |
| . . . S . .. . |
| .+ . . o .|
|ooE o .+|
|.o . .+o|
| . .+|
+—————–+

我们将创建好的公钥上传到B服务器,命令如下

scp /root/.ssh/id_rsa.pub root@B的ip:/root/.ssh/_pub

提示的时候输入密码,该文件即上传到了B服务器。

ssh登陆到B服务器,运行命令 cat /root/.ssh/_pub>>/root/.ssh/authorized_keys

在B服务器中,打开ssh配置文件 vim /etc/ssh/sshd_config,删除 #PubkeyAuthentication yes 这行前面的#

重启sshd: service sshd restart

现在,从A服务器 ssh root@Bip 看看是否可以无密码登陆了?如果上面步骤无误的话,是肯定可以无密码登陆了

 

现在在A服务器上开始运行rsync做一次数据同步

/usr/bin/rsync   -rvuog   /www/*  root@B的ip:/www/

这样就会将A /www/  下的所有文件,同步到B服务器的/www/下,第一次运行时间会很久。如果A上有文件不存在了,你同步的时候也需要B服务器上的文件也同时删除掉,那么参数添加一个 –delete

/usr/bin/rsync   -rvuog    –delete  /www/*  root@B的ip:/www/

第一次同步完毕之后,在A服务器上创建一个cronjob,定期执行同步。

命令为crontab -e,

然后输入

0 */12 * * * /usr/bin/rsync   -rvuog  –delete /www/  root@B的ip:/backup/file.homezz.com/ >/dev/null 2>&1

表示12小时同步一次。

注意,若你数据量过大,不建议同步周期太频繁,否则会导致不可预料的错误。个人觉得12小时或者6小时比较合适

homezz加速的原理和优点

Filed under: 互联网事 — 江东 @ 2012-03-09 17:02:00 才(18)条评论

大致描述一下homezz加速原理。

下面这幅图是常规的主机构架。

服务器的ip直接和访客相关

下面这幅图是homezz虚拟主机的构架。服务器只对网站维护人员开放。web前端专门用加速服务器来完成。这也是专业的大型网站的最基本的架构。

下面是一张对应表,比较二者之间的优势劣势

项目 常规主机 Homezz主机
自助改变服务器保持IP不变 ×
自助改变前端IP保持服务器不变 ×
随时改变网站前端机房以适应国内网络线路调整 ×
后端前端IP一样 ×
cpanel操作 简单 较简单
可以host DNS 暂不可以
抗攻击能力 一般 √强
防火墙隔离度 一般 √几乎完全对外隔离
域名解析 可以A记录,可以cname,可以直接NS托管 建议cname,更加自由,也可以A记录
扩展性能(如智能加速) ×

解答几个可能的疑问:

  1. 服务器和加速服务器之间传输数据会不稳定么? 不会的,因为都是机房之间传输,全部是专业的高可靠的线路。且如果您选择的加速服务器和您的服务器是同机房的话,这和在一个服务器上没有两样(因为我们的加速服务器和后台服务器都是在欧美和日本而不是中国);
  2. 加速会不会比直接访问慢。不会,如果您选择的加速服务器合适的话,还会让用户访问更快(多数情况是这样),因为服务器和加速前端之间的网络是非常快的。加速延迟计算不是简单的延迟相加。

我们的主战homezz也是采用如此的技术,前端和后端分离,后端存储在amz云端。因此我们遇到n次ddos攻击,都能快速的切换IP。

顺便提一下,今天homezz官方站点也遭遇到强大的DDoS攻击(这次攻击强大前所未有,每秒12万个包,我们购买的初级防护都无法抵挡)。我个人不明白,为啥会有这么多sb自己花钱购买肉鸡来攻击我们,且自己也没有得到一丝好处?你对homezz的攻击,即使减少了homezz的用户,但是人家也未必就去你那边购买,这么简单的账都不会算!

2012年Homezz NB云主机计划

Filed under: 互联网事 — 江东 @ 2012-01-21 19:56:37 才(27)条评论

这个年代,动不动就说自己是云。比如Homezz的云客服。

但是,我这个标题的云主机绝非扯淡,也绝非概念炒作,而是真正的将虚拟主机云化。

实现的技术也很简单,只是没人去做。2012年,我打算慢慢来开发这个云虚拟主机系统。

云主机会有以下功能:

  1. 服务器全部采用更加强劲的CPU和RAM,Ram至少16G,或者到48G,CPU至少8核;
  2. 每一台服务都另外同样配置的服务器做rsync异步增量热备份,可宕机自动切换;
  3. 用户更换机房不需要搬移任何数据,而且数据也不需要,只需要鼠标点击一下,等待10秒钟,然后修改自己域名的cname即可;
  4. 增加抗小规模DDoS功能(大约抗150M左右,再大的扛不住,DDoS毕竟是流氓活)用户只需要在后台点击鼠标,就可以切换到抗DDoS攻击的服务器上;
  5. 一个共享主机账户,可以至少同时享受俩共享IP地址;
  6. 更多的IP资源,同IP的网站更少……
现在想到的功能就这些,等完善之后,我将会更新本页。

顺祝各位朋友春节快乐!

防止php fsocksopen函数发起DoS攻击的一个思路

Filed under: 互联网事 — 江东 @ 2011-11-18 11:49:57 才(5)条评论

前段时间,因为某些用户的dedecms程序被黑,被黑的脚本利用php的fsocksopen对外发起DoS攻击,所以我不得不禁止fsockopen函数,实际上,很多国内国外的主机商都是禁止这个函数的。

实际上,多数情况下fsocksopen可以用curl替代之,后者更加安全,然后依然有部分程序,如aksimet反垃圾插件,discuz论坛都需要fsocksopen来支持,所以如果可能,我觉得还是打开fsocksopen函数比较人道。

因此,我想到了一个方案,不知道是否可行:

  1. 写了一个脚本,定期扫描用户的文件,专门揪出那些有fsocksopen函数的文件,同时看看是否有被黑的标志,如果有,则标记为可疑文件;
  2. 用iptables监控流量,1分钟一次,如果发现outbound流量异常,则dump下当前的所有进程,以供后期人工排除查看;
  3. 将进程中的php文件 和可疑文件列表相对照,如果有吻合的文件,马上kill掉进程,同时将此文件属性标记为000,并且邮件通知;

当然,上面的1,2,3将会用脚本自动完成 。
这仅仅是一个想法,等到测试确实可能之后,homezz将会再次支持fsocksopen函数

发现一个问题:

  1. 若用户的php脚本进行了简单的base64加密,判断难度增加;
  2. 若php脚本进行了其他方式的加密,则无法扫描;

所以,目前还是有无法开启fsocksopen
此种方案不太完美

show一下homezz用户帮做的宣传图片

Filed under: 互联网事 — 江东 @ 2011-11-14 12:47:48 才(4)条评论

homezz 美国专业主机商

图片不错,我个人很喜欢,有需要的放在自己blog上的,就请拿去吧

光棍节送主机

Filed under: 互联网事 — 江东 @ 2011-11-11 09:56:40 才(10)条评论

由于Homezz不再采用reseller主机了,因此手头还有几个reseller主机在2012年才过期,反正闲置也是闲置,所以我决定开些账户送给有需要的朋友。

这次赠送的主机的供应商是hawkhost( 20个名额)

上次我也赠送过一次site5的主机,但是由于当时我在site5有很多帐号,因为部分用户host仿牌,导致我site5所有的账户被取消。

此次赠送这种可能性很低了,因为我已经没有用户在hawkhost了。

如果你需要主机,请按照下面的流程给 china.cos#gmail.com 发邮件

  1. 提供您的主域名(请不要加任何www和http,便于我复制);
  2. cpanel的密码,至少超过6位,太简单的密码无法开通;
  3. 附上您的email地址(我懒得去地址栏复制地址,所以请您自己复制在此处,便于迅速开通);
  4. 请写上您知道账户将会在 2012-03-28过期,过期之前您会自己备份数据,或者请我们免费搬移到收费的homezz;
  5. 请保证您不会放置违反版权的内容(这样其他用户才能长久使用);
可以了,给我发邮件吧。
这不是推销,这是物尽其用。
机房在dallas,本服务器的速度不能反应现在homezz虚拟主机的速度