Cześć! Z góry przepraszam jeśli piszę w złym dziale, ale nie mogłem znaleźć bardziej adekwatnego. Pytałem już na wielu innych forach oraz serwerach discord i nadal nie dostałem satysfakcjonującej mnie odpowiedzi. Jest mi ktoś w stanie powiedzieć i wytłumaczyć jak powinna wyglądać najbezpieczniejsza i najbardziej przyszłościowa konfiguracja SSH? Prosiłbym o pominięcie najbardziej podstawowych rzeczy takich jak to, że powinno się używać klucza zamiast hasła lub zmienić port usługi. Chodzi mi tutaj bardziej o to w jaki sposób ten klucz wygenerować? Jaka powinna być jego długość? Jakiego algorytmu wymiany powinienem używać? Dlaczego akurat ten a nie inny? A może jakieś sztuczki w stylu port knocking? Da się zrobić, żeby SSH wymagało 2FA? Dostęp tylko przez VPNa? Co w przypadku, gdy ktoś przez X lat będzie nasłuchiwał mojej rozmowy z serwerem a do powszechnego obiegu wejdą komputery kwantowe? Kiedy możemy spodziewać się kryptografii na to odpornej? A kiedy sprawdzonych implementacji np w OpenSSH? Nie jestem w stanie znaleźć w internecie żadnych aktualnych informacji na ten temat. Jedyną stroną, która mówi coś więcej niż używaj klucza jest https://www.sshaudit.com/hardening_guides.html, ale bardziej wygląda to na teorie spiskowe niż rzetelne informacje.
0
4
- Zamiast bezpośredniego logowania kluczem to używasz CA. Klucz każdy z użytkowników generuje sobie sam. Najlepiej jakieś krzywe eliptyczne zamiast RSA (ja używam Ed25519).
- Zablokowanie całkowicie możliwości logowania hasłem.
- Tak, da się zrobić 2FA poprzez PAM.
- Przez VPNa niekoniecznie, to zależy ogólnie. Możesz mieć np. dostęp poprzez bastion zamiast bezpośrednio. Ale to wszystko zależy.
- Zmiana portu jest bardziej związana ze zmniejszeniem ruchu na porcie, by boty nie męczyły. Możesz do tego jednak użyć samego
fail2ban
. Ja zmieniam jednak, bo wtedy czyściej w logach. - Kryptografia odporna na ataki kwantowe wciąż jest rozwijana i o ile mi wiadomo, to SSH na razie nic z tego nie wspiera. Jednak krzywe są "bardziej odporne" oraz krótsze klucze dają większe bezpieczeństwo. Więc nawet z komputerami kwantowymi możesz zwyczajnie zwiększyć długość klucza i powinno być si.
1
Większość z tego linku załatwiają nowe wersje OpenSSH. Wersja 8.2 to m.in. dodanie wsparcia dla FIDO/U2F. Regularnie poprawiają też algorytmy i porzucają wsparcie dla mniej bezpiecznych metod. CA to też krok w dobrym kierunku (zarówno dla hostów jak i klientów).
https://www.openssh.com/txt/release-8.2
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.