Walka ze spamem cz.5 – Dovecot Sieve

Korzystając z poprzednich wpisów, uruchomiliśmy 4 narzędzia, których celem jest zatrzymanie spamu, jak i identyfikacja tych pojedynczych maili, które się przedostaną czy są częścią spam-sieci 😉

Ale w rzeczywistości, jeżeli spam do nas trafi, znajdować będzie się w skrzynce odbiorczej, gdyż żadne z skonfigurowanych przez nas narzędzi nie manipuluje wiadomościami email i ich lokalizacją.

Jeżeli skorzystaliście z wpisu dotyczącego skonfigurowania własnego serwera poczty, znaczy to, że wykorzystujecie Dovecot jako pośrednika w zarządzaniu mailami poprzez IMAP. Sieve jest swego rodzaju dodatkiem, który sukcesywnie przenosi maile między folderami.

Instalacja;

Już prawie:

Niech sieve wciągnie sobie filtr:

I jesteśmy gotowi:

 

Teraz jeżeli SpamAssassin oznaczy jakiś mail trafi on do folderu JUNK/Śmieci

 

Pozostałe wpisy dotyczące tego cyklu:

Posftix i Dovecot – Idealny duet tworzący serwer poczty

Walka ze spamem cz.1 – Postfix SPF

Walka ze spamem cz.2 – Postfix DKIM

Walka ze spamem cz.3 – Postfix DMARC

Walka ze spamem cz.4 – Postfix SpamAssassin

Facebooktwittergoogle_plusreddit

Walka ze spamem cz.4 – Postfix SpamAssassin

SpamAssasin to ostatnia broń w naszym arsenale przygotowanym na wszelki spam jaki może się pojawić na naszym serwerze poczty.

 

Zainstalujmy więc wymagane paczki:

Dodajmy użytkownika, który będzie uruchamiał spammassassin-a

Użytkownika już mamy, teraz czas skonfigurować SA:

Uruchommy SA:

Dodajmy SpamAssassin-a do postfixa:

Zrestartujmy postfix-a:

Musimy jeszcze utworzyć reguły filtrowania:

Restart SA dla pewności, że korzysta z naszych nowych reguł:

Aby przetestować SpamAssassin-a można z obcego serwera wysłać maila na swoją skrzynkę w postfix-ie i przeglądnąć nagłówek wiadomości.

 

Aktualizacja 11/05/2016:

Zauważyłem, że spamassassin informuje o błędzie

Można to łatwo naprawić komentując use_dcc lub instalując paczkę z dcc i nie używać tego modułu (bezcelowe).

 

Pozostałe wpisy dotyczące tego cyklu:

Posftix i Dovecot – Idealny duet tworzący serwer poczty

Walka ze spamem cz.1 – Postfix SPF

Walka ze spamem cz.2 – Postfix DKIM

Walka ze spamem cz.3 – Postfix DMARC

Walka ze spamem cz.5 – Dovecot Sieve

Facebooktwittergoogle_plusreddit

Walka ze spamem cz.3 – Postfix DMARC

Domain-based Message Authentication, Reporting and Conformance (DMARC) is an email validation system designed to detect and prevent email spoofing. It provides a mechanism which allows a receiving organization to check that incoming mail from a domain is authorized by that domain’s administrators and that the email (including attachments) has not been modified during transport – Wikipedia

 

Wpis ten jest kontynuacją postów dotyczących walki ze spamem, poprzednio skonfigurowaliśmy SPF oraz DKIM, korzystaliśmy z serwera postfix-a, którzy uwcześnie skonfigurowaliśmy.

 

Zainstalujmy paczkę, która będzie niezbędna:

Skonfigurujmy nowo zainstalowany soft:

To nie wszystko

Dodajmy hosty, których nie skanujemy – nas ?!

Zakładając, że korzystaliście z poprzednich wpisów na porcie 12301 posiadamyt DKIM, więc śmiało możemy dla DMARC wykorzystać port 54321:

Możemy uruchomić opendmarc, przy okazji sprawdzają czy nie mamy typo 🙂 lub czy coś nie siedzi na wybranym przez nas porcie:

 

Powiadommy postfixa, że chcemy korzystać z kolejnego rozwiązania dla wyłapywania spamu:

Pamiętajmy, że pierwsza pozycja obu wpisów dotyczy DKIM, a druga naszego DMARC-a 🙂

Zrestartujmy postfixa, niech biedak już nie czeka na nowy config 😉

 

Jako, że DMARC korzysta z DKIM i SPF, musimy mieć odpowiedni wpis DNS, w internecie jest pełno „wizardów”, które wygenerują wam wpis ja polecam takowy:

 

Teoretycznie można by tutaj zakończyć, jednak pełna implementacja DMARC wymaga generowania i wysyłania raportów – o czym administratorzy zapominają.

Wpis ten widnieje w pliku ale jest zakomentowany, dzięki niemu utworzony zostanie użytkownik opendmarc, jego hasło oraz baza 🙂

Wczytajmy schemat:

Utwórzmy skrypt do  generowania raportów:

Sam skrypt na niewiele się zda jeżeli nie bedzie wykonywał się w harmonogramie:

 

Warto było by przeglądać maile z raportami jakie wysyłamy do innych administratorów korzystających z DMARC-a, zrobimy to poprzez mały wpis do postfixa:

Jeszcze tylko restart postfix-a, w celu wczytania nowego configa:

 

W celu przetestowania naszego nowego narzędzia możemy wysłać na inną skrzynkę maila testowego (mail musi być na zewnątrz naszego serwera, ale także musi obsługiwać DMARC np. gmail).

W nagłówku powinniśmy widzieć wpis od DMARCu. Jeżeli już skończymy testy pamiętajmy o usunięciu wpisu z config-a, który był dodany w celu testu:

Szybki restart:

 

 

W ten sposób ludzie otrzymujący maile z domeny, która obsługujesz powinni mieć pewność, że maile są legalne 🙂

 

Pozostałe wpisy dotyczące tego cyklu:

Posftix i Dovecot – Idealny duet tworzący serwer poczty

Walka ze spamem cz.1 – Postfix SPF

Walka ze spamem cz.2 – Postfix DKIM

Walka ze spamem cz.4 – Postfix SpamAssassin

Walka ze spamem cz.5 – Dovecot Sieve

Facebooktwittergoogle_plusreddit

Walka ze spamem cz.2 – Postfix DKIM

DomainKeys Identified Mail (DKIM) – metoda łączenia domeny internetowej z wiadomością email, przez to pozwalająca organizacji brać odpowiedzialność za treść emaila. Sygnatura DKIM zabezpiecza przed podszywaniem się pod nadawcę (e-mail spoofing) z innych domen. – Wikipedia

 

Jest to kontynuacją ciągu postów na temat walki z spamem na własnych serwerach poczty opartych o Postfix.

 

Instalujemy niezbędne paczki:

Konfigurujemy opendkim, jeżeli port 12301 jest zajęty zmieńmy go tutaj i pamiętajmy by w innych miejscach zrobić to także:

Poinformujmy postfix-a, że ma kolejne narzędzie do zwalczania spamu:

Jeżeli w smtpd_milters i/lub non_smtpd_milters mamy już jakieś wpisy można dodać nowe po przecinku

Utwórzmy teraz foldery i pliku konfiguracyjne, które wskazaliśmy jako tablice źródłowe:

Teraz musimy wygenerować klucze, które posłużą do mechanizmu DKIM:

Teraz będziemy musieli dodać klucz do wpisu domeny w rekordzie TXT, aby to zrobić musimy wyświetlicz klucz i dodać następujący wpis:

Zrestartujmy teraz wszystkie usługi, w których zmienialiśmy konfigurację:

Aby przetestować czy udało nam sie dodać mechanizm DKIM można wysłać mail na adres: check-auth(at)verifier.port25.com

 

Pozostałe wpisy dotyczące tego cyklu:

Posftix i Dovecot – Idealny duet tworzący serwer poczty

Walka ze spamem cz.1 – Postfix SPF

Walka ze spamem cz.3 – Postfix DMARC

Walka ze spamem cz.4 – Postfix SpamAssassin

Walka ze spamem cz.5 – Dovecot Sieve

Facebooktwittergoogle_plusreddit

Walka ze spamem cz.1 – Postfix SPF

Sender Policy Framework (SPF) – niekomercyjny projekt mający na celu wprowadzenie zabezpieczenia serwerów SMTP przed przyjmowaniem poczty z niedozwolonych źródeł. Ma to pozytywnie wpłynąć na ograniczenie liczby wiadomości mailowych będących spamem. – Wikipedia

 

Zakładam, że macie już uruchomiony serwer postfix. Wszelkie konfiguracje oparte są o założenie, że korzystaliście z tego tutoriala: Posftix i Dovecot – Idealny duet tworzący serwer poczty i korzystacie z Debiana/Ubuntu.

 

Zainstalujmy potrzebne paczki:

Domyślna polityka spf jest prawie wystarczającą ale sprawmy, żeby było lepiej:

Powiadommy postfix-a, żeby korzystał z nowego wspólnika w walce ze spamem:

Zrestartujmy posfix, żeby wczytał nowy plik konfigurayjny i gotowe

 

 

Pozostałe wpisy dotyczące tego cyklu:

Posftix i Dovecot – Idealny duet tworzący serwer poczty

Walka ze spamem cz.2 – Postfix DKIM

Walka ze spamem cz.3 – Postfix DMARC

Walka ze spamem cz.4 – Postfix SpamAssassin

Walka ze spamem cz.5 – Dovecot Sieve

Facebooktwittergoogle_plusreddit

Baikal – własny kalendarz z listą ToDo (CalDav) oraz książka adresowa (CardDav)

Własny serwer usługi CalDav oraz CardDav może w bardzo łatwy sposób pomóc stworzyć nam platformę synchronizacji kalendarzy i kontaktów pomiędzy urządzeniami takimi jak smartphone oraz usługami typu webmail.

Pobierzmy najnowszą wersję baikal ze strony: http://baikal-server.com/  i rozpakujemy do katalogu np. /var/www/dav.example.com

Następnie rozpakowujemy

Przenosimy pliki do katalogu /var/www/dav.example.com

Utworzmy plik vhost dla Apache

lub bardziej zaawansowany plik z SSL (razem z Let’sEncrypt) + php5_fastcgi zgodny z:

Uruchommy teraz potrzebne moduły apache oraz zresetujmy go by uruchomić vhost:

Nadajny uprawnienia dla katalogu (w zależności jaki użytkownik uruchamia apache np. www-data):

Utwórzmy plik, który udostępni nam panel konfiguracyjny:

W zależności czy skonfigurowaliśmy vhost dla Apacha z lub bez SSL wchodzimy na stronę

Ustawmy wszystkie opcje według upodobań, w następnym kroku będziemy wybierać czy baza będzie znajdować sie w pliku sqlite, czy w mysql/mariadb.

 

I oto w ten sposób uruchomiliśmy platformę carddav, caldav dla własnych potrzeb.

 

Aktualizacja:

Osobiście zalecam aktualizację do nowszej wersji, która zanajduje sie na github-ie projektu.

Dla przykładu, na chwilę obecną najnowszą wersją jest 0.4.2

Zalecane jest utworzenie kopii zapasowej bazy danych, z której korzysta baikal.

Pobieramy baikal do katalogu z zainstalowanym naszym baikal-em w wersji 0.2.7

Rozpakowujemy archiwum

Ustawiamy odpowiedniego właściciela plików i przenosimy je bez katalogu ‚Specific

Wejdźmy na panel administracyjny dav.example.com, a ukaże się nam napis np:

Po zalogowaniu nastąpi proces aktualizacji bazy i wszystko powinno zakończyć sie powodzeniem.

 

Różnicą między wersją 0.2.x a 0.4.x jest zmiana URL card.php i cal.php został zastąpiony dav.php, o ile stare linki będą działać bez większego problemu, o tyle będą one wygaszone z kolejnymi aktualizacjami, więc lepiej od razu używać dav.php w URL.

Dopełnieniem konfiguracji jest ustawienie odpowiednich rekordów DNS:

Dzięki nim programy obsługujące format Dav odnajdą serwer usługi.

 

Przykładowe konfiguracje:

Thunderbird:

 

Thunderbird + Cardbook

Add address book > Remote

 

Android + DavDroid:

 

Facebooktwittergoogle_plusreddit

Dovecot – Poprawienie IDLE timeout dla Androidów

Jeżeli korzystasz z własnego serwera poczty, w tym imap, a maile sprawdzasz na urządzeniach z androidem, możesz zaobserwować (chociaż niekoniecznie) spadem w długości życia urządzenia na jednym ładowaniu. Objawia się to krótszym czasem działania oraz przedewszystkim tym, że aplikacja do emaila np. k-9 jest jedną z pierwszych aplikacji, która widnieje na liście aplikacji zużywających najwięcej baterii.

Nie jest wykluczone, że problem nie leży po stronie samej aplikacji, a winien jest źle skonfigurowany serwer poczty. Domyślnie DoveCot czas bezczynności połaczenia IMAP ma ustawiony na wartość 2 minut, znaczy to, że co 2 minuty klient pocztowy odpytuje serwer poczty, czy nie pojawiły się nowe wiadomości. Oczywiste jest, że czym mniejszy interwał czasu tym większe zużycie baterii.

Możemy sprawdzić nasz serwer pod tym kontem korzystając z komendy:

Powinniśmy uzyskać taki rezultat:

Interwał pomiędzy poszczególnymi „OK still here” to czas bezczynności. Domyślnie to 2 minuty.

Zmienimy to zachowanie poprzez edycję pliku:

systemctl restart dovecot.service

Zrobione!

Facebooktwittergoogle_plusreddit

Syncthing – własny wirtualny dysk

Syncthing – jak sama nazwa wskazuje synchronizuje ‚rzeczy’, Jest on aplikacją, która idealnie sprawuje się jako usługa tzw. wirtualnego dysku. Może funkcjonalnością nie może konkurować tutaj z ownClound, a tym bardziej z Google Drive.

Jeżeli jednak szukamy rozwiązania wieloplatformowego, które działa ‚out-of-box’, a przede wszystkim chcemy synchronizować nasze foldery między kilkoma/wieloma ‚końcówkami’ (ang. nodes), które nie obciąży naszych urządzeń oraz nie wymaga skomplikowanej konfiguracji wasze poszukiwania się właśnie zakończyły, bo jest Syncthing!

Instalacja (Debian/Ubuntu):

Instalacja (Windows):

 

Uruchomienie (Linux/Windows):

Syncthing uruchamiamy jako zalogowany użytkownik poleceniem:

 

Konfiguracja jako usługę systemową (Linux systemd):

Tworzymy plik /etc/systemd/system/syncthing@.service

Następnie trzeba wybrać lub utworzyć użytkownika, z którego uprawnieniami będzie uruchamiana usługą np. myuser i wykonać następujące polecenie:

 

Facebooktwittergoogle_plusreddit

GoGS wraz z Apachem

Musimy uruchomić odpowiednie moduły proxy dla apache:

Przykładowy plik konfiguracyjny vhosta apache2:

Upewnijmy się, że gogs jest uruchomiony i zrestartujmy apache

 

Zainstalujmy gogs jako usług i uruchommy ją:

 

Facebooktwittergoogle_plusreddit

GoGS – lekki git front-end

GoGS to frontend dla git-a, charakteryzuje sie niskimi wymaganiami oraz tym, iż uruchomi się wszędzie gdzie uruchomimy interpretator języka Go.

GoGS wymaga do działania paczki ‚git’ oraz bazydanych (mysql, postgresql lub tidb)

Możemy zainstalować gogit z źródeł lub w formie binarek, załóżmy że zainstalujemy binarki jako backend użyjemy mysql/mariadb na systemie debian/ubuntu:

Pobierzmy odpowiednią paczkę ze strony gogs.io (w moim wypadku było to gogs_v0.9.13_linux_amd64.tar.gz) i rozpakujmy paczkę:

Na potrzeby gogs tworzymy użytkownika i bazę w mysql/maria db:

 

Pierwsze uruchomienie:

Mamy teraz możliwość połączyć się przeglądarką www na localhost:3000 lub domena:3000 gdyż gogs nasłuchuje ruchu na 0.0.0.0:3000.

Ustawiamy nastepująco:

Pozostałe parametry według uznania

W ten sposób zainstalowaliśmy i uruchomiliśmy usługę GOGS (GoGIT)

Facebooktwittergoogle_plusreddit