Toon posts:

iptables, script.. komt niet aan?!

Pagina: 1
Acties:

Verwijderd

Topicstarter
Allo,

Ik heb hier een prachtige script waarmee ik mijn webserver met de hele "toko" wil beveiligen. Nu als ik hem er door heen ram laat hij enkel enige standaard porten open (21,22,25,80,110,389,3306).... Dit terwel hij nog een hele reeks open moet laten naast die porten...

Heb hem min of meer samen gesteld uit verschillende scripts...

--- IPTABLES SCRIPT ----

# Route packets between interfaces
#echo "1" > /proc/sys/net/ipv4/ip_forward

cd /sbin

# Flush tables
iptables -F
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -F -t mangle
iptables -X

#iptables -F -t nat

# Create LOGOK table
iptables -N LOGOK > /dev/null
iptables -F LOGOK
iptables -A LOGOK -j LOG --log-prefix "LOGOK: "
iptables -A LOGOK -j ACCEPT

# Create DUMP table
iptables -N DUMP > /dev/null
iptables -F DUMP
iptables -A DUMP -p tcp -j LOG --log-level 6 --log-prefix "GEN-DUMP: "
iptables -A DUMP -p udp -j LOG --log-level 6 --log-prefix "GEN-DUMP: "
iptables -A DUMP -p tcp -j REJECT --reject-with tcp-reset
iptables -A DUMP -p udp -j REJECT --reject-with icmp-port-unreachable
iptables -A DUMP -j DROP

# Create Black List table
iptables -N BL > /dev/null
iptables -F BL
iptables -A BL -p tcp -j LOG --log-level 6 --log-prefix "BL-DUMP: "
iptables -A BL -p udp -j LOG --log-level 6 --log-prefix "BL-DUMP: "
iptables -A BL -p tcp -j REJECT --reject-with tcp-reset
iptables -A BL -p udp -j REJECT --reject-with icmp-port-unreachable
iptables -A BL -j DROP

# Stateful table
iptables -N STATEFUL > /dev/null
iptables -F STATEFUL
iptables -I STATEFUL -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A STATEFUL -m state --state NEW -i ! eth0 -j ACCEPT
iptables -A STATEFUL -j DUMP

# Loopback rules
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

################## ALLOW ####################
# Allow SSH
iptables -A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --dport 22 -j ACCEPT

# Allow HTTP
iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --dport 80 -j ACCEPT

# Allow FTP
iptables -A INPUT -p tcp -i eth0 --dport 21 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --dport 21 -j ACCEPT

# Allow MYSQL
iptables -A INPUT -p tcp -i eth0 --dport 3306 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --dport 3306 -j ACCEPT

# Allow SMTP
iptables -A INPUT -p tcp -i eth0 --dport 25 -j ACCEPT

# Allow DNS
iptables -A INPUT -p udp -i eth0 --sport 53 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --sport 53 -j ACCEPT

# Allow POP3
iptables -A INPUT -p tcp -i eth0 --dport 110 -j ACCEPT

# Allow IMAPS
iptables -A INPUT -p tcp -i eth0 --dport 993 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --dport 993 -j ACCEPT

# Allow TOMCAT
iptables -A INPUT -p udp -i eth0 --dport 8080 -j ACCEPT

# Allow postgreSQL traffic
iptables -A INPUT -p tcp -i eth0 --dport 5432 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --dport 5432 -j ACCEPT

# Allow POP3S
iptables -A INPUT -p tcp -i eth0 --dport 995 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --dport 995 -j ACCEPT

# allow PCsync HTTPS (PSA)
iptables -A INPUT -p tcp -i eth0 --dport 8443 -j ACCEPT

# Allow certain inbound ICMP types (ping, traceroute..) #
iptables -A INPUT -i eth0 -p icmp --icmp-type destination-unreachable -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --icmp-type time-exceeded -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --icmp-type echo-reply -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --icmp-type echo-request -j ACCEPT

################ END ALLOW ##########################


######### DUMP ################
# Drop reserved addresses incoming (reserved addresses, but may change)
iptables -A INPUT -i eth0 -s 0.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 1.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 2.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 5.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 7.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 23.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 27.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 31.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 36.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 39.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 41.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 42.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 58.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 59.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 60.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 127.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 169.254.0.0/16 -j DUMP
iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DUMP
iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DUMP
iptables -A INPUT -i eth0 -s 197.0.0.0/8 -j DUMP
iptables -A INPUT -i eth0 -s 224.0.0.0/3 -j DUMP
iptables -A INPUT -i eth0 -s 240.0.0.0/8 -j DUMP

# NetBus
iptables -A INPUT -p tcp -i eth0 --dport 12345:12346 -j DUMP
iptables -A INPUT -p udp -i eth0 --dport 12345:12346 -j DUMP

# Block Back Orifice (logged)
iptables -A INPUT -p tcp -i eth0 --dport 31337 -j DUMP
iptables -A INPUT -p udp -i eth0 --dport 31337 -j DUMP

# Trin00
iptables -A INPUT -p tcp -i eth0 --dport 1524 -j DUMP
iptables -A INPUT -p tcp -i eth0 --dport 27665 -j DUMP
iptables -A INPUT -p udp -i eth0 --dport 27444 -j DUMP
iptables -A INPUT -p udp -i eth0 --dport 31335 -j DUMP

######### END DUMP ####################


######### REJECT ######################
iptables -A INPUT -p tcp -i eth0 --dport 113 -j REJECT --reject-with tcp-reset
iptables -A INPUT -p tcp -i eth0 --dport 23 -j REJECT
iptables -A INPUT -p tcp -i eth0 --dport 106 -j REJECT
iptables -A INPUT -p tcp -i eth0 --dport 111 -j REJECT
iptables -A INPUT -p udp -i eth0 --dport 465 -j REJECT
iptables -A INPUT -p tcp -i eth0 --dport 67 -j REJECT
iptables -A INPUT -p udp -i eth0 --dport 67 -j REJECT
iptables -A INPUT -p tcp -i eth0 --dport 68 -j REJECT
iptables -A INPUT -p udp -i eth0 --dport 68 -j REJECT
iptables -A INPUT -p tcp -i eth0 --dport 79 -j REJECT
iptables -A INPUT -p udp -i eth0 --dport 79 -j REJECT
iptables -A INPUT -p tcp -i eth0 --dport 137:139 -j REJECT
iptables -A INPUT -p udp -i eth0 --dport 137:139 -j REJECT
iptables -A INPUT -p tcp -i eth0 --dport 445 -j REJECT
iptables -A INPUT -p udp -i eth0 --dport 520 -j REJECT
iptables -A INPUT -p tcp -i eth0 --dport 20 -j REJECT
iptables -A INPUT -p udp -i eth0 --dport 20 -j REJECT

######### END REJECT ######################

######### DROP ############################
# Don't log MS SQL Server & MS SQL Server Monitor packets
iptables -A INPUT -p tcp -i eth0 --dport 1433 -j DROP
iptables -A INPUT -p udp -i eth0 --dport 1434 -j DROP
######### END DROP ########################

# push everything else to state table
iptables -A INPUT -j STATEFUL

# Chain policies
# Set default policies
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

--- END IPTABLES SCRIPT ---

....... dank?

  • Kippenijzer
  • Registratie: Juni 2001
  • Laatst online: 28-04 20:21

Kippenijzer

McFallafel, nu met paardevlees

Je hebt ook nergens aangegeven dat hij andere poorten open moet zetten... Je zegt : Default policy = DROP, en daarna zet je die paar poorten open... Ales je er meer wilt openen, moet je ook die expliciet toestaan als je policy DROP is.

Verwijderd

Topicstarter
Kippenijzer schreef op 07 September 2003 @ 11:50:
Je hebt ook nergens aangegeven dat hij andere poorten open moet zetten... Je zegt : Default policy = DROP, en daarna zet je die paar poorten open... Ales je er meer wilt openen, moet je ook die expliciet toestaan als je policy DROP is.
Onder het "kopje" allow staan er 12...als ik hem er door heen laat gaat staan er maar 7 porten open.

  • Wilke
  • Registratie: December 2000
  • Laatst online: 20:22
Ja...je hebt hier en daar het protocol verkeerd staan... (-p udp). Zo zet je 2 keer poort 53 open voor UDP verkeer, maar niet voor TCP verkeer. 1x lijkt me ook voldoende. En je wilt blijkbaar dat connecties met Tomcat op poort 8080 gemaakt worden via UDP? Dat lijkt met ook niet echt handig...

Verder lijkt het me dat je je script gewoon wat beter moet debuggen en bekijken wat er nou precies gebeurt. Hoe weet je dat die andere poorten dicht zijn? Bv. nmap scant by default niet alles, alleen een aantal default poorten....

Verwijderd

Topicstarter
Wilke schreef op 07 September 2003 @ 13:30:
Ja...je hebt hier en daar het protocol verkeerd staan... (-p udp). Zo zet je 2 keer poort 53 open voor UDP verkeer, maar niet voor TCP verkeer. 1x lijkt me ook voldoende. En je wilt blijkbaar dat connecties met Tomcat op poort 8080 gemaakt worden via UDP? Dat lijkt met ook niet echt handig...
Betreft twee keer udp.. heb al meerdere opstellingen geprobeerd.. Maar tot dus ver no-go.
Verder lijkt het me dat je je script gewoon wat beter moet debuggen en bekijken wat er nou precies gebeurt. Hoe weet je dat die andere poorten dicht zijn? Bv. nmap scant by default niet alles, alleen een aantal default poorten....
Met Sss... scan ik zonder firewall en dan met... Zie je toch duidelijk stuk of 10 porten die hij aangeeft verschil.

Daarnaast rekent sidn mijn dns niet goed... 2 errors : could not connect..

Lijkt me duidelijk.

[ Voor 6% gewijzigd door Verwijderd op 07-09-2003 14:48 ]


  • sebas
  • Registratie: April 2000
  • Laatst online: 16-12-2025
Waarom staat er bij DNS -sport i.p.v. -dport?

Everyone complains of his memory, no one of his judgement.


Verwijderd

port 389 (ldap) staat nergens gedefineerd maar staat toch open ?

[ Voor 6% gewijzigd door Verwijderd op 08-09-2003 12:16 ]

Pagina: 1