Avatar billede centauri Nybegynder
01. august 2007 - 00:18 Der er 5 kommentarer og
1 løsning

iptables bloker alt til port 22 undtagen fra bestemt IP

Jeg er lidt ny i linux verdenen, eller ihverfald med alt inden for iptables.
Men har et problem jeg håber der er nogen der kan hjælpe mig med.

Mit problem er at jeg gerne vil have blokeret fra for trafik ind til en server på port 22 hvor SSH køre, undtagen fra en bestemt offentlig IP, som er min IP så jeg altid kan komme ind i systemet.

Systemete er en Mandrive 2007. Og kun med 1 netkort som så sidder bag en router så servere har en lokal IP adresse. Og desværre er routeren ikke så intelligent at jeg kan sige at port 22 kun skal være åben fra en bestemt offenlig ip. Så der var min tanke at det måtte da kunne gøres på selve maskinen. Men synes jeg har prøvet at læse en masse på iptables uden at blive så meget klogere

Jeg kom bla frem til at burde kunne åbne med denne komando men den lader ikke til at virke
iptables -A INPUT -s 90.185.xxx.xxx -p TCP –destination-port 22 -j ALLOW

Og så var mit problem stadig hvordan jeg har den til at blokere for alle andre IP adresser på port 22.

Så håber der er nogen der kan hjælpe mig her.
Avatar billede codebase Praktikant
01. august 2007 - 02:48 #1
er det ikke hurtigere at conf ssh til kun at virke fra det ene ip ?
Avatar billede webmasterdk Praktikant
01. august 2007 - 07:51 #2
iptables -A INPUT -s 1.8.9.7 -p tcp --dport 22 -j ACCEPT
burde give det ønskede resultat.
Avatar billede centauri Nybegynder
01. august 2007 - 20:29 #3
>webmasterdk

Det ser så rigtig nok ud, men vil de så automatisk blokere for alle andre IP adresser der ønsker at connecte til maskinen via SSH

Og måske et tillæg er det muligt at gøre sådan at det lokalt altid er muligt at gå til den, at de kun er ude fra internettet af der kun er den ene IP adresse der får lov at komme ind.
Så ved ikke om det vil virke også at tilføje
F.eks
iptables -A INPUT -s 192.168.1.0 -p tcp --dport 22 -j ACCEPT
Avatar billede webmasterdk Praktikant
01. august 2007 - 20:36 #4
Du kan jo starte med at lukke for alt..
Og så åbne for det du mener du har behov for, det er efter hvad jeg ved normal fremgangsmåde.
iptables -P INPUT DROP # Luk alt input
iptables -P FORWARD DROP #
iptables -P OUTPUT ACCEPT # Accepter alt output

Så skal vi sørge for at du fra dit lan interface og fra lo interface kan tilgå serveren.
iptables -A INPUT -i lo -j ACCEPT # Server can connect locally
iptables -A INPUT -i eth1 -j ACCEPT # Accepter alt trafik fra LAN

Og så til sidst tillade ssh udefra på den ønskede IP
iptables -A INPUT -s 1.8.9.7 -p tcp --dport 22 -j ACCEPT
Avatar billede centauri Nybegynder
01. august 2007 - 21:23 #5
Ja nu er det bare der køre et hav af ting på den server på alle mulige porte. Som jeg egentlig ikke have den store lyst til at skulle åbne alle sammen, ihvefald hvis det kan undgåes. De de kun bliver brugt på LAN siden, er kun port 22 der er åben ude fra nette af via NAT i routeren. Så havde håbet på der var en nem måde kun at sætte den begrænsning kun på port 22

I stil med firewall reglerne i så mange andre router som køre dem fra enden af indtil den finde en regel der passer på dem.
Således at jeg som første regel kunne have
Fra IP x.x.x.x til 22 Allow
og som anden regel
Alt til port 22 block

hvsi det da er muligt her
Avatar billede centauri Nybegynder
22. april 2009 - 09:12 #6
Desværre ingen brugbare svar her så lukker spørgsmålet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB

Cognizant Technology Solutions Denmark ApS

Senior Delivery Manager

Metroselskabet og Hovedstadens Letbane

IT Applikationsmanager