Obok szyfrowania wiadomości i korzystania z podpisu elektronicznego, jednym z najskuteczniejszych i najmniej kosztownych sposobów ochrony poczty elektronicznej przed włamaniami jest dobrze zdefiniowana polityka bezpieczeństwa haseł. Hasła zapisane na kartkach papieru, przechowywane w ogólnodostępnych plikach lub po prostu niezbyt skomplikowane hasła zawsze stanowią poważną lukę w bezpieczeństwie informacji firmy i mogą prowadzić do poważnych incydentów z wymiernymi konsekwencjami dla biznesu. Dlatego każda firma powinna mieć rygorystyczną politykę bezpieczeństwa haseł.

Jednak każdy specjalista ds. bezpieczeństwa wie, że polityka haseł przyniesie rezultaty tylko wtedy, gdy nie tylko będzie istniała, ale również będzie ściśle przestrzegana przez wszystkich, a przynajmniej przez kluczowych pracowników organizacji. Osiągnięcie tego jest trudniejsze, niż się wydaje. Już i tak mocno obciążeni pracownicy często zapominają o konieczności zmiany hasła, lub idą na łatwiznę, za każdym razem upraszczając hasło, co w konsekwencji niweczy cały efekt. Dlatego też kwestia przestrzegania polityki haseł w firmach zazwyczaj rozwiązywana jest za pomocą różnych środków technicznych.
Aby monitorować przestrzeganie polityki haseł w Zimbrze, nie będą potrzebne żadne zewnętrzne aplikacje. Można to osiągnąć przy użyciu wbudowanych narzędzi.
Na początek warto zrozumieć, jak działa zarządzanie hasłami w Zimbrze. W momencie tworzenia nowego konta administrator przypisuje mu tymczasowe hasło. Po tym użytkownik będzie mógł samodzielnie zalogować się na konto i zmienić hasło. Wszystkie hasła są przechowywane w zaszyfrowanej formie na serwerze serwerze Zimbry i dzięki temu są niedostępne nawet dla administratora serwera. Dlatego jeśli użytkownik zapomni hasła, będzie musiał stworzyć nowe. Przypomnijmy, że do niedawna w celu utworzenia nowego hasła wymagana była pomoc administratora, ale w najnowszej wersji Zimbra Creative Suite 8.8.9 dodano możliwość samodzielnego ustawienia nowego hasła przez użytkowników.

Ustawienia polityki haseł można znaleźć w ustawieniach poszczególnych użytkowników i grup użytkowników. Można skonfigurować:
- Długość hasła — umożliwia ustawienie minimalnej i maksymalnej długości hasła. Domyślnie minimalna długość hasła wynosi 6 znaków, a maksymalna — 64.
- Wiek hasła — pozwala ustawić czas, po którym hasło staje się nieważne. Użytkownicy nie muszą czekać na wygaśnięcie hasła, mogą je zmienić jeszcze przed upływem tego czasu.
- Minimalna liczba wielkich liter — pozwala ustawić minimalną liczbę wielkich liter używanych w haśle.
- Minimalna liczba małych liter — pozwala ustawić minimalną liczbę małych liter używanych w haśle.
- Minimalna liczba cyfr — pozwala ustawić minimalną liczbę cyfr od 0 do 9 używanych w haśle.
- Minimalna liczba znaków interpunkcyjnych — pozwala ustawić minimalną liczbę znaków interpunkcyjnych i symboli specjalnych używanych w haśle.
- Wymóg historii haseł — pozwala ustawić liczbę zapamiętanych haseł, aby użytkownik nie używał okresowo powtarzających się haseł.
- Zablokowanie haseł — ta opcja pozwala zablokować użytkownikowi możliwość zmiany hasła.
- Włącz blokadę po nieudanym logowaniu — ta opcja pozwala skonfigurować reakcję systemu na wprowadzanie błędnego hasła.
Jak widać, ustawienia haseł w Zimbrze są dość elastyczne i mogą dostosować się do polityki haseł w praktycznie każdej firmie. Dodatkowo, dzięki prostemu skryptowi, można skonfigurować wysyłanie przypomnień do użytkowników, że czas ważności ich hasła wkrótce się kończy. Dzięki temu przypomnieniu, pracownik będzie mógł w spokoju zmienić hasło, podczas gdy nieotwierająca się rano poczta pracownika, który przegapił moment zmiany hasła, może negatywnie wpłynąć na jego efektywność.
Aby ten skrypt działał, należy skopiować go do pliku i uczynić ten plik wykonywalnym. Zaleca się zautomatyzowanie uruchamiania tego skryptu za pomocą Cron, tak aby codziennie powiadamiał użytkowników, którzy od dawna nie aktualizowali hasła, że wkrótce przestanie funkcjonować. Ponadto, w skrypcie zamiast zimbra.server.com należy wstawić nazwę własnego serwera. domeny.
#!/bin/bash
# Задаем ряд переменных:
# Сперва количество дней для первого напоминания, затем для последнего:
FIRST="3"
LAST="1"
# Задаем адрес отправителя:
FROM="admin@zimbra.server.com"
# Задаем адрес получателя, который будет получать письмо со списком аккаунтов с истекшими паролями
ADMIN_RECIPIENT="admin@zimbra.server.com"
# Указываем путь к исполняемому файлу Sendmail
SENDMAIL=$(ionice -c3 find /opt/zimbra/common/sbin/sendmail* -type f -iname sendmail)
# Получаем список всех пользователей.
USERS=$(ionice -c3 /opt/zimbra/bin/zmprov -l gaa $DOMAIN)
# Указываем дату с точностью до секунды:
DATE=$(date +%s)
# Проверяем каждого из них:
for USER in $USERS
do
# Узнаем, когда был установлен пароль
USERINFO=$(ionice -c3 /opt/zimbra/bin/zmprov ga "$USER")
PASS_SET_DATE=$(echo "$USERINFO" | grep zimbraPasswordModifiedTime: | cut -d " " -f 2 | cut -c 1-8)
PASS_MAX_AGE=$(echo "$USERINFO" | grep "zimbraPasswordMaxAge:" | cut -d " " -f 2)
NAME=$(echo "$USERINFO" | grep givenName | cut -d " " -f 2)
# Проверяем, нет ли среди пользователей тех, у кого срок действия пароля уже истек.
if [[ "$PASS_MAX_AGE" -eq "0" ]]
then
continue
fi
# Высчитываем дату окончания действия паролей
EXPIRES=$(date -d "$PASS_SET_DATE $PASS_MAX_AGE days" +%s)
# Считаем, сколько дней осталось до окончания срока действия пароля
DEADLINE=$(( (($DATE - $EXPIRES)) / -86400 ))
# Отправляем письмо пользователям
SUBJECT="$NAME - Ваш пароль станет недействительным через $DEADLINE дней"
BODY="
Здравствуйте, $NAME,
Пароль вашего аккаунта станет недействительным через $DEADLINE дней, Пожалуйста, создайте новый как можно скорее.
Вы можете также создать напоминание о смене пароля в календаре Zimbra.
Заранее спасибо.
С уважением, IT-отдел
"
# Первое предупреждение
if [[ "$DEADLINE" -eq "$FIRST" ]]
then
echo "Subject: $SUBJECT" "$BODY" | $SENDMAIL -f "$FROM" "$USER"
echo "Reminder email sent to: $USER - $DEADLINE days left"
# Последнее предупреждение
elif [[ "$DEADLINE" -eq "$LAST" ]]
then
echo "Subject: $SUBJECT" "$BODY" | $SENDMAIL -f "$FROM" "$USER"
echo "Reminder email sent to: $USER - $DEADLINE days left"
# Final
elif [[ "$DEADLINE" -eq "1" ]]
then
echo "Subject: $SUBJECT" "$BODY" | $SENDMAIL -f "$FROM" "$USER"
echo "Last chance for: $USER - $DEADLINE days left"
fi
doneMożna zatem powiedzieć, że Zimbra Collaboration Suite doskonale sprawdzi się nawet w firmach, które wdrożyły surową politykę haseł, a dzięki wbudowanym funkcjom łatwo będzie wymusić jej przestrzeganie przez pracowników.
Wszystkie pytania dotyczące Zextras Suite prosimy kierować do przedstawicielki firmy „Zextras” Katarzyny Triandaafilii pod adresem e-mail katerina@zextras.com
Źródło: habr.com
