Bądź na bieżąco - RSS

Mozilla Thunderbird – filtry antyspamowe

3 września, 2011 | Brak Komentarzy | Kategoria: Linux, Porady, Windows

Pomimo coraz bardziej zaawansowanych algorytmów filtrowania wiadomości zawierających, spam problem zasypywania naszych skrzynek pocztowych niechcianą pocztą jest ciągle aktualny. Ostatnio zetknąłem się z dość szczególnym zachowaniem użytkowników Mozilla Thunderbird. Aplikacja została wyposażona w dosyć dobre filtry antyspamowe. Nie ma sensu opisywanie w tym miejscu jak je włączyć i odpowiednio skonfigurować. Wystarczy skorzystać z Mozilla Zine, gdzie można znaleźć bardzo szczegółowe informacje na ten temat. Wracając do tematu, zauważyłem, że bardzo często użytkownicy z włączonymi filtrami po prostu nie uczą algorytmu co powoduje, że spam nie jest prawidłowo oznaczany i usuwany. W większości przypadków usuwają wiadomości zamiast oznaczyć je jako niechciane. Ponieważ Thunderbird wykorzystuje filtry Bayesa konieczne jest uczenie algorytmu co jest spamem a co nie. Z każdą kolejną iteracją czas poświęcany na naukę filtru skraca się znacząco. W praktyce po kilku dniach nie trzeba już wogóle ingerować w algorytm. Jednak co zrobić gdy mamy do czynienia z wyjątkowo opornym użytkownikiem, który twierdzi, że nie ma na to czasu (wbrew pozorom dosyć częsty przypadek:)? Wystarczy znaleźć użytkownika, który zakończył uczenie filtrów i przegrać od niego plik z danymi treningowymi. Wspomniany plik znajduje się w głównym katalogu profilu Mozlilli Thunderbird  i nosi nazwe training.dat. Teraz wystarczy podmienić wyżej wymieniony plik u użytkownika docelowego. W ten sposób filtr antyspamowy zacznie działać praktycznie od razu. Nie muszę dodawać, że im większy rozmiar  training.dat tym lepiej.

MG

Tagi: ,

Termometr IP dla ochrony serwerowni

6 sierpnia, 2011 | Brak Komentarzy | Kategoria: Linux, Porady, Windows

Nadzorowanie parametrów życiowych naszej serwerowni może okazać się bardzo pomocne, szczególnie jeśli administrator budynku postanawia zaoszczędzić na agencji ochrony, zastępując ludzi systemem monitoringu. Zdarza się, że projekt monitoringu nie uwzględnia potrzeb działu IT. Nie rzadko byłem świadkiem awarii systemów chłodzenia co prowadziło do gwałtownego wzrostu temperatury w serwerowniach. Skoro nikt nie chce nam pomóc musimy radzić sobie sami.

Na rynku dostępnych jest wiele rozwiązań dla monitoringu parametrów pracy serwerowni. Mając na względzie zasobność kieszeni przeciętnego działu IT i łatwość oraz szybkość montażu urządzeń postanowiłem znaleźć coś stosunkowo taniego i działającego na zasadzie niezależnego hosta (serwera TCP/IP). Po paru godzinach poszukiwania wybór padł na termometr IP firmy Papouch. Kilka uwag praktycznych. Żeby sprowadzić termometr najlepiej bezpośrednio skontaktować się z polskim dystrtybutorem firmą Chip Electronics. Obsługa jest bezproblemowa i szybka. Cena końcowa wraz z kosztami przesyłki to około 740PLN brutto. Co dostajemy w zamian? Małe srebrne pudełko z interfejem FastEthernet. Podłączenie i konfiguracja przez interfejs www jest banalna. Ale na tym nie koniec. Wbudowany serwer www pozwala wysłać e-mail z komunikatem w przypadku wzrostu (lub spadku) temperatury powyżej (poniżej) wartości progowej. Obecnie możemy odbierać poczte elektroniczną za pomocą telefonu komórkowego. Ja postanowiłem jednak zmienić wiadomość elektroniczną w SMS, który możemy odebrać każdym telefonem. W tym celu zarejestrowałem się na polskiej bramce typu e-mail2sms http://www.gsmservice.pl. Powiązanie pierwszego konta nadawcy e-mail z kontem jest darmowe. Pozostaje tylko zapłacić z góry za pakiet SMSów. Zakładając, że awarie klimatyzacji nie są zbyt częste całe rozwiązanie jest tanie i niezawodne. Zatem do dzieła:)

MG

Ps.
Wiem, że opisane rozwiąznie można zrealizować za pomocą termistora podłączonego do portu USB i serwera z Linuxem ale co robić kiedy zabraknie czasu i zależy nam na szybkim wdrożeniu…

Tagi: ,

Jak wyłączyć użytkownikowi dostęp do Internetu – MS Windows

2 lipca, 2011 | Brak Komentarzy | Kategoria: Porady, Windows

Możliwość wprowadzenia ograniczeń w dostępie do Internetu jest bardzo atrakcyjna dla wielu administratorów. Pozwala na kontrolowanie ruchu generowanego przez użytkowników. Zabezpiecza przed przeciążaniem łącza. Na temat architektury i kontroli sesji w Linuxie napisano już tony materiałów. Spotkałem się jednak ostatnio z podobnym problemem dotyczącym komputerów pracujących pod kontrolą Windows. W jaki sposób ograniczyć lub wyłączyć wogóle dostęp do Internetu dla wybranego użytkownika na komputerze z wieloma kontami? Szukałem metody na tyle prostej, że można ją zastosować w biegu bez instalowania i konfigurowania dodatkowego oprogramowania typu kontrola rodzicielska. Okazało się, że istnieje prosty zabieg wyłączający taki dostęp:

  1. Dodajemy użytkownika do grupy lokalnej Administratorzy.
  2. Logujemy się na jego konto.
  3. Wybieramy kolejno „Panel sterowania/Opcje internetowe/Połączenia/Ustawienia sieci LAN”.
  4. W sekcji „Serwer proxy” zaznaczamy opcje „Użyj serwera proxy dla sieci…”.
  5. Wybieramy „Zaawansowane”
  6. W polu opisanym „HTTP:” podajemy dowolny adres np. „10.10.10.1”
  7. Zaznaczamy opcje „Użyj tego samego serwera proxy…”
  8. Wybieramy 3x „OK”
  9. Wylogowywujemy się z konta użytkownika.
  10. Usuwamy konto użytkownika z lokalnej grupy „Administratorzy”.

Warto wspomnieć, że użytkownik będzie miał dostęp do lokalnych zasobów sieciowych natomiast skutecznie utrudnimy mu dostęp do Internetu;)

MG

Tagi: , ,

Konfiguracja blacklist za pomocą Shorewalla

4 czerwca, 2011 | Brak Komentarzy | Kategoria: Linux, Porady

Shorewall to jeden z bardzo popularnych firewalli dla Linuxa. W rzeczywistości jest nakładką na IPTABLES ale ponieważ jest przejrzysty i łatwy w konfiguracji często używam go w środowiskach o dużej liczbie serwerów. W tym artykule chciałbym skupić się wyłącznie na konfiguracji pozwalającej na zastosowanie blacklist – czarnych list za pomocą shorewalla.

Każdy administrator serwera z publicznym adresem IP spotkał się z atakami słownikowymi na usługi. Większość z nich przeprowadzanych jest przez automaty i przy zachowaniu odpowiednich zasad bezpieczeństwa nie powinna stanowić zagrożenia. Jednak licho nie śpi i dlatego zastosowanie czarnych list na poziomie firewalla pozwala ograniczyć liczbę ataków.

Z pomocą shorewalla możemy utrzymywać własne czarne listy. Aby włączyć tą funkcję należy:

  • Dodać opcję blacklist w pliku definicji interfejsów – interfaces (ścieżka domyślna: /etc/shorewall/interfaces)
net    eth0    detect    blacklist
  • Utworzyć plik blacklist (ścieżka domyślna: /etc/shorewall/blacklist) z odpowiednią zawartością np.
1.232.0.0/13        tcp        22,2200,2222

Pierwsza opcja to adres IP w notacji CIDR, druga rodzaj protokołu (tcp,udp), zaś trzecia to port blokowany dla ruchu przychodzącego.

  • Zrestartować demona shorewall:
/etc/init.d/shorewall restart

To wszystko:) Na zakończenie bonus w postaci gotowego pliku blacklist z aktualizowaną co tydzień czarną listą, który można pobrać pod adresem:

http://dl.dropbox.com/u/545869/Config/Shorewall/blacklist

MG

Tagi: , ,

Zbuduj sam bezpieczną bramkę SMTP

4 listopada, 2010 | Brak Komentarzy | Kategoria: Linux, Porady

Rzadko można spotkać w internecie aż tak dobre tutoriale. Rzecz dotyczy budowy bramki SMTP wraz z funkcją odfiltrowania SPAMu oraz WIRUSÓW. Mówiąc krótko nawet jeśli jesteś wielkim fanem rozwiązań typu MS Exchange to zawsze możesz obniżyć koszty kierując przychodzący ruch SMTP na wspomnianą bramkę, która z kolei odeśle odfiltrowane wiadomości na serwer pocztowy. W ten sposób nie musimy instalować dodatkowego oprogramowania AV na serwerze. Istnieją nawet firmy, które specjalizują się w tego typu rozwiązaniach jak np. Barracuda Networks oferująca Spam & Virus Firewall. Z doświadczenia wiem, że urządzenie to działa bardzo sprawnie. Jego cena niestety nie należy do najniższych. Dlatego jeśli dysponujesz wolnym komputerem oraz wolnym popołudniem to dobra chwila aby zmierzyć się z własną bramką. Poniższy poradnik sieciowy poprowadzi Cię za ręke – nawet jeżeli jesteś tylko średniozaawansowany:)

http://www200.pair.com/mecham/spam/spamfilter20090215.html

MG

Tagi: , ,

Problemy z SSH

4 października, 2010 | Brak Komentarzy | Kategoria: Linux, Porady

Tym razem króciutko. Chciałem napisać o rzeczy, który bardzo długo spędzała mi sen z powiek. Nigdy nie było dość czasu żeby się tym zająć a sprawa jest niezwykle prosta. Każdy użytkownik terminala linuksowego na pewno korzystał z połaczeń za pomocą ssh. Jednak czasami ze względu na rekonfigurację, prace administracyjne lub inne przyczyny zdarza się zmiana klucza publicznego zdalnego hosta. Ponieważ jest on zapisywany w ’.ssh/known_hosts’ przy następnej próbie połączenia otrzymamy komunikat zaczynający się od tekstu ’WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!’. Przyznam, że zdarzało mi się kasować cały plik ’known_host’ a następnie dopisywać od początku klucze hostów w trakcie pierwszego połączenia. Czy było to lenistwo, niecierpliwość? Zapewne po trochu wszystko. A przecież można usunąć klucz tylko wybranego hosta używając polecenia:

ssh-keygen -R hostname

Prawda, że proste?

MG

Tagi: , ,

XPUnlimited – czy to jest możliwe?

11 września, 2010 | 2 komentarze | Kategoria: Porady, Windows

O tym produkcie chciałem napisać już dawno. Jest bardzo nietypowy bo nielegalny poza granicami UE. Żeby być bardziej precyzyjnym, znosi ograniczenia związane z protokołem RDP wbudowanym w produkty firmy Microsoft. Przypomnę, że bez zakupu serwera terminali dysponujemy dostępem do jednej sesji zadalnej w przypadku stacji roboczych oraz dwóch sesji zdalnych tzw. administracyjnych, w przypadku serwerów. XPUnlimted umożlwia dostęp zdalny bez limitu sesji. Jak twierdzi producent firma IPConsult, ograniczeniem jest tylko wydajność sprzętu, na którym zainstalujemy XPUnlimited. W dobie szumu medialnego związanego z przetwarzaniem w chmurze cloud computing, takie rozwiązanie może wspomóc budowę farmy typu SAAS – Software as a Service.

Typowy prosty scenariusz budowy prywatnej chmury SAAS  z wykorzystaniem XPUnlimited może wyglądać następująco:

  • Na wybranych serwerach firmowych instalujemy XPUnlimited – może być ich kilka, bowiem aplikacja potrafi sama balansować obciążeniem
  • W ramach utworzonej farmy tworzymy konta użytkowników terminala zdalnego z odpowiednimi uprawnieniami – możemy np. przydzielić zdalny terminal z automatycznie uruchamianą wybraną aplikacją bazodoanową i z ograniczeniem dostępu do pozostałych zasobów
  • Korzystając z dostępu przez SSH możemy używać naszej aplikacji z dowolnego miejsca i na dowolnym sprzęcie – jest to możliwe gdyż XPUnlimited posiada wbudowany serwer SSH, zaś aby wykreować szyfrowany tunel można skorzystać np. z bardzo wygodnego klienta Bitvise Tunellier.

Jakie są zalety przedstawionego rozwiązania? Ja widzę trzy najważniejsze:

  1. Zapewniamy optymalne środowisko pracy udostępnianej przez terminal aplikacji – wszyscy klienci mają takie samo środowisko i konfigurację
  2. Zapewniamy szyfrowany i uwierzytelniony dostęp do zasobów firmy – zatem możemy mówić o sieci VPN
  3. Jesteśmy niezależni od systemu operacyjnego czy sprzętu jakiego używa klient, nie musimy ponadto stosować kosztownych bramek VPN

Tak naprawdę wszystko to prowadzi do celu nadrzędnego jakim jest odrobina świętego spokoju dla firmowego działu IT w naszych niepewnych czasach;)

Więcej informacji, w tym opis bogactwa funkcji XPUnlimited znajduje się pod adresem:

http://www.xpunlimited.com/

MG

Tagi: , ,

Autoodpowiedź czyli do czego możemy zaprząc procmaila

5 sierpnia, 2010 | Brak Komentarzy | Kategoria: Linux, Porady

Autoodpowiedź jest szeroko stosowaną funkcją serwera poczty. Tak przynajmniej myśli większość typowych użytkowników poczty elektronicznej. Jeśli weźmiemy pod uwagę serwery SMTP typowe dla Linuxa to może się okazać, że autoodpowiedź można zrealizować na kilka sposobów i to zupełnie niezależnie od używanego MTA. Pomijam tutaj aspekt przydatności tej funkcji oraz wszystkich za i przeciw. Wracając do Linuxa najprościej jest zainstalować pakiet vacation. Możemy jednak zrobić wszystko jeszcze inaczej. Poniżej zamieściłem przykładowy plik .procmailrc, który umożliwi zrealizowanie opdowiedzi wakacyjnej bez instalowania dodatkowych pakietów.

LOGFILE=$HOME/.procmail_log
vacationFlagFile = $HOME/.vac
vacationMsgFile = $HOME/.vacation_msg

# Jesli dostales wiadomosc Vacation_mode_On
:0
* ^Subject: Vacation_mode_On
{
  # Zapisz tresc wiadomosci
  :0 bc:
  $vacationMsgFile

  # Wlacz znacznik wakacyjny
  :0
  | touch $vacationFlagFile
}

# Jesli otrzymales wiadomosc Vacation_mode_Off
:0
* ^Subject: Vacation_mode_Off
{
  # Usun komunikat i znacznik wakacyjna
  :0
  | rm $vacationFlagFile $vacationMsgFile
}

# Jesli istnieje plik vacationFlagFile
:0
*$ ? $IS_EXIST $vacationFlagFile

{
  :0hc
  * ! ^FROM_DAEMON          # Usun komunikaty systemowe
  * ! ^Subject:.*SPAM       # Usun spam
  * ! ^X-Loop: IWasHere     # Usun wiadomosci zapetlone

  # Odpowiedz komunikatem z vacationMsgFile
  | (formail -rA "Precedence: junk" -A "X-Loop: IWasHere" ; \
  cat $vacationMsgFile) \
  | $SENDMAIL -oi -t
}

Czym różni się powyższy przykład od setki innych, które można znaleźć w internecie? Przede wszystkim w tym przypadku, żeby włączyć autoodpowiedź wystarczy wysłać na swój adres wiadomość z tematem „Vacation_mode_On”. W jej treści zaś umieszczamy komunikat autoodpowiedzi. Odpowiednio, żeby wyłączyć autoodpowiedź wysyłamy wiadomość „Vacation_mode_On”.

Ponadto skrypt odfiltrowywuje komunikaty systemowe, wiadomości zapętlone stanowiące utrapienie wielu administratorów oraz spam. To ostatnie oczywiście jeśli mamy zainstalowane odpowiednie oprogramowanie (np. SpamAssassin), które doda do tematu podejrzanej wiadomości słowo kluczowe SPAM.

Skrypt ten zapewne można poprawiać i dalej optymalizować do czego zachęcam. W trakcie korzystania odkryłem np. że istotne jest kodowanie polskich znaków w wiadomości włączającej autoodpowiedź. Początkowo nie stosowałem wogóle polskich znaków ale rzecz jasna jest to rozwiązanie na krótką metę. Dlatego postanowiłem dodać do skryptu konwerter standardów kodowania. Ale o tym może następnym razem…

MG

Tagi: , ,

Listy dystrybucyjne i procmail

25 lutego, 2010 | Brak Komentarzy | Kategoria: Linux, Porady

Powszechne narzekanie na ilość zalewającego nas spamu stało się banałem. Automaty rozsyłające niechciane wiadomości działają nieustannie, dość skutecznie zalewając skrzynki pocztowe. Istnieje wiele metod walki z opisywanym zjawiskiem. Ja jednak chciałem skupić się na wybranym przypadku. W większości firm istnieją adresy zbiorowe, za pomocą których tworzy się proste listy dystrybucyjne,  np.  wysłanie wiadomości na adres „biuro@firma.com” powoduje automatyczne rozesłanie jej do kilku adresatów. Nie trzeba długo się zastanawiać aby dojść do wniosku, że taki adres może również ułatwiać rozsyłanie spamu! Co zrobić aby zabezpieczyć się przed tym zjawiskiem? Poniżej zamieściłem opis dość prostej i skutecznej metody.

Przede wszystkim zakładam, że na serwerze zainstalowany jest pakiet procmail, który umożliwi przetwarzanie przychodzących wiadomości. Na temat pisania reguł dla procmaila można znaleźć dużo materiałów w sieci  np. tutaj. Nadaje się do wielu zadań i pozwola naprawdę dodać nowe funkcje do serwera poczty sam nie będąc jego integralną częścią. Ale do rzeczy. Żeby zabezpieczyć adres zbiorowy tworzymy w katalogu domowym dla konta „biuro” (kontynuując przykład z pierwszego akapitu) plik „.procmailrc”

touch .procmailrc

Następnie umieszczamy w nim mniej więcej taką zawartość:

LOGFILE=$HOME/.procmail_log
:0
# Przepuszczaj wiadomosci jesli pole nadawca zawiera ciąg @firma.com.
* ^From:.*@firma\.com
# Odfiltruj wiadomosci od daemona.
* ! ^FROM_DAEMON
# Odfiltruj wiadomosci zapetlone.
* ! ^X-Loop: EFa1bie2reifiuXeiveizae2
{
  :0fwh
  # Stempluj naglowek kazdej przetwarzanej wiadomosci.
  | formail -A"X-Loop: EFa1bie2reifiuXeiveizae2"
  :0
  # Wyslij wiadomosc na adresy pobrane z pliku ".lista".
  !`cat .lista`
}
:0
# Cala reszte przekieruj w kosmos!
/dev/null

A teraz po kolei. Przede wszystkim ograniczamy zbiór nadawców do tych, którzy mają w polu „Nadawca” ustawione „@firma.com„. Oczywiście spamerzy również mogą podszyć się pod ten adres  (zmiana wartości pola „Nadawca” jest łatwa). Jednak z mojego doświadczenia wynika, że to proste ograniczenie pozwala znacznie ograniczyć ruch. Pozostałe wiadomości odrzucamy przekierowując  je na „/dev/null”.

Wiadomość, która spełnia podstawowy warunek zostanie przetworzona. Zanim jednak tak się stanie dobrze jest sprawdzić 2 warunki:

  • Czy nie jest to przypadkiem wiadomość od daemona systemowego. Bardzo pożyteczny warunek w sytuacji gdy dystrybuujemy wiadomość na konto, które nie istnieje (np. administrator usunał je bez poinformowania nas o tym). Zabezpiecza przed zapętleniem wiadomości.
  • Czy nie jest to wiadomość zapętlona. Np. użytkownik docelowy ustawił sobie autoodpowiedź, wówczas będzie automatycznie odpowiadał na wiadomość z listy dystrybucyjnej (rozsyłając tym samym autoodpowiedź do wszystkich jej odbiorców). Lista z kolei będzie odsyłać ją z powrotem i tak w kółko. Warto zwrócić uwagę, że aby sprawdzić czy wiadomość nie była już raz przetwarzana (czyt. jest zapętlona) trzeba ją oznaczyć stemplem w nagłówku.

Jeżeli wymienione warunki zostały spełnione, możemy z czystym sumieniem rozesłać wiadomość do użytkowników wymienionych w pliku „.lista”, która przykładowo ma postać:

user1@firma.com
user2@firma2.com
user3@firma3.com

MAG

Tagi: , , ,

Kopie zapasowe za pomocą rsync dla Windows

21 grudnia, 2009 | Brak Komentarzy | Kategoria: Linux, Porady, Windows

Powszechnie wiadomo, że wykonywanie kopii zapasowych może uratować przed małą zagładą. Sam wielokrotnie się o tym przekonałem więc niezależnie od tego czy opiekuję się komputerem z Windows czy Linuxem zawsze szukam optymalnego rozwiązania dla zabezpieczenia danych.

W przypadku Linuxa sprawa jest prosta a rozwiązania wielokrotnie opisywane. Praktycznie najlepszym znanym mi jest rsync. Działa szybko i niezawodnie. W sieci można znaleźć masę poradników na jego temat. Gorzej jest jeśli chodzi o Windowsy. Po przetestowaniu wielu aplikacji, uwzględniając m.in. problemy z nazwami plików (np. polskie znaki potrafią skutecznie zwiesić najbardziej rozbudowane oprogramowanie) wymyślanymi przez użytkowników, mogę polecić AllwaySync. Jednak nawet ten bardzo dobry program potrafi odmówić posłuszeństwa.

Czy w związku z powyższym istnieje alternatywa? Wydaje się, że całkiem sprawnie działa rsync dla Windows – cwrsync. Jego najważniejsze zalety to:

  • darmowa wersja, zarówno klienta jak i serwera
  • brak koniecznośći instalacji pełnej wersji środowiska Cygwin
  • możliwość synchronizacji danych między Linuxem a Windows

Ostatnia zaleta umożliwa integrację rozwiązań dla tworzenia kopii zapasowych niezależnie od systemu opercyjnego. Krótko mówiąc aby wdrożyć takie rozwiąznie należy:

  1. Pobrać oprogramowanie ze strony domowej projektu (polecam wersje serwer, która zawiera również oprogramowanie klienta)
  2. Zainstalować w wybranym katalogu
  3. Zanim uruchomimy serwer trzeba wyedytować plik konfiguracyjny rsyncd.conf. Przykładową zawartość zamieszczam poniżej:
    use chroot = false
    strict modes = false
    hosts allow = *
    log file = rsyncd.log
    
    [TEST]
    path = /cygdrive/c/TEST
    read only = false
    transfer logging = yes

    Zwracam uwagą na linię zawierającą zmienną „path”. Ponieważ cwrsync korzysta z bibliotek Cygwin, została zachowana konwencja nakazująca rozpoczęcie defincji ścieżki od prefiksu „/cygdrive”. Zmienna „read only” o wartości „false” umożliwa zapis danych do wybranego katalogu.

  4. Teraz można uruchomić serwer cwrsync jako usługę systemową startując ją z poziomu panelu zarządzania usługami systemowymi Windows. Ponieważ domyślnie usługa ta uruchamiana jest ręcznie warto zmienić metodę na automatyczną.
  5. To wszystko. Teraz wystarczy na komputerze z Linuxem i zainstalowanym pakietem rsync uruchomić np. polecenie:
    rsync -arvzPO --delete /var/archive/ rsync://serwer_cwrsync/TEST/

    aby wykonać dokładną kopię danych z katalogu /var/archive (Linux) do katalogu C:\TEST (Windows)

MaG

Tagi: , ,