当前位置:网站首页>启用MemCached的SASL认证
启用MemCached的SASL认证
2022-07-03 11:55:00 【星哥玩云】
MemCached从1.4.3版本开始,能支持SASL认证。比较适合多个应用共用一个MemCached集群,需要在编译时,加上–enable-sasl选项。
启动memcached时,增加-S的选项
“ ./configure –prefix=%{datadir} –enable-sasl
/usr/local/bin/memcached -S -d -u nobody ” SASL认证也可以有很多种认证机制,比如pam,shadow,ldap等
下面配置成使用shadow方式去认证
“ #修改/etc/sysconfig/saslauthd文件
MECH=shadow
#设置用户的SASL认证密码
saslpasswd2 -c -a memcached memuser
#最终生成的DB文件在/etc/下
-rw-r—– 1 root root 12288 Mar 6 11:52 /etc/sasldb2
#可以查看当前的SASL用户
sasldblistusers2 ”
下面配置成通过pam-mysql使用mysql数据库的方式去认证
“ #首先安装pam-mysql
wget "http://prdownloads.sourceforge.net/pam-mysql/pam_mysql-0.7RC1.tar.gz"
./configure –with-mysql=/opt/apps_install/mysql-5.5.17
make & make install
#增加一个软链接
ln -s /lib/security/pam_mysql.so /lib64/security/pam_mysql.so
#修改saslauthd配置
MECH=pam
#编辑pam.d的memcached配置
auth sufficient pam_mysql.so user=sasl passwd=saslpwd host=xxx db=dbname table=t_app_info usercolumn=appid passwdcolumn=secret crypt=0 sqllog=1 verbose=1
account required pam_mysql.so user=sasl passwd=saslpwd host=xxx db=dbname table=t_app_info usercolumn=appid passwdcolumn=secret crypt=0 sqllog=1 verbose=1
#新增加memcached的配置文件/etc/sasl2/memcached.conf
pwcheck_method: saslauthd
#重启saslauthd
/etc/init.d/saslauthd restart
#测试saslauthd认证已经成功
/usr/sbin/testsaslauthd -s /etc/pam.d/memcached -u 10000 -p pwd
0: OK "Success." ”
memcached的java client,如spymemcached和xmemcached都已经支持SASL认证了
“ #xmemcached认证示例
MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil.getAddresses("10.x.xx.xx:11211"));
builder.addAuthInfo(AddrUtil.getOneAddress("10.x.xx.xx:11211"), AuthInfo.plain("10000", "pwd"));
builder.setCommandFactory(new BinaryCommandFactory());
client=builder.build();
String v = client.get("test2"); ” python版本的pylibmc也支持SASL认证
边栏推荐
- SLF4J 日志门面
- Use of QT OpenGL camera
- 【ManageEngine】IP地址扫描的作用
- (construction notes) grasp learning experience
- Is it OK to open an account for online stock speculation? Is the fund safe?
- 20. Valid brackets
- Sword finger offer03 Repeated numbers in the array [simple]
- Shutter: about inheritedwidget
- (construction notes) learning experience of MIT reading
- 剑指Offer05. 替换空格
猜你喜欢
![[ManageEngine] the role of IP address scanning](/img/dc/df353da0e93e4d936c39a39493b508.png)
[ManageEngine] the role of IP address scanning

阿里大于发送短信(用户微服务--消息微服务)

Basic knowledge of OpenGL (sort it out according to your own understanding)

If you can't learn, you have to learn. Jetpack compose writes an im app (II)

使用BLoC 构建 Flutter的页面实例
![[official MySQL document] deadlock](/img/2d/04e97d696f20c2524701888ea9cd10.png)
[official MySQL document] deadlock

Shutter: add gradient stroke to font

Implement verification code verification

PHP export word method (phpword)

If you can't learn, you have to learn. Jetpack compose writes an im app (I)
随机推荐
What is more elegant for flutter to log out and confirm again?
Why can't my MySQL container start
OpenGL draws colored triangles
剑指Offer05. 替换空格
MySQL time zone solution
双链笔记·思源笔记综合评测:优点、缺点、评价
Take you to the installation and simple use tutorial of the deveco studio compiler of harmonyos to create and run Hello world?
wpa_ cli
Dart: view the dill compiled code file
写一个简单的nodejs脚本
Summary of development issues
Symlink(): solution to protocol error in PHP artisan storage:link on win10
Official website of Unicode query
Fluent: Engine Architecture
Dart: about grpc (I)
Shutter: about inheritedwidget
1-1 token
Shutter widget: centerslice attribute
(construction notes) learn the specific technology of how to design reusable software entities from three levels: class, API and framework
PHP export word method (phpword)