Abra o mysql apenas para localhost e um endereço específico

3

Minha configuração : servidor ubuntu 9 e msyql 5

my.cnf = bind-address = 0.0.0.0

meu script do iptables =

iptables -A INPUT -i eth0 -s 99.88.77.66 -p tcp --destination-port 3306 -j ACCEPT

Eu posso conectar de qualquer lugar ao mysql, não apenas esse IP. Eu fiz uma reinicialização do iptables-save, /etc/init.d/netwokring ... mas eu ainda consigo conectar de qualquer IP, alguma pista?

    
por Rodrigo Asensio 22.01.2010 / 16:48

3 respostas

3

Esta regra permite conexões de 99.88.77.66, não impede conexões de algum outro lugar. Para fazer isso, você deve ter uma regra que padronize o DROP para todas as conexões de entrada

iptables -P INPUT DROP

e prossegue para permitir apenas aqueles que você deseja explicitamente. Alternativamente, você pode fechar a porta 3306 especificamente para todos os clientes que não são 99.88.77.66

iptables -A INPUT -i eth0 -s ! 99.88.77.66 -p tcp --destination-port 3306 -j DROP
    
por 22.01.2010 / 17:02
2

Essa regra permite o tráfego de um determinado IP para a porta 3306 / tcp. Você precisa de uma regra posterior (ou política padrão) para descartar todo o outro tráfego para essa porta, porque a política padrão do iptables é permitir tudo.

    
por 22.01.2010 / 17:33
0

talvez sua política padrão de iptables seja permitir todo o tráfego de entrada. isso permitiria uma conexão de qualquer ip. altere esta política para eliminar:

iptables -P INPUT DROP
    
por 22.01.2010 / 17:02