小编Mr.*_*oon的帖子

MySQL 降低 wait_timeout 值以减少打开的连接数

我运行一个相当繁忙的站点,在偷看时间,当运行 netstat 命令时,我在我的网络服务器上看到超过 10.000 个到我的数据库服务器的打开连接。99% 的连接都在TIME_WAIT状态中。

我今天了解了这个 mysql 变量:wait_timeout http : //dev.mysql.com/doc/refman/5.1/en/server-system-variables.html#sysvar_wait_timeout。我的仍然设置为默认的 28.800 秒。

降低这个值安全吗?

我的查询通常不会超过一秒钟。因此,将连接保持打开 480 分钟似乎很愚蠢。

我也听说过使用mysql_pconnect而不是mysql_connect,但我一直在读关于它的恐怖故事,所以我想我会远离它。

mysql tuning

41
推荐指数
1
解决办法
11万
查看次数

Nginx/FPM/PHP 所有 php 文件都说“找不到文件”。

我刚刚在 centos 5.8 最终 64 位机器上安装了 nginx 1.1.13 和 php 5.4.0。Nginx 和 PHP/Fpm 正在运行,我可以通过 ssh 命令行运行 php 脚本,但在浏览器中我不断收到“找不到文件”。我所有的 PHP 文件都出现错误。

这就是我的 nginx.conf 处理 PHP 脚本的方式:

      location ~ \.php$
      {
              root                    /opt/nginx/html;
              fastcgi_pass            unix:/tmp/fpm.sock;
              fastcgi_index           index.php;
              fastcgi_param           SCRIPT_FILENAME /opt/nginx/html$fastcgi_script_name;
              include                 fastcgi_params;
      }
Run Code Online (Sandbox Code Playgroud)

这是从我的其他服务器直接复制/粘贴的,在此设置下它可以正常工作(但它们运行旧版本的 php/fpm)。

为什么我会收到这些错误?

php nginx php-fpm

7
推荐指数
1
解决办法
5万
查看次数

为“规则禁止”禁用 Nginx 日志记录

在我的 Nginx 配置中,我有一些 IP 块,以对抗垃圾邮件发送者和机器人。

这是非常有效的,但结果是,我的错误日志很快就会被这样的错误消息填满:

2015/12/16 00:56:28 [错误] 27748#0:*120462 规则禁止访问,客户端:167.114.xxx.xxx,服务器:bla bla ....

现在我不想完全禁用错误日志记录,因为我想在出现问题时找出问题所在。我只想禁用这些“规则禁止”消息的日志记录。

知道如何做到这一点吗?

nginx logging

7
推荐指数
1
解决办法
2526
查看次数

选择正确的 innodb_buffer_pool_size

我有一台运行 MySQL 的 24GB 机器(仅限 InnoDB 表)。

我的 innodb 数据集有 11.5GB 大,我已将 innodb_buffer_pool_size 设置为 14GB 以允许一些增长。所以整个innodb数据集都加载到了ram中,很好。

但是今天我注意到我的索引大小也超过了 11GB。

增加我的 innodb_buffer_pool_size 以便索引空间也适合吗?或者与此无关?

mysql innodb tuning

6
推荐指数
1
解决办法
4719
查看次数

100mb/s 升级到 1gbps 网络 - 防止 DDOS

过去几周我一直受到 DDOS 攻击。

现在看来我的服务器网络被淹没了,直到它不再有空间来接收和发送正常的包裹。

我运行 CENTOS 5.6,并且我已经强化了 SYSCTL 和 iptables,以尽可能地抵御 SYN 攻击。

我有一个 100Mbit 的网卡并连接到我的托管公司。

正常的传入流量约为 8mbit/s。当攻击发生时,传入的数据峰值高达 100 兆比特。

如果我将服务器升级到 1GBPS 网卡 + 网络连接,它可以帮助我抵御攻击吗?

我希望管道在受到攻击时不会那么快被淹。

centos ddos

5
推荐指数
3
解决办法
950
查看次数

服务器迁移,尽量减少错误的 DNS 查找

我经营着一个大型网站(每天 50 万个独立用户)并且即将转移到另一个托管商。

我的新机器已经安装和测试,所有文件都被复制过来,所以我几乎准备好在我的注册商处更改我的域的 IP 地址。

现在我想知道是否有办法最大限度地减少访问旧服务器的人数,因为他们的 DNS 信息尚未更新。

有时更新可能需要很长时间,而人们访问旧服务器会使我的网站不同步。

有没有办法强制人们从我的旧机器转移到新机器?

domain-name-system linux migration

4
推荐指数
1
解决办法
367
查看次数

抵御网络泛滥

我的网站有时会被人攻击。你可以在 18:00 看到这样的攻击,然后在 22:30 看到更大的攻击。基本上,服务器网卡被传入的请求淹没。

我的机器是一个专用的四核、12GB ddr3、4x SAS 15k RPM 驱动器,采用 RAID10 和 CentOS5.6 64 位。

在这台服务器上,我运行 Nginx 作为我的网络服务器。在攻击期间,我无法访问我的站点,因为整个网络似乎都被淹没了。一旦停止,一切都会恢复正常,无需重新启动任何东西。

我稍微强化了我的 SYSCTL,请参阅此处的设置:http ://pastebin.com/eFfAcWkr 我的 IPTABLES 配置,它确实非常基本。只需要端口 80、443、21 和我的 SSH 端口打开:http : //pastebin.com/MsHSka08

我的问题是:我还能做些什么来抵御此类攻击?另外,有没有办法让我找出它究竟是哪种攻击?*

绿线是传入数据,蓝线是传出数据。

网络攻击

networking iptables centos brute-force-attacks

3
推荐指数
1
解决办法
1067
查看次数

穆宁停止更新了

今天 02:20 我注意到 Munin 突然停止更新图表。它不显示空白数据,整个图表不再更新。

我运行 CentOs 5.7 (64) 并通过 yum 安装了 Munin。一切正常,直到 02:20。

我做的第一件事是重新启动 Munin:service munin-node restart。

它重新启动时没有出现问题或错误,但仍然没有更新图表。

因此,我检查了 /var/log/munin 中的所有日志文件,除了 munin-node.log 之外,自 02:20 以来没有更新任何文件。

添加到 munin-node.log 的所有内容是:

2011/12/06-02:57:19 服务器关闭!进程后台 2011/12/06-02:57:20 Munin::Node::Server (类型 Net::Server::Fork)开始!pid(16603) 使用默认侦听值 128 绑定到主机 127.0.0.1 上的 TCP 端口 4949 将 gid 设置为“0 0”

每次重新启动时,我都会在出现相同的消息后尝试。

我真的不明白穆宁为什么突然停止工作。知道我可以尝试什么吗?

munin centos

3
推荐指数
1
解决办法
5685
查看次数

如何在linux中找到连接超时值?

我正在使用 php-fpm 和 (d)dos deflate 设置一个 nginx 网络服务器以禁止攻击。

现在我的服务器根本没有流量,因为我正在测试。

使用此命令,我可以查看谁连接到我的服务器,以及他们打开了多少个连接:

netstat -ntu | awk '{print $5}' | 剪切 -d: -f1 | 排序 | uniq -c | 排序 -n

在测试期间,我注意到当我加载一个测试脚本时,它基本上<?php phpinfo(); ?>会启动 3 个连接。我猜 1 表示 HTML,2 表示该页面上的 2 张图像。到目前为止一切都很好...

但我注意到在关闭这 3 个连接之前花了一分钟多的时间。我一直在运行上面的 netstat 命令来查看这 3 个外部连接是否会关闭。

我的 nginx.conf 的保持活动超时为 4。

  keepalive_timeout       4;
Run Code Online (Sandbox Code Playgroud)

连接是通过默认设置的 Chrome 浏览器进行的。

这些连接怎么保持打开这么长时间,这正常吗?另外,有没有办法可以更快地关闭它们?

nginx timeout keepalive ddos

2
推荐指数
1
解决办法
3万
查看次数

检测磁盘写入 Linux

我的运行 centos 5.7 的网络服务器显示出相当多的磁盘写入活动,我无法真正解释。

我在 nginx、php-fpm 和 xcache 的帮助下在这台服务器上运行了一些网站。在文件系统上,我添加了noatime.

现在运行良好,但我看到每秒写入的次数很多,我无法解释。没有添加任何文件,我已禁用 nginx 访问日志。php-fpm 错误日志和 nginx 错误日志每分钟只添加几行。我已经检查了所有其他登录/var/log并且没有记录正在发生的写入次数。

平均每分钟写入大约 2 兆字节的数据,每秒大约 200 次 IO。

我怎样才能找出导致这些写入的原因?

linux hard-drive centos io

2
推荐指数
1
解决办法
436
查看次数

阻止所有 UDP 流量(以防止 ddos​​)

在过去的几周里,我收到了无数次 ddos​​ 攻击。刚才我在运行iptraf的时候抓到了一个。通常,我服务器上使用的 99.9% 的数据包是 TCP 数据包,而不是 UDP。我看到使用了一些,但通常几乎没有。

现在,当攻击发生时,我注意到每秒有数千个传入的 UDP 数据包。tcpdump 也显示了这个:http : //pastebin.com/raw.php?i=QaybC8C1

我运行 CENTOS 5.6,我只将它用于 nginx (80,443)、ssh (22)、ftp (21)。我不运行名称服务器、电子邮件或类似的东西。

我的问题是。我可以通过 iptables 阻止所有传入的 UDP 流量吗?这对 UDP ddos​​ 攻击有效吗?如果我可以阻止所有 UDP 流量,这会在 linux 中导致任何问题吗?

centos udp ddos

0
推荐指数
2
解决办法
2万
查看次数