因为单位要求修复Memcached的DDOS漏洞,整理了本文。之前的文章防止Memcached的DDOS攻击另外一个思路 提到了解决方案,我们使用的版本较低,因此需要对 Memcached 进行升级,有需要的朋友可以参考。

旧版本的卸载

如果 Memcached 是通过 yum 或 rpm 安装的,可以通过 yum 删除

yum remove <package_name>

新版本的安装

我的环境是 Redhat 6.5 和 6.4,因为最新版的 Memcached 要求 Libevent 2.0 ,系统自带的版本太老了,因此需要先安装 Libevent 再安装 Memcached。我都使用了源码安装的方式,过程比较简单,都是configure make && make install。这里只是对遇到的问题总结一下。

如果启动的时候看到这个提示:/usr/local/memcached/bin/memcached: error while loading shared libraries: libevent-2.1.so.6: cannot open shared object file: No such file or directory

在 Redhat 6.5 和 6.4 中有不同的解决方案

Redhat 6.5

ln -s /usr/local/lib/libevent-2.1.so.6 /usr/lib64/libevent-2.1.so.6

Redhat 6.4

ln -s /usr/local/lib/libevent-2.1.so.6 /usr/lib/libevent-2.1.so.6

如何把 Memcached 加入到服务中

cp scripts/memcached.sysv /etc/init.d/memcahced #拷贝启动脚本到init.d目录
ln -s /usr/local/bin/memcached /usr/bin/memcached
chkconfig --add memcached
chkconfig memcached on

Memcache的配置

第一次配置Memcached的时候,需要特别关注 -m, -d, -v 这三个参数。

-m 设置Memcached可以使用的内存大小(以Mb为单位),Memcached不能完全使用分配的大小,实际上要小一些。所以这个值需要设置在一个安全的范围内。在1.4.x版本或之前,设置为小于48M是不能生效的。

-d 设置Memcached以守护进行的形式运行。如果使用init脚本启动,则不需要这个参数。

-v 控制Memcached与STDOUT/STDERR的交互方式。加上这个参数后,可以在命令行中看到Memcache启动和工作过程中的一些输出信息。

-p 指定监听的端口

-l 绑定特定的地址

TCP -p 修改的时候,只针对TCP的链接请求有效

UDP -U 用来修改UDP的监听端口,UDP对于读取、设置一些比较小的条目时非常有用。如果对于这个端口比较担心,设置为0就可以禁止掉。

-s 这个配置可以将访问限制在一个单独的本地用户,启用这个配置后,会禁用TCP和UDP的访问。

连接限制:默认情况下,最大的连接限制是1024。这个的正确配置非常重要,达到最大连接数后,额外的连接会一直等待,直到有多余的slots空闲出来。通过查看“listen_disabled_num”这个状态值能够检查实例是否发生过最大连接数的情况。

memcached能够轻松的处理访问量的变化,所以即使设置的太高,也不需要担心。但是,设置一定要适合自己的情况,并且有一定的富余。如果你有5个Web前端,每台前端的MaxClients设置为12,那么memcached可能承受的最大访问量就是60。

ldd 命令

打印依赖的共享库

LD_DEBUG=libs /usr/local/bin/memcached -v

本文为作者原创,如果您觉得本文对您有帮助,请随意打赏,您的支持将鼓励我继续创作。

参考资料:

1、Memcached Config

2、yum更新软件、删除软件

3、启动Memcached报错

4、error while loading shared libraries: libevent-2.1.so.6 的解决办法

5、CentOS 6.6下Memcached 源码安装配置

Memcache的安装与配置的更多相关文章

  1. windows php下memcache+memcached安装与配置

    环境声明: 服务器:Windows7 64-bit:Memcached:Memcached 64-bit for Windows(64位) 安装过程 解压刚刚下载的压缩包,得到两个文件:memcach ...

  2. Memcache集群安装与配置

    Memcache集群的安装和配置 :http://blog.163.com/asd_wll/blog/static/210310402013084405481/

  3. Memcache安装、配置与学习

    基于现在大多网站数据很多,由于页面性能问题我们都开始对站点使用缓存进行性能优化 Memcache扩展下载:http://windows.php.net/downloads/pecl/releases/ ...

  4. OpenStack云计算快速入门之二:OpenStack安装与配置

    原文:http://blog.chinaunix.net/uid-22414998-id-3265685.html OpenStack云计算----快速入门(2) 该教程基于Ubuntu12.04版, ...

  5. Linux下memcache的安装

    memcache是高性能,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度.目前用memcache解决互联网上的大用户读取是非常流行的一种用法,在互联网企业中有着广泛的应用.‍关 ...

  6. linux下安装及配置和启动memcached

    一.下载文件: 下载memcached和libevent,放到/hom/zwl/目录下 # wget http://www.danga.com/memcached/dist/memcached-1.2 ...

  7. php无法加载Memcache缓存模块问题及Memcache的安装

    今天早上去迁移网站发现打开网站报错 然后我去phpinfo.php看了一下,果然我的测试页里面有加载到Memcache这个模块,如下图: 这时候,既然发现了问题的所在我们就要去排查问题,当前这个问题呢 ...

  8. OpenStack安装与配置2

    第二部分 OpenStack安装与配置 一.引言   本章内容讲解如何在3台物理机上搭建最小化云平台,这3台机器分为称为Server1.Server2和Client1,之后的各章也是如此.Server ...

  9. 第二部分 OpenStack安装与配置

    第二部分 OpenStack安装与配置 一.引言   本章内容讲解如何在3台物理机上搭建最小化云平台,这3台机器分为称为Server1.Server2和Client1,之后的各章也是如此.Server ...

随机推荐

  1. 【AtCoder】ARC087

    C - Good Sequence 题解 用个map愉悦一下就好了 代码 #include <bits/stdc++.h> #define fi first #define se seco ...

  2. VS C++ 并发编程

    1.VS2012及以上版本,支持C++11 thread类的并发编程. 相关材料可以参考博客:http://www.cnblogs.com/rangozhang/p/4468754.html 2.但对 ...

  3. 针对LDAP安装web接口,进行管理

    1. 通过SSH连接LDAP服务器 2. 安装phpLDAPadmin运行以下命令. $ sudo apt-get install phpldapadmin 3. 配置phpLDAPadmin. $ ...

  4. P1540 机器翻译 模拟

    题目背景 小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章. 题目描述 这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换.对于每个英文单词,软件会先 ...

  5. 005 RequestMapping_HiddenHttpMethodFilter 过滤器

    很郁闷,这个查了很多资料,就是put与delete还是不好用. 但是看了一个文档后解决了,有些感谢这篇文档:http://blog.csdn.net/tiberroot/article/details ...

  6. [转]C++中vector使用详细说明

    一.向量的介绍    向量 vector 是一种对象实体, 能够容纳许多其他类型相同的元素, 因此又被称为容器. 与string相同, vector 同属于STL(Standard Template ...

  7. Codeforces.643E.Bear and Destroying Subtrees(DP 期望)

    题目链接 \(Description\) 有一棵树.Limak可以攻击树上的某棵子树,然后这棵子树上的每条边有\(\frac{1}{2}\)的概率消失.定义 若攻击以\(x\)为根的子树,高度\(ht ...

  8. BZOJ.1014.[JSOI2008]火星人(Splay 二分 Hash)

    题目链接 后缀数组显然不行啊.求LCP还可以哈希+二分,于是考虑用平衡树维护哈希值. \[某一节点的哈希值 = hs[lson]*base^{sz[rson]+1} + s[rt]*base^{sz[ ...

  9. poj 1511 优先队列优化dijkstra *

    题意:两遍最短路 链接:点我 注意结果用long long #include<cstdio> #include<iostream> #include<algorithm& ...

  10. Codeforces Round #396 (Div. 2) D. Mahmoud and a Dictionary 并查集

    D. Mahmoud and a Dictionary 题目连接: http://codeforces.com/contest/766/problem/D Description Mahmoud wa ...