Funderingar runt root/sudo och SSH - tacksam för hjälp

Permalänk
Medlem

Funderingar runt root/sudo och SSH - tacksam för hjälp

Tjena!

Jag skulle behöva lite hjälp för att reda ut lite begrepp.

Jag har en Linux-server som kör debian. Jag fick för mig att jag skulle gå in i: /etc/ssh/sshd_config för att stänga av root login, samt att lägga till port 443 (För att ha åtkomst bakom strikta brandväggar).

Jag kom på att jag hade samma lösenord på root som min user, så jag ändrade lösenordet för root.

Nu till själva frågan: varför kan jag installera saker när jag är inloggad som user, och använder lösenordet för min user och inte root?
Har alltid trott att det är lösenordet för ROOT man anger när man skriver: sudo apt-get install.

Vart lite rörigt detta, men hoppas ni förstår.

mvh

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Medlem
Skrivet av KruXen:

Nu till själva frågan: varför kan jag installera saker när jag är inloggad som user, och använder lösenordet för min user och inte root?
Har alltid trott att det är lösenordet för ROOT man anger när man skriver: sudo apt-get install.

Med sudo kan du få rättighet att köra ett kommando som en annan användare. T.ex. kan du vara med i gruppen sudo och sen ha följande i din sudoers fil:

# Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL

Men det är alltid ditt lösenord du anger vid sudo, inte användaren du vill köra som! Och kommandot:

$ sudo apt-get install <...>

Kommer (efter att du bekräftat att du är du) köra kommandot (apt-get) som root.

Permalänk
Medlem
Skrivet av pkerwien:

Med sudo kan du få rättighet att köra ett kommando som en annan användare. T.ex. kan du vara med i gruppen sudo och sen ha följande i din sudoers fil:

# Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL

Men det är alltid ditt lösenord du anger vid sudo, inte användaren du vill köra som! Och kommandot:

$ sudo apt-get install <...>

Kommer (efter att du bekräftat att du är du) köra kommandot (apt-get) som root.

Ok jag förstår. Men vad är anledningen att man vill stänga av root-inloggning på SSH om jag endå kan utföra alla kommandon via min user som
är sudoer? Har läst på en del sidor, att om man vill säkra upp sin SSH-server så ska man stänga av root.
Vill ju endå kunna starta om och mecka med servern remote, utan att det skall finnas säkerthetshål

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Medlem
Skrivet av KruXen:

Ok jag förstår. Men vad är anledningen att man vill stänga av root-inloggning på SSH om jag endå kan utföra alla kommandon via min user som
är sudoer? Har läst på en del sidor, att om man vill säkra upp sin SSH-server så ska man stänga av root.
Vill ju endå kunna starta om och mecka med servern remote, utan att det skall finnas säkerthetshål

En anledning är att det blir svårare att hacka datorn om man även måste lista ut användarnamnet, dvs man måste både gissa rätt användarnamn och lösenord.

Permalänk
Medlem
Skrivet av pkerwien:

En anledning är att det blir svårare att hacka datorn om man även måste lista ut användarnamnet, dvs man måste både gissa rätt användarnamn och lösenord.

Givetvis är det så, du har rätt. Hade inte tänkt så långt Ibland kommer man med dumma frågor hehe

Tackar för din hjälp

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Medlem

om din ssh server är tillgänglig via internet så kolla loggarna. du kommer antagligen snart att se massa bruteforce attacker där nästan alla försöker logga in som root. Fail2ban är ett trevligt litet program som skannar loggar och temp bannar folk efter ett antal misslyckade försök.

edit:

körde en sftp server ett tag. är ingen säkerhets expert men jag stängde iaf av root login och tillät bara en användare med sudo rättigheter att logga in och bara från det lokala nätverket.

Visa signatur

| Ryzen 5800x | Asus prime x470 pro | Asus rtx 3080 tuf oc | Gskill 32gb 3,6ghz | aw3225qf |

Permalänk
Medlem
Skrivet av Ragin Pig:

om din ssh server är tillgänglig via internet så kolla loggarna. du kommer antagligen snart att se massa bruteforce attacker där nästan alla försöker logga in som root. Fail2ban är ett trevligt litet program som skannar loggar och temp bannar folk efter ett antal misslyckade försök.

edit:

körde en sftp server ett tag. är ingen säkerhets expert men jag stängde iaf av root login och tillät bara en användare med sudo rättigheter att logga in och bara från det lokala nätverket.

Där ser man får installera och testa. Litar på att jag själv kommer ihåg mitt lösen hehe. Blir nog svårt att brutforca mitt lösen. Men men, man kan aldrig vara nog försiktig. Tack för tipset

Skickades från m.sweclockers.com

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Skrivet av KruXen:

Där ser man får installera och testa. Litar på att jag själv kommer ihåg mitt lösen hehe. Blir nog svårt att brutforca mitt lösen. Men men, man kan aldrig vara nog försiktig. Tack för tipset

Skickades från m.sweclockers.com

Ett väldigt bra säkerhetstips för SSH är annars att ändra porten, då de flesta robotar på nätet som försöker bruteforca sig in endast provar på default-porten.

Porten ändrar du i /etc/ssh/sshd_config. Där det står "#Port 22" så tar du bort # och ändrar siffran till porten du vill använda.

För att sedan ansluta till ssh så använder du kommandot
ssh -p 1234 user@domain
ifall porten du valt exemelvis är 1234. (notera att om du använder scp, så måste du använda -P, alltså versal istället).

Permalänk
Medlem
Skrivet av Baba Tong:

Ett väldigt bra säkerhetstips för SSH är annars att ändra porten, då de flesta robotar på nätet som försöker bruteforca sig in endast provar på default-porten.

Porten ändrar du i /etc/ssh/sshd_config. Där det står "#Port 22" så tar du bort # och ändrar siffran till porten du vill använda.

För att sedan ansluta till ssh så använder du kommandot
ssh -p 1234 user@domain
ifall porten du valt exemelvis är 1234. (notera att om du använder scp, så måste du använda -P, alltså versal istället).

Jo security through obscurity låter ju som ett jättebra tips. Bättre ide att se till att du har verklig säkerhet samt kicka botarna för att slippa se dom i loggarna.
Sen med tanke på hur lätt du kan bära med dig en sshkey idag förstår jag inte att fler inte slänger ut lösenorden

Permalänk
Skrivet av aluser:

Jo security through obscurity låter ju som ett jättebra tips. Bättre ide att se till att du har verklig säkerhet samt kicka botarna för att slippa se dom i loggarna.

Eeh vad snackar du om egentligen? Att köra SSH på default port, oavsett om du har fail2ban eller liknande installerat är en enorm säkerhetsrisk. För att maximera säkerheten är det ett absolut måste att ändra porten. Vad i hela fridens namn är enligt dig "verklig säkerhet" i detta fall?

Sedan är det väl knappast en bra idé att INTE logga bannande av bottar och jag undrar verkligen vad du menar med 'kicka' i detta sammanhang, vad vi försöker göra är ju att förhindra att en bot ansluter till att börja med, inte kicka dem när de redan är anslutna...

Skrivet av aluser:

Sen med tanke på hur lätt du kan bära med dig en sshkey idag förstår jag inte att fler inte slänger ut lösenorden

Naturligtvis är nyckelbaserad authentication betydligt säkrare. Tyvärr har man dock inte alltid möjlighet att använda sig av detta, beroende på hur ens setup ser ut.

Permalänk
Datavetare
Skrivet av aluser:

Jo security through obscurity låter ju som ett jättebra tips. Bättre ide att se till att du har verklig säkerhet samt kicka botarna för att slippa se dom i loggarna.
Sen med tanke på hur lätt du kan bära med dig en sshkey idag förstår jag inte att fler inte slänger ut lösenorden

Hade min SSH-server på port 22 och undrade varför det alltid lät som disken jobbade, antal attackförsök man utsätts via SSH var enormt. Bytte till port 2222 och antalet gick ner till något enstaka försök per månad. Rent teoretiskt har man inte ökat säkerheten med detta, men i praktiken ökar den rejält då det verkar som väldigt många bot-net har nog med servers som kör SSH på port 22 att jobba med så de bryr sig helt enkelt inte om att scanna andra portar.

Men naturligtvis ska man ändå slå av root-access via SSH och ha bra lösenord på de användare som existerar. Ännu bättre är kanske att helt slå av möjligheten att logga in via lösenord och i stället köra med HostKey/AuthorizedKeys.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Hedersmedlem

Själv har jag roat mig med att sätta upp en SSH-tarpit på port 22 där jag kan titta på hur försöken ser ut. Det brukar inte vara mycket mer avancerat än:

Connection from 116.10.191.189:17850 IP: 116.10.191.189 USER: root ATTEMPT: 1 PASS: admin IP: 116.10.191.189 USER: root ATTEMPT: 2 PASS: oracle IP: 116.10.191.189 USER: root ATTEMPT: 1 PASS: admin Connection closed from 116.10.191.189 IP: 116.10.191.189 USER: admin ATTEMPT: 2 PASS: 123456 IP: 116.10.191.189 USER: admin ATTEMPT: 2 PASS: 123456 Connection from 116.10.191.189:13259 IP: 116.10.191.189 USER: root ATTEMPT: 2 PASS: PassWord Connection from 116.10.191.189:32478 IP: 116.10.191.189 USER: root ATTEMPT: 2 PASS: oracle Connection from 116.10.191.189:19204 Connection closed from 116.10.191.189 IP: 116.10.191.189 USER: root ATTEMPT: 1 PASS: admin IP: 116.10.191.189 USER: root ATTEMPT: 3 PASS: 1qaz@WSX Connection closed from 116.10.191.189 Connection from 116.10.191.189:52759 IP: 116.10.191.189 USER: admin ATTEMPT: 3 PASS: root123 IP: 116.10.191.189 USER: admin ATTEMPT: 3 PASS: root123 IP: 116.10.191.189 USER: root ATTEMPT: 1 PASS: root123 Connection from 116.10.191.189:18727 IP: 116.10.191.189 USER: root ATTEMPT: 2 PASS: PassWord IP: 116.10.191.189 USER: root ATTEMPT: 3 PASS: abc@123 IP: 116.10.191.189 USER: root ATTEMPT: 1 PASS: admin123 IP: 116.10.191.189 USER: root ATTEMPT: 3 PASS: 1qaz@WSX Connection closed from 116.10.191.189

ibland upprepat över dagar med olika lösenordslistor.

Hade kunnat börja logga vilka lösenord som används för att få någon rolig statistik, men, tja. Jag hade också kunnat stänga ner den överhuvudtaget, men kan tycka att det är bra att suga ut lite av den datorkraft och den bandbredd som botnäten använder för att leta runt på nätet: om "alla" hade en sådan uppsatt så hade ekonomin i attackerna kanske försämrats så till den grad att fenomenet åtminstone minskat (eller transformerat till något värre ).

Visa signatur

Nu med kortare användarnamn, men fortfarande bedövande långa inlägg.

Permalänk
Medlem
Skrivet av Baba Tong:

Eeh vad snackar du om egentligen? Att köra SSH på default port, oavsett om du har fail2ban eller liknande installerat är en enorm säkerhetsrisk. För att maximera säkerheten är det ett absolut måste att ändra porten. Vad i hela fridens namn är enligt dig "verklig säkerhet" i detta fall?

Sedan är det väl knappast en bra idé att INTE logga bannande av bottar och jag undrar verkligen vad du menar med 'kicka' i detta sammanhang, vad vi försöker göra är ju att förhindra att en bot ansluter till att börja med, inte kicka dem när de redan är anslutna...

Verklig säkerhet är precis vad det låter som att din installation är säker med säkra lösenord, rätt programvaruversion, bara rätt version av ssh-protokollet aktivt, minsta möjliga rättigheter på alla nivåer av din härdade ssh-bastion och självklart gärna ssh-nycklar alt flerfaktor eller enbart one time password osv.

Vad gäller kicka tänkte jag irc då man ofta gör kick följt av ban då användaren finns i kanalen. fail2ban blockar ip:t efter x misslyckade försök till ssh så i princip kick från ssh och ban från fail2ban.

Visst dom loggas x+1 gånger. x från ssh 1 från fail2ban vad jag kommer ihåg.
Flyttar du porten så ansluter förvisso färre rena sshbottar men som sagt med verklig säkerhet är dom sällan nåt direkt hot då dom väldigt sällan bruteforcar tillräckligt säkra lösenord. Men förvisso oddsen kanske minskar något när det kommer en zero-day dock misstänker jag att det är marginellt då det är känt att folk flyttar ssh.
Svårt att se att du kan låta bli att köra fail2ban för att du kör den på alternativ port för bottar kan fortfarande hitta dit.
Fast om du nu säger att man maximerar säkerheten genom att flytta sshporten bör du ju isåfall även kombinera det med portknocking då det ökar säkerheten ännu mer då korrekt knocksekvens är svår att replikera med en slumpmässig portscan.

En ståldörr är en ståldörr oavsett om den är gömd bakom en buske eller inte. Visst något färre idioter kommer försöka sparka sönder den för att dom inte ser den för busken men dom som ser den trots busken är mer troligt dom som skulle varit ett hot ändå.

Permalänk
Skrivet av aluser:

Verklig säkerhet är precis vad det låter som att din installation är säker med säkra lösenord, rätt programvaruversion, bara rätt version av ssh-protokollet aktivt, minsta möjliga rättigheter på alla nivåer av din härdade ssh-bastion och självklart gärna ssh-nycklar alt flerfaktor eller enbart one time password osv.

Vad gäller kicka tänkte jag irc då man ofta gör kick följt av ban då användaren finns i kanalen. fail2ban blockar ip:t efter x misslyckade försök till ssh så i princip kick från ssh och ban från fail2ban.

Visst dom loggas x+1 gånger. x från ssh 1 från fail2ban vad jag kommer ihåg.
Flyttar du porten så ansluter förvisso färre rena sshbottar men som sagt med verklig säkerhet är dom sällan nåt direkt hot då dom väldigt sällan bruteforcar tillräckligt säkra lösenord. Men förvisso oddsen kanske minskar något när det kommer en zero-day dock misstänker jag att det är marginellt då det är känt att folk flyttar ssh.
Svårt att se att du kan låta bli att köra fail2ban för att du kör den på alternativ port för bottar kan fortfarande hitta dit.
Fast om du nu säger att man maximerar säkerheten genom att flytta sshporten bör du ju isåfall även kombinera det med portknocking då det ökar säkerheten ännu mer då korrekt knocksekvens är svår att replikera med en slumpmässig portscan.

En ståldörr är en ståldörr oavsett om den är gömd bakom en buske eller inte. Visst något färre idioter kommer försöka sparka sönder den för att dom inte ser den för busken men dom som ser den trots busken är mer troligt dom som skulle varit ett hot ändå.

Jag tror att fördelarna med en annan port vid en eventuell zero-day är mer än marginella, om du inte har en server av särskilt intresse för någon illasinnad. Det tar trots allt en bra stund att scanna alla portar i hela adressrymden.

Skickades från m.sweclockers.com

Permalänk
Skrivet av KruXen:

Tjena!

Jag skulle behöva lite hjälp för att reda ut lite begrepp.

Jag har en Linux-server som kör debian. Jag fick för mig att jag skulle gå in i: /etc/ssh/sshd_config för att stänga av root login, samt att lägga till port 443 (För att ha åtkomst bakom strikta brandväggar).

Jag kom på att jag hade samma lösenord på root som min user, så jag ändrade lösenordet för root.

Nu till själva frågan: varför kan jag installera saker när jag är inloggad som user, och använder lösenordet för min user och inte root?
Har alltid trott att det är lösenordet för ROOT man anger när man skriver: sudo apt-get install.

Vart lite rörigt detta, men hoppas ni förstår.

mvh

Du kan lägga till Defaults rootpw i /etc/sudoers så att root-lösenordet krävs istället för användarens eget vid användning av sudo. Det känns som en vettig inställning när sudo-användaren och root är samma fysiska person som ändå har båda lösenorden. Då krävs att ett extra lösenord knäcks innan du har ett rootkit installerat (eller troligare något lokalt hål som leder till privilege escalation).

Skickades från m.sweclockers.com

Permalänk
Medlem
Skrivet av Baba Tong:

Ett väldigt bra säkerhetstips för SSH är annars att ändra porten, då de flesta robotar på nätet som försöker bruteforca sig in endast provar på default-porten.

Porten ändrar du i /etc/ssh/sshd_config. Där det står "#Port 22" så tar du bort # och ändrar siffran till porten du vill använda.

För att sedan ansluta till ssh så använder du kommandot
ssh -p 1234 user@domain
ifall porten du valt exemelvis är 1234. (notera att om du använder scp, så måste du använda -P, alltså versal istället).

Bra tips! Ändrade porten. Nu ska jag bara lära mig att läsa loggarna och installera fail2ban som jag fick tips om tidigare. Är ganska grön på Linux, men det brukar lösa sig med lite googlande och hjälp från swec ☺

Skickades från m.sweclockers.com

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Medlem
Skrivet av Yoshman:

Hade min SSH-server på port 22 och undrade varför det alltid lät som disken jobbade, antal attackförsök man utsätts via SSH var enormt. Bytte till port 2222 och antalet gick ner till något enstaka försök per månad. Rent teoretiskt har man inte ökat säkerheten med detta, men i praktiken ökar den rejält då det verkar som väldigt många bot-net har nog med servers som kör SSH på port 22 att jobba med så de bryr sig helt enkelt inte om att scanna andra portar.

Men naturligtvis ska man ändå slå av root-access via SSH och ha bra lösenord på de användare som existerar. Ännu bättre är kanske att helt slå av möjligheten att logga in via lösenord och i stället köra med HostKey/AuthorizedKeys.

Försökte mig på att köra med nyckel via putty, det gick åt helvete hehe. Stod att servern nekade min key. Men ska göra ett nytt försök via min laptop som har Linux installerat

Skickades från m.sweclockers.com

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Medlem
Skrivet av Yoshman:

Hade min SSH-server på port 22 och undrade varför det alltid lät som disken jobbade, antal attackförsök man utsätts via SSH var enormt. Bytte till port 2222 och antalet gick ner till något enstaka försök per månad. Rent teoretiskt har man inte ökat säkerheten med detta, men i praktiken ökar den rejält då det verkar som väldigt många bot-net har nog med servers som kör SSH på port 22 att jobba med så de bryr sig helt enkelt inte om att scanna andra portar.

Men naturligtvis ska man ändå slå av root-access via SSH och ha bra lösenord på de användare som existerar. Ännu bättre är kanske att helt slå av möjligheten att logga in via lösenord och i stället köra med HostKey/AuthorizedKeys.

Kollade /var/log/auth.log.1

Det var MÅNGA inloggningsförsök kan jag lova. Läskigt att se

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Medlem
Skrivet av Ragin Pig:

om din ssh server är tillgänglig via internet så kolla loggarna. du kommer antagligen snart att se massa bruteforce attacker där nästan alla försöker logga in som root. Fail2ban är ett trevligt litet program som skannar loggar och temp bannar folk efter ett antal misslyckade försök.

edit:

körde en sftp server ett tag. är ingen säkerhets expert men jag stängde iaf av root login och tillät bara en användare med sudo rättigheter att logga in och bara från det lokala nätverket.

Kikade på mina loggar, Och mkt riktigt, EN JÄVLA MASSA BRUTEFORCE. Antar att detär /var/log/auth.log man kikar i?
Hur funkar Fail2Ban? hur sätter man upp det?
mvh

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Hedersmedlem
Skrivet av KruXen:

Kikade på mina loggar, Och mkt riktigt, EN JÄVLA MASSA BRUTEFORCE. Antar att detär /var/log/auth.log man kikar i?
Hur funkar Fail2Ban? hur sätter man upp det?
mvh

sudo apt-get install fail2ban

Klart . Det kommer med en del standardregler om jag minns rätt, för exempelvis SSH.

Visa signatur

Nu med kortare användarnamn, men fortfarande bedövande långa inlägg.

Permalänk
Medlem
Skrivet av phz:

sudo apt-get install fail2ban

Klart . Det kommer med en del standardregler om jag minns rätt, för exempelvis SSH.

Sådär, installerat
Skummade igenom config och jag tror man får göra lite ändringar så det passar när man inte kör default ssh port. Så loggarna hamnar rätt.

Anyway, tack för tipset. Kanske blir lite lugnare nu

Skickades från m.sweclockers.com

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Hedersmedlem
Skrivet av KruXen:

Sådär, installerat
Skummade igenom config och jag tror man får göra lite ändringar så det passar när man inte kör default ssh port. Så loggarna hamnar rätt.

Den kommer hitta "brute force"-försök även om man inte ställer in "rätt" port, eftersom den bara tittar på tjänstens logg. Det portnumret används till är att definiera vilka portanslutningar från det "elaka" IP:t som ska blockas. Man kan även ställa in `fail2ban` på att blocka klienten på alla portar; då kvittar det vilken port man angivit för tjänsten i fråga.

Kan också notera att om du flyttar din SSH-server från standardporten så kommer `fail2ban` troligen aldrig få något att göra, då i praktiken alla dessa oriktade "brute force"-försök siktar på port 22 (i mindre grad även 222, 2222, samt liknande "vanliga" alternativa portar). Jag tror inte SSH-filtret i `fail2ban` har kickat in här på flera år sedan jag ändrade port, även om det fortsätter att banka konstant på port 22. Det är inte fel att behålla `fail2ban` aktivt ändå; tänkte bara nämna det så att du inte tror att det inte fungerar bara för att det inte nödvändigen loggar några "brute force"-försök. Testa själv att göra några misslyckade inloggningsförsök från en fjärrserver för att se om det fungerar.

Visa signatur

Nu med kortare användarnamn, men fortfarande bedövande långa inlägg.

Permalänk
Medlem
Skrivet av phz:

Den kommer hitta "brute force"-försök även om man inte ställer in "rätt" port, eftersom den bara tittar på tjänstens logg. Det portnumret används till är att definiera vilka portanslutningar från det "elaka" IP:t som ska blockas. Man kan även ställa in `fail2ban` på att blocka klienten på alla portar; då kvittar det vilken port man angivit för tjänsten i fråga.

Kan också notera att om du flyttar din SSH-server från standardporten så kommer `fail2ban` troligen aldrig få något att göra, då i praktiken alla dessa oriktade "brute force"-försök siktar på port 22 (i mindre grad även 222, 2222, samt liknande "vanliga" alternativa portar). Jag tror inte SSH-filtret i `fail2ban` har kickat in här på flera år sedan jag ändrade port, även om det fortsätter att banka konstant på port 22. Det är inte fel att behålla `fail2ban` aktivt ändå; tänkte bara nämna det så att du inte tror att det inte fungerar bara för att det inte nödvändigen loggar några "brute force"-försök. Testa själv att göra några misslyckade inloggningsförsök från en fjärrserver för att se om det fungerar.

Du tog orden ur munnen på mig lyssnade på port 22 + en annan port. Så plockade bort port 22 i samma veva som jag installerade fail2ban. Mkt riktigt, inga fler bf försök. Ska testa att göra ett par felaktiga inloggningar. Ser man dom i auth.log lr fail2ban.log? Dvs där man ser att f2b har vidtagit åtgärder.
Mvh

Skickades från m.sweclockers.com

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Hedersmedlem
Skrivet av KruXen:

Du tog orden ur munnen på mig lyssnade på port 22 + en annan port. Så plockade bort port 22 i samma veva som jag installerade fail2ban. Mkt riktigt, inga fler bf försök. Ska testa att göra ett par felaktiga inloggningar. Ser man dom i auth.log lr fail2ban.log? Dvs där man ser att f2b har vidtagit åtgärder.

`fail2ban` har en egen logg i `/var/log/fail2ban.log` där blockeringar ska loggas (men inte "korrekta" inloggningar). Du märker ju också om din fjärrserver inte längre får kontakt med din SSH-server.

SSH-inloggningsförsök loggas "som vanligt" i `/var/log/auth.log`, om du nu har maskinen inställd på att logga där (har du inte medvetet gjort något fuffens så ska det vara så). Kör du Debian Unstable så kan ditt system ha migrerats till `systemd`, vilket inte är något problem och du lär fortfarande ha loggning till filer i `/var/log`, men du kan då även se det via `journalctl` i ett lite annat format.

Visa signatur

Nu med kortare användarnamn, men fortfarande bedövande långa inlägg.

Permalänk
Medlem

Läste genom inläggen lite snabbt så jag kanske har missat detta. Men om du ändrar porten på SSHd så glöm inte att ändra porten som fail2ban ska övervaka också. Så den inte står på 22 när du har ändrat till ex 2222.

Visa signatur

.

Permalänk
Skrivet av fragwolf:

Läste genom inläggen lite snabbt så jag kanske har missat detta. Men om du ändrar porten på SSHd så glöm inte att ändra porten som fail2ban ska övervaka också. Så den inte står på 22 när du har ändrat till ex 2222.

En annan sak som dessutom är viktig:

Om du är den enda som använder servern kan du ändra porten till vilken som helst i princip.

Är datorn delad, se till att välja en port under 1024. Portarna <1024 kan nämligen endast öppnas av root, de däröver av vem som helst. Ett teoretiskt scenario är alltså att en användare utan root-tillgång lyckas krascha OpenSSH och sedan sätter igång en fejk-ssh-server på samma port för att se ditt lösenord nästa gång du försöker logga in. Det bästa skyddet mot detta är naturligtvis att använda keybased authentication.

Permalänk
Medlem
Skrivet av Baba Tong:

En annan sak som dessutom är viktig:

Om du är den enda som använder servern kan du ändra porten till vilken som helst i princip.

Är datorn delad, se till att välja en port under 1024. Portarna <1024 kan nämligen endast öppnas av root, de däröver av vem som helst. Ett teoretiskt scenario är alltså att en användare utan root-tillgång lyckas krascha OpenSSH och sedan sätter igång en fejk-ssh-server på samma port för att se ditt lösenord nästa gång du försöker logga in. Det bästa skyddet mot detta är naturligtvis att använda keybased authentication.

Men är inte dom portarna reserverade? Vet ju att folk kör https (443) ibland för att komma förbi brandväggar och sånt men. Haru lust att förklara det där med portarna. Trodde öppning av portarna sker via brandväggen (pfsense i mitt fall) och man talar om i config vilken port ssh ska lyssna på. Kan ju iof ha missat något lät intressant det där med att vissa portar endast öppnas av root.

Ska försöka få till det där med nycklar, så blir det enklare

Skickades från m.sweclockers.com

Visa signatur

Processor: Intel® Core™ i7 920 @ 4Ghz | Grafikkort: XFX Radeon 6970 2048Mb (Crossfire]| CPU-kylare: Corsair H50 | Ram-minne: Corsair Dominator™ DDR3 1600MHz 6GB CL9 | Nätaggregat: Corsair AX 850W | Chassi: Fractal Design Arc | Moderkort: Asus P6T Deluxe V2 | SSD-Hårddisk: Corsair F60 (Raid-0] |

Permalänk
Hedersmedlem
Skrivet av KruXen:

Men är inte dom portarna reserverade? Vet ju att folk kör https (443) ibland för att komma förbi brandväggar och sånt men. Haru lust att förklara det där med portarna. Trodde öppning av portarna sker via brandväggen (pfsense i mitt fall) och man talar om i config vilken port ssh ska lyssna på. Kan ju iof ha missat något lät intressant det där med att vissa portar endast öppnas av root.

Ska försöka få till det där med nycklar, så blir det enklare

Det är högst troligen `root` (eller motsvarande) som administrerar systemets brandvägg, men vad det handlar om här är att enbart `root` får starta tjänster som binder till ett portnummer lägre än 1024 på en viss enhet. Om en vanlig användare vill starta en tjänst så får den snällt välja en port att lyssna på i intervallet 1024–65535 (vid normal konfiguration); huruvida systemets brandvägg släpper igenom anrop till dessa portar överhuvudtaget är en annan fråga.

Skulle man som `root` köra SSH-servern på exempelvis port 2222 så skulle "potentiellt" en elak "vanlig" användare i systemet kunna utnyttja någon bugg, överbelastningsattack eller något annat som gör att SSH-servern dör, och därefter starta sin egen fejk-SSH-server som exempelvis loggar anslutande användares lösenord på samma port.

"Reserverade portar" nämner du, och du tänker troligen på att vissa portar "hör till" vissa tjänster, så som FTP:21, SSH:22, Telnet:23, HTTP:80, HTTPS:443, osv. Detta är ingen "hård reservation" utan snarare rekommendationer som gör att vi enklare kan kommunicera med varandra. Eftersom vi använder dessa konventioner så kan en klient på min dator kvalificerat "gissa" vilken port jag ska ansluta till för att prata med rätt tjänst på en fjärrserver. Anropar jag http://www.dn.se/ så implicerar detta port 80; hade denna konvention inte funnits så hade man behövt hålla ett extra register över vilka portar en viss webbserver kördes på, etc.

Som du själv säger så finns det vissa som har anledning att köra SSH över port 443 för att nå genom brandväggar under extern kontroll, och det är i teori och praktik fritt att använda vilka konventioner man vill (men som alltid är det ju enklast om alla använder samma konvention, vilket är anledningen till att de överhuvudtaget finns).

Visa signatur

Nu med kortare användarnamn, men fortfarande bedövande långa inlägg.

Permalänk
Medlem

Jag har stängt av lösenord o använder 128bit pub key för inloggning.

Edit: Hade visst testats.