iptables consente solo scanner ssh, VPN e block


0

ho un VPS debian che devo proteggere. Vorrei che il server avesse accesso solo tramite ssh e openvpn. una volta connesso, non si applicano restrizioni. Inoltre, blocca gli scanner e esegui il ping sul server. Dal momento che sono bloccato con il set di comandi iptables vorrei un aiuto, per favore. Al momento gli iptables sono:

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -X
iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 1194 -j ACCEPT
iptables -P INPUT DROP
iptables -A OUTPUT -p tcp -m tcp --sport 22 -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --sport 1194 -j ACCEPT
iptables -P OUTPUT DROP

una volta connesso, puoi navigare in Internet. Inoltre vorrei che il sistema fosse in grado di inviare e-mail, richieste DNS.

Risposte:


2

La maggior parte delle tue esigenze sono chiare, ad esempio:

  • Debian VPS deve essere in grado di inviare e-mail
  • Debian VPS deve essere in grado di interrogare i server DNS
  • bloccare gli scanner dal VPS Debian
  • il computer deve essere in grado di stabilire sessioni SSH sul VPS
  • il tuo computer deve essere in grado di stabilire sessioni openVPN sul VPS

Per me non è chiaro "una volta connesso, quindi è possibile navigare in Internet". Ho un presupposto, però. ;)

inviare emails

A seconda del protocollo che si desidera utilizzare per inviare e-mail, aprire la rispettiva porta (ad es. Porta TCP 25 o porta TCP 587; userò 25 nell'esempio seguente):

iptables -I OUTPUT -p tcp -m tcp --dport 25 -j ACCEPT

Quindi, è necessario consentire il traffico di ritorno in entrata dal server di posta remoto:

iptables -I INPUT -p tcp -m tcp --sport 25 -j ACCEPT

o meglio:

iptables -I INPUT -p tcp -m state --state ESTABLISHED,RELATED --sport 25 -j ACCEPT

(consentendo tutto il traffico di ritorno tcp dalla porta 25 in una connessione stabilita dal VPS Debian).

Query DNS

Questo è molto simile all'invio di e-mail:

iptables -I OUTPUT -p udp --dport 53 -j ACCEPT
iptables -I INPUT -p udp -m state --state ESTABLISHED,RELATED --sport 53 -j ACCEPT

SSH e openVPN

questo è ciò che ti sei già configurato

navigare su Internet

Presumo che tu voglia

  • connettersi al Debian VPS tramite openVPN
  • navigare in Internet tramite il VPS Debian
  • in modo che il tuo PC a casa appaia come era il Debian VPS (in termini di indirizzo IP pubblico)

Quindi vuoi farlo

abilitare l'inoltro del kernel sul VPS Debian:

$ sudo sysctl -w net.ipv4.ip_forward=1

e inoltre

$ sudo nano /etc/sysctl.conf

e assicurati che ci sia una #riga non commentata (senza in primo piano) che legge

net.ipv4.ip_forward=1

abilita l'inoltro di iptables

Inoltre, vuoi abilitare l'inoltro in iptables: suppongo che tu usi openVPN in modalità di routing usando un tundispositivo (al contrario della modalità bridging usando un tapdispositivo, e che usi 10.8.0.0/24 (predefinito di openVPN) come intervallo di indirizzi IP.

iptables -A INPUT -i tun+ -j ACCEPT
iptables -A OUTPUT -o tun+ -j ACCEPT
iptables -A FORWARD -o eth0 -i tun+ -s 10.8.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

scanner bloccanti

Bene, gli scanner di solito guardano le porte usate di frequente come 80, 22, 1194. Quindi personalmente mi piace usare porte diverse. Ho scritto sull'uso di diversi metodi in questo post di superutente qui , usando atdper aiutarti a non bloccare te stesso dal VPS Debian remoto. In breve, potresti

  • usa SSH e openVPN ciascuno su una porta diversa
  • usare il knocking delle porte per aprire le porte su richiesta

Ti ha aiutato, @john?
stueja,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.