当前位置:网站首页>启用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认证
边栏推荐
- OpenGL draws colored triangles
- Use of QT OpenGL camera
- RedHat5 安装Socket5代理服务器
- 双链笔记·思源笔记综合评测:优点、缺点、评价
- Introduction to concurrent programming (II)
- idea将web项目打包成war包并部署到服务器上运行
- Is it OK to open an account for online stock speculation? Is the fund safe?
- Unicode encoding table download
- Integer string int mutual conversion
- Itext7 uses iexternalsignature container for signature and signature verification
猜你喜欢

Shutter widget: centerslice attribute

云计算未来 — 云原生

使用BLoC 构建 Flutter的页面实例

Pki/ca and digital certificate

公纵号发送提示信息(用户微服务--消息微服务)

New features of ES6
![Sword finger offer03 Repeated numbers in the array [simple]](/img/cf/c1ad2f2a45560b674b5b8c11fed244.png)
Sword finger offer03 Repeated numbers in the array [simple]
![Sword finger offer04 Search in two-dimensional array [medium]](/img/c4/002c951f8d914aaea4f4133685ebd1.png)
Sword finger offer04 Search in two-dimensional array [medium]

(construction notes) ADT and OOP

Wechat applet - basic content
随机推荐
Atomic atomic operation
Shutter widget: centerslice attribute
Introduction to concurrent programming (II)
Sword finger offer05 Replace spaces
flinksql是可以直接客户端建表读mysql或是kafka数据,但是怎么让它自动流转计算起来呢?
Is it safe to open an account for online stock speculation? Who can answer
Dart: view the dill compiled code file
Use of atomicinteger
347. Top k high frequency elements
实现验证码验证
Symlink(): solution to protocol error in PHP artisan storage:link on win10
RedHat5 安装Socket5代理服务器
Applet wxss introduction
Eureka自我保护
剑指Offer07. 重建二叉树
Implement verification code verification
(construction notes) grasp learning experience
Flinksql can directly create tables and read MySQL or Kafka data on the client side, but how can it automatically flow and calculate?
在网上炒股开户可以吗?资金安全吗?
Togaf certification self-study classic v2.0