You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AlmaLinux 8.8下Memcached无法监听11211以外端口的问题求助

AlmaLinux 8.8下Memcached无法监听11211以外端口的问题求助

嗨,我来帮你搞定这个困扰!你遇到的问题其实是SELinux访问控制限制导致的,这在RHEL系发行版(包括AlmaLinux)里是很常见的安全机制限制。

问题回顾

你已经成功在AlmaLinux 8.8(RHEL 8.8克隆版)上安装了Memcached,但修改/etc/sysconfig/memcached配置文件里的端口为11212、11213等非默认值后,重启服务时收到了failed to listen on TCP port 11212: Permission denied的错误提示;后续通过Cockpit查看,明确看到SELinux的报错信息:

SELinux is preventing /usr/bin/memcached from name_bind access on the tcp_socket port 11213.

解决方案

根据SELinux给出的提示,我们需要把自定义端口添加到Memcached允许绑定的端口类型中,具体操作如下:

  1. 执行端口权限配置命令
    把你想要使用的端口(比如11213)添加到SELinux允许Memcached绑定的端口列表里,执行以下命令:

    semanage port -a -t memcache_port_t -p tcp 11213
    

    如果你需要使用多个自定义端口(比如11212、11214),只需要重复执行该命令,替换对应的端口号即可。

  2. 重启Memcached服务验证
    配置完成后,重启Memcached服务使设置生效:

    systemctl restart memcached
    

    你可以通过以下命令确认服务状态和端口监听情况:

    # 查看服务运行状态
    systemctl status memcached
    # 检查端口是否正常监听
    netstat -tulpn | grep memcached
    

补充说明

SELinux在RHEL系系统中默认会严格限制每个服务的端口访问范围,Memcached默认仅被允许绑定到memcache_port_t类型对应的端口(默认就是11211),任何未被标记为该类型的端口都会被SELinux拒绝绑定,所以必须通过semanage命令手动将自定义端口加入允许列表。

备注:内容来源于stack exchange,提问作者aldemarcalazans

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 09:14:34