我在一个vps上装了lnmp和memcached,今天随手输入 ss -l发现mysql和memcached的端口都暴露在外,这是一个很要命的问题

  • memcached一般这样启动

    /usr/bin/memcached -u www -d -m 128 -l127.0.0.1 -p 11211

    • -l这个参数一定要加,而且和127.0.0.1之间不要留空格
    • memcached的端口暴露在外,随便telent上去,执行flush_all,就悲剧了
  • mysql默认是listen 0.0.0.0:3306。大网站的db服务器一般都在内网没有外网ip,用默认配置比较省事。但是如果只有一台vps,lnmp全部署在同一vps上,mysql默认listen 0.0.0.0 ,哪就是谁都可以访问,非常不安全,修复方法如下

    vi /etc/my.cnf

    在[mysqld]部分加入一条 bind-address=127.0.0.1,重启mysqld即可

这都是针对单台vps的情况,这样配置之后,mc和mysql都只允许本机访问,如果你是组建了一个内网,把127.0.0.1改成内网ip即可

本文地址: http://lutaf.com/115.htm 鲁塔弗原创文章,欢迎转载,请附带原文链接