Como configurar o iptables?

0

Eu quero permitir o tráfego apenas para httpd (nginx), porta 2710 e ssh.

Eu tentei o seguinte, mas não funcionou e, aparentemente, todo o httpd, o tráfego foi bloqueado e não consegui acessar o ssh também. Não houve erro algum.

# Generated by iptables-save v1.4.7 on Sun Dec 29 01:18:59 2013
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1670:508953]
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 2710 -j ACCEPT 
-A INPUT -j DROP 
COMMIT
# Completed on Sun Dec 29 01:18:59 2013

iptables -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:22 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:http 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:webcache 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:sso-service 
DROP       all  --  anywhere             anywhere            

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain ISPMGR (0 references)
target     prot opt source               destination 

iptables -xnvL

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
    pkts      bytes target     prot opt in     out     source               destination         
      52     3808 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:22 
    1876   260008 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:80 
     737    44220 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:8080 
    1495   181034 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:2710 
    1439    91560 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
    pkts      bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 4859 packets, 330086 bytes)
    pkts      bytes target     prot opt in     out     source               destination         

route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
x.x.x.x         0.0.0.0         255.255.255.0   U     0      0        0 eth0
x.x.x.x         0.0.0.0         255.255.0.0     U     1002   0        0 eth0
0.0.0.0         x.x.x.x         0.0.0.0         UG    0      0        0 eth0

nmap -p 80 x.x.x.x

Starting Nmap 5.51 ( http://nmap.org ) at 2013-12-29 02:14 EET
Nmap scan report for myhost.com (x.x.x.x)
Host is up (0.000038s latency).
PORT   STATE SERVICE
80/tcp open  http

Nmap done: 1 IP address (1 host up) scanned in 0.06 seconds

tcpdump -i eth0

listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
^C
1 packets captured
3165 packets received by filter
3134 packets dropped by kernel
    
por Orlo 27.12.2013 / 16:56

2 respostas

0

Esta é uma pergunta muito mal colocada. link é um daemon, geralmente indica um servidor web. Você não informa qual servidor Web está usando (Apache, Nginx, lighttpd, thttpd, ...). Se o que você deseja é usar o Apache Tomcat, você terá que abrir também a porta 8243.

Mas se você estiver em dúvida, na máquina que hospeda o servidor Web, emita como sudo o seguinte comando:

  ss -lntp

isto listará as portas nas quais o pc está escutando, incluindo, por exemplo, o ssh. Ao lado de cada porta, você verá o processo de escuta. Isto lhe dará a lista completa de portas a serem abertas.

E, se você não tiver acesso à máquina na qual o servidor Web está rodando, este comando (novamente como sudo)

  nmap -T4 -A IP_address_of_Web_server

listará todas as portas abertas.

    
por 27.12.2013 / 17:41
-1

Você não precisa de alguma estrofe como:

$IPTABLES -A INPUT   -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT  -m state --state ESTABLISHED,RELATED -j ACCEPT

$IPTABLES -A INPUT  -p tcp -m tcp  -s 192.168.1.35  --dport 22  -m state --state NEW,ESTABLISHED -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -m tcp  -d 192.168.1.35  --sport 22  -m state --state ESTABLISHED,RELATED -j ACCEPT
    
por 27.12.2013 / 17:31