MISP a klucze GPG potrzebne do wysyłki maili

Jeżeli na platformie MISP pojawi się problem z wysyłaniem maili (np. przy okazji generowania kodu OTP podczas logowania), a w logach (/var/www/MISP/app/tmp/logs) widnieć będzie informacja taka jak:

Error: Exception during sending e-mail
[SendEmailException] The message could not be signed by GPG.

oznacza to, że pojawił się problem z kluczem GPG, a najpewniej jego ważnością.

Jeżeli nie wiesz, czym są klucze GPG, do czego służą i jak działają, odsyłam do publikacji, np. tej: https://javaheri.pl/klucz-gpg-z-czym-sie-to-je/

Jeżeli platforma MISP, jako aplikacja webowa, uruchomiona jest na serwerze Apache, istnieje duże prawdopodobieństwo, iż jest serwowana przez usera www-data. To kluczowa kwestia, aby podgląd kluczy i ich ważności, a także proces ich odświeżenia dokonywać przez tego samego użytkownika na serwerze, przez którego serwowana jest również aplikacja.

Aby sprawdzić ważność kluczy, należy zalogować się do serwera (idealnie jako root) i przejść do lokacji:

cd /var/www/MISP/.gnupg/

Następnie, uruchom poniższą komendę, aby wylistować wszystkie klucze i otrzymać informację o ich ważności a także ich ID:

sudo -u www-data gpg --homedir /var/www/MISP/.gnupg --list-keys

Jeżeli zauważyłeś, iż wybrany klucz jest przeterminowany, należy go odświeżyć. W tym celu uruchom komendę:

sudo -u www-data gpg --homedir /var/www/MISP/.gnupg --edit-key KEYID

gdzie KEYID to identyfikator wybranego klucza.

Następnie wpisz:

gpg> expire

i wybierz odpowiednią opcję. Po wybraniu terminu ważności, wpisz:

gpg> trust

i zatwierdź odpowiednią opcję (np. Ultimately).

Polecam tego Githubowego Gista. Znajdziesz w nim szczegółowe wytłumaczenie całego procesu.

Po odświeżeniu klucza, zrestartuj serwer Apache (sudo service apache2 restart).

Od tej chwili, odświeżony klucz powinien działać prawidłowo.