Zwiększamy bezpieczeństwo serwera ejabberd!

Ostatnio pisałem o tym, jak na Raspberry Pi postawić serwer ejabberd i go poprawnie skonfigurować. A co z bezpieczeństwem? Z tego co zauważyłem, to mało kto zwraca na to uwagę, a to bardzo ważne. Stan bezpieczeństwa serwera Jabber można sprawdzić na stronie IM Observatory. Początkowo mój serwer otrzymał ocenę F, czyli najgorszą z możliwych. Na szczęście, po wielu próbach, udało mi osiągnąć ocenę A (wyniki testu: c2s s2s)! Poniżej przygotowałem opis, co należy zrobić, aby uzyskać dobrą ocenę.

Pisałem o tym już ostatnio, ale się powtórzę. Podstawą jest to, aby nasz serwer miał prawidłowy certyfikat SSL! Certyfikaty self-signet zwyczajnie nie wchodzą w grę, bez tego automatycznie dostaniemy ocenę F! Certyfikat można uzyskać za darmo od StartSSL, wystarczy poświęcić dosłownie parę minut na jego wygenerowanie. Mając już certyfikat (w jednym pliku kolejno klucz prywatny + certyfikat domeny + Class 1 Intermediate Server CA + StartCom Root CA) umieszczamy go w np. /etc/ejabberd/beherit.pl.pem i definiujemy w ustawieniach ejabberd (szukając frazy „domain_certfile”):

Jak już mamy otwarty plik ustawień, to przy okazji zmieniamy ustawienia połączeń klient-serwer:

Chodzi głównie o dodanie starttls_required. Niestety nie polecam dodanie starttls_required dla połączeń s2s, gdyż zwyczajnie stracimy kontakt z większością serwerów Jabber – dla s2s po prostu zostawiamy domyślną wartość:

Teraz zabieramy się za nieco trudniejszą cześć, na początek doinstalowujemy dodatkowe rzeczy do biblioteki OpenSSL:

Następnie ściągamy i instalujemy TLS Interposer, który wyłączy SSLv2 i SSLv3 oraz inne słabe algorytmy (przede wszystkim RC4):

W tym momencie TLS Interposer jest już zainstalowany, pozostaje dokonać edycji ejabberd – lecimy:

W otwartym pliku szukamy następujących linijek:

Między te dwie linijki wpisujemy:

Aby zmiany weszły w życie należy jeszcze tylko zrestartować nasz serwer:

Gotowe! Na koniec sprawdzamy ocenę naszego serwera na IM Observatory.

2 komentarze do wpisu „Zwiększamy bezpieczeństwo serwera ejabberd!”

    • I tak i nie To są podstawowe rzeczy, aby zapewnić bezpieczeństwo, jest jeszcze parę innych rzeczy, które należy wziąć pod uwagę przy stawianiu serwera XMPP. Poza tym ten wpis ma już rok, od tego czasu już mam serwer XMPP ja VPSie i tam trochę inaczej to wszystko zrobiłem

Dodaj komentarz