Hjälp med Iptables rules (främst för mail)

Permalänk
Medlem

Hjälp med Iptables rules (främst för mail)

Hej skulle behöva lite hjälp med mina regler för iptables

Är ny på linux och har saxat en config från nätet det mesta fungerar bra tror jag men jag får inte outgoing mail att funka..

jag applicerar följande till iptables då kan mina php-skript ej längre skicka mail.

#iptables test rules # This file is modified to suit server # x.x.x.x # # Ip to allow # xxxxxxxxxx # xxxxxxxxxx # # # xxxxxx # 1. Delete all existing rules iptables -F # 2. Set default chain policies iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT DROP /etc/init.d/fail2ban stop /etc/init.d/fail2ban start # 5. Allow incoming SSH only from a sepcific network iptables -A INPUT -i venet0 -p tcp -s x.x.x.x --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o venet0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT # Allow incoming HTTPS iptables -A INPUT -i venet0 -p tcp -s x.x.x.x --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i venet0 -p tcp -s x.x.x.x/x --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i venet0 -p tcp -s x.x.x.x/x --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o venet0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT # 16. Allow outbound DNS iptables -A OUTPUT -p udp -o venet0 --dport 53 -j ACCEPT iptables -A INPUT -p udp -i venet0 --sport 53 -j ACCEPT # 14. Allow loopback access iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT # 19. Allow MySQL connection only from a specific network iptables -A INPUT -i venet0 -p tcp -s x.x.x.x --dport 3306 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o venet0 -p tcp --sport 3306 -m state --state ESTABLISHED -j ACCEPT # 20. Allow Sendmail or Postfix iptables -A INPUT -i venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o venet0 -p tcp --sport 25 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i venet0 -p tcp --dport 587 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o venet0 -p tcp --sport 587 -m state --state NEW,ESTABLISHED -j ACCEPT

Syftet med dessa regler ska vara att blockera så mycket som möjligt och endast tillåta de tjänster som behövs

endast tillåta ssh från ett specifikt ip
endast tillåta https från ett specifiktnät samt ett specifikt ip
endast tillåta access till mysql från specifikt ip
tillåta outgoing mail.

Om det finns regler som är osäkra/dåliga vänligen påpeka detta. Om det är möjligt ge gärna en förklaring/lösning på mina dåliga regler

Tacksam för all hjälp som erbjuds.

/micke

Permalänk

Jag ska inte rätta dig med din konfiguration eftersom jag inte vet vad som är fel. Det jag ska säga dock är att jag vill komma ihåg att många använder ufw istället för iptables,

MVH JN

Visa signatur

Moderkort: Asus P8Z77-V. HDD: SSD Intel 520 120gb, 1TB. CPU: I7 3770k. GPU: ASUS STRIX 1080.
Ram: Corsair Vengence 8gb. Cpukylare: Cooler master 612s. PSU: Corsair 650w. Chassi: Corsair Obsidian 650D.

Permalänk
Medlem

Ändra
iptables -A OUTPUT -o venet0 -p tcp --sport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
till
iptables -A OUTPUT -o venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT

(Hade du även kunnat se om du hade jämfört med t.ex. regler för DNS)

Visa signatur

RIPE LIR

Permalänk
Medlem
Skrivet av qwerty3225:

Jag ska inte rätta dig med din konfiguration eftersom jag inte vet vad som är fel. Det jag ska säga dock är att jag vill komma ihåg att många använder ufw istället för iptables,

MVH JN

Ufw är iptables frontend så inte mycket skillnad mot att tanka skript

Permalänk
Medlem
Skrivet av tomle:

Ändra
iptables -A OUTPUT -o venet0 -p tcp --sport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
till
iptables -A OUTPUT -o venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT

(Hade du även kunnat se om du hade jämfört med t.ex. regler för DNS)

Ändrat till

iptables -A INPUT -i venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT

mail fungerar fortfarande inte att skicka :/

Permalänk
Medlem
Skrivet av hellhell:

Ändrat till

iptables -A INPUT -i venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT

mail fungerar fortfarande inte att skicka :/

På motsvarande sätt ska då även INPUT ändras

Skrivet av hellhell:

# 16. Allow outbound DNS
iptables -A OUTPUT -p udp -o venet0 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -i venet0 --sport 53 -j ACCEPT

# 20. Allow Sendmail or Postfix
iptables -A INPUT -i venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o venet0 -p tcp --sport 25 -m state --state NEW,ESTABLISHED -j ACCEPT

Det handlar om riktningen.

Och eftersom jag ändå skriver, ändra till:
iptables -A OUTPUT -o venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i venet0 -p tcp --sport 25 -m state --state ESTABLISHED -j ACCEPT

Här finns två bra tutorials:
http://www.thegeekstuff.com/2011/03/iptables-inbound-and-outb...
http://crm.vpscheap.net/knowledgebase.php?action=displayartic...

Visa signatur

RIPE LIR

Permalänk
Medlem

Tänkte bara lägga in detta: om du har telia (kanske inte spelar roll vilken ISP) så blockerar dom port 25 för hemmaanvändare, så du måste använda ett SMTP relay.

Visa signatur

.:[Main System - Chassi: Fractal Design Define R2 XL - Moderkort: TUF Z370-PLUS GAMING - CPU: Intel i5-8600K - RAM: Corsair Vengeance 2133mhz 8GB x2 - GFX: Nvidia GeForce GTX 1080]:.
Citera för svar!

Permalänk
Medlem
Skrivet av tomle:

På motsvarande sätt ska då även INPUT ändras

Det handlar om riktningen.

Och eftersom jag ändå skriver, ändra till:
iptables -A OUTPUT -o venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i venet0 -p tcp --sport 25 -m state --state ESTABLISHED -j ACCEPT

Här finns två bra tutorials:
http://www.thegeekstuff.com/2011/03/iptables-inbound-and-outb...
http://crm.vpscheap.net/knowledgebase.php?action=displayartic...

tack tomle, ska testa och läsa igenom länkarna

edit:

fungerar nu med dessa regler

iptables -A INPUT -i venet0 -p tcp --sport 25 -m state --state ESTABLISHED -j ACCEPT iptables -A OUTPUT -o venet0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT