业界的一般做法难道都是只允许本地访问么?感觉有些奇怪啊,难道只有我有需求需要远程访问 redis 服务吗?还是大多数人只是把 Redis 服务当作是本地缓存来使用?
为什么不提倡通过防火墙控制访问主机,配置强密码保证安全,同时 redis 的密码是可以被穷举的,需要对 redis 的 log 做监控,做到及时发现被攻击,将 flushall 等命令混淆成很难猜的字符串(感觉 redis 对安全本身真的不怎么重视,如果权限控制的好,完全没必要做命令混淆,对权限控制没信心才需要用这种无奈的方法~~~),总之感觉以上措施真的不太适合在现实环境中使用啊。
希望大家能介绍一下自己使用 redis 的场景,并且说说自己做了哪些安全措施。谢谢!
把你防火墙第一条规则移到最下面。 简单来说,iptables 首先执行 forward table,然后是 filter table,进入到 filter table 的时候,是从上往下依次匹配,遇到第一个匹配的就执行,停止下面的规则。 你第一条规则就把 tcp 的 27017 端口给封了,后面的当然不 work,换个顺序试试
有点意思哦,最近有类似需求,不过不是很理解你这里支持多站点的意思,是指多个不同的内容管理?还是同一个 CMS 内容支持推送到多站点的 WEB 服务器上?
如果是多个不同的内容管理,那么把这些内容集中在一个 CMS 系统上的优点是什么?少登录几次?那么单点登录是不是比较实用。如果是同一个 CMS 内容推送到多站点的 WEB 服务器,看上去也不需要新搞个 CMS 系统,能谈谈需求背景么?
当然,给实打实动手的人点个赞。
你的代理依赖其他什么应用么?比如访问数据库什么的。排除了外部依赖的瓶颈后,我假设你的代理程序是不是一个 socket server,如果是的,用 lsof 命令检查一下是不是达到了最大打开文件数,如果是的话,首先要解决的问题还是要及时断开连接才行。 还可以通过设置允许重用 time_wait 状态连接提高性能,就是 net.ipv4.tcp_tw_resuse 和_recycle 那两个参数。
如果都不能解决问题,不妨看看/var/log/message 看看 syslog 有没有什么有价值的信息,主要这种问题信息量太少,只能不断试错。
希望你解决问题后分享一下原因和解决方案,谢谢