Hi,
ich will mir demnächst einen Server zulegen, deshalb bereite ich im Moment schon meine gewünschten Einstellungen vor.
(Prinzipiell bin ich noch eher unerfahren mit Linux, ich kann mir jetzt aber schon selber helfen)
1. IPtables:
Die Regeln gegen Portscanning und zum SSH-Schutz hab ich mir von anderen Websites zusammengeklaut, funktionieren die anständig?
Habt ihr sonst noch irgendwelche Tipps für mich?
2. Ist es möglich, bestimmte Dienste wie PHP oder Apache komplett vom restlichen System zu trennen?
Sprich, als würden sie auf einer anderen Maschine laufen?
Wie stell ich das an?
ich will mir demnächst einen Server zulegen, deshalb bereite ich im Moment schon meine gewünschten Einstellungen vor.
(Prinzipiell bin ich noch eher unerfahren mit Linux, ich kann mir jetzt aber schon selber helfen)
1. IPtables:
Code:
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
# allow local loopback connections
-A INPUT -i lo -j ACCEPT
# allow connections from localhost
-A INPUT -s 127.0.0.1 -j ACCEPT
# drop INVALID connections
-A INPUT -m state --state INVALID -j DROP
-A OUTPUT -m state --state INVALID -j DROP
-A FORWARD -m state --state INVALID -j DROP
# allow all established and related
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# add anymore rules here
#OpenVPN
-A INPUT -p udp --dport 1194-1198 -j ACCEPT
#Minecraft
-A INPUT --dport 25565 -j ACCEPT
#SSH
-A INPUT -m tcp -p tcp –dport 22 -m state –state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -m tcp -p tcp –dport 22 -m state –state NEW -m limit –limit 3/min –limit-burst 3 -j ACCEPT
-A INPUT -m tcp -p tcp –dport 22 -j DROP
# block portscans
$IPTABLES -A INPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ACK,URG URG -j DROP
COMMIT
Die Regeln gegen Portscanning und zum SSH-Schutz hab ich mir von anderen Websites zusammengeklaut, funktionieren die anständig?
Habt ihr sonst noch irgendwelche Tipps für mich?
2. Ist es möglich, bestimmte Dienste wie PHP oder Apache komplett vom restlichen System zu trennen?
Sprich, als würden sie auf einer anderen Maschine laufen?
Wie stell ich das an?