Firewall w systemd

Wszystkie współczesne dystrybucje Linuksa zrezygnowały z systemu init i przeszły na system daemon, czyli systemd, który jak każda nowość wzbudzał wiele kontrowersji, ale powoli stał się faktem. Ci, którzy mieli swoje własne aplikacje, daemony lub skrypty startowe muszą je przerabiać. Na swoje potrzeby również przerobiłem firewall znany użytkownikom systemu EOS.
Ten firewall opiera się na pliku konfiguracyjnym zawierającym interfejsy sieciowe, zasady routingu i porty, które użytkownik chce otworzyć. Plik jest umieszczony w specjalnie utworzonym katalogu /etc/firewall i nosi nazwę firewall.porty

EXTIF=
INTIF=
SSH=1
WWW=0
HTTPS=0
FTP=0
MAIL=0
IMAP=0
IMAPS=0
IDENT=0
RSYNC=0
NETWORK=0
PROXY=0
FORWARD=0

W tym pliku dopisujemy sieciowy interfejs zewnętrzny (EXTIF) i wewnętrzny (INTIF), jeśli jest oraz ustawiamy NETWORK na wartość 1, jeżeli mamy dwa interfejsy i chcemy, by komputer był routerem. W tym przypadku także możemy na 1 ustawić zmienną PROXY, jeśli zainstalujemy serwer proxy oraz zmienną FORWARD, o ile zamierzamy jakieś porty forwardować do wewnątrz sieci. W pliku domyślnym otwarty jest jedynie port SSH.
Z tej konfiguracji korzysta skrypt startowy, który również jest w /etc/firewall i nazywa się zwyczajnie – firewall.

#!/bin/sh
# Firewall
# plik z konfiguracją otwartych portów
. /etc/firewall/firewall.porty
i=`which iptables`
start() {
echo -n "Uruchamiam Firewall"
if [ -e /proc/sys/net/ipv4/tcp_ecn ];then
echo 0 > /proc/sys/net/ipv4/tcp_ecn
fi
echo 1 > /proc/sys/net/ipv4/ip_forward
if [ -e /proc/sys/net/ipv4/tcp_syncookies ] ; then
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
fi
for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo 1 > $f
done
$i -F
$i -F -t nat
$i -P INPUT DROP
$i -P FORWARD DROP
$i -P OUTPUT ACCEPT
# interfejs lo
$i -A INPUT -i lo -j ACCEPT
$i -A FORWARD -o lo -j ACCEPT
# blokada wirusów usługi RPC
$i -A INPUT -p tcp --dst 0/0 -m multiport --dport 135,445 -j DROP
$i -A FORWARD -p tcp --dst 0/0 -m multiport --dport 135,445 -j DROP
# Odrzucamy z komunikatem ICMP Port Unreachable polaczenia
# na IDENT oraz SOCKS (czesto sprawdzane przez serwery IRC)
# Jesli udostepniasz te uslugi zaplotkuj (#) odpowiedne linie
if [ "$IDENT" = "1" ]; then
$i -A INPUT -p tcp -i $EXTIF --dport 113 -j ACCEPT
$i -A INPUT -p tcp -i $EXTIF --dport 1080 -j ACCEPT
else
$i -A INPUT -p tcp --dst 0/0 --dport 113 -j REJECT --reject-with icmp-port-unreachable
fi
$i -A INPUT -p tcp --dst 0/0 --dport 1080 -j REJECT --reject-with icmp-port-unreachable
# reguła HTTP
if [ "$WWW" = "1" ]; then
$i -A INPUT -p tcp -i $EXTIF --dport 80 -j ACCEPT
fi
# reguła HTTPS
if [ "$HTTPS" = "1" ]; then
$i -A INPUT -p tcp -i $EXTIF --dport 443 -j ACCEPT
fi
# reguła FTP
if [ "$FTP" = "1" ]; then
$i -A INPUT -p tcp -i $EXTIF --dport 20 -j ACCEPT
$i -A INPUT -p tcp -i $EXTIF --dport 21 -j ACCEPT
fi
# reguła SMTP POP3
if [ "$MAIL" = "1" ]; then
$i -A INPUT -p tcp -i $EXTIF --dport 25 -j ACCEPT
$i -A INPUT -p tcp -i $EXTIF --dport 110 -j ACCEPT
$i -A INPUT -p tcp -i $EXTIF --dport 465 -j ACCEPT
$i -A INPUT -p tcp -i $EXTIF --dport 995 -j ACCEPT
fi
# reguła SSH (port SSH można zmienić poniżej na niestandardowy, jesli taki jest w sshd_config)
if [ "$SSH" = "1" ]; then
$i -A INPUT -p tcp -i $EXTIF --dport 22 -j ACCEPT
fi
# reguła IMAP
if [ "$IMAP" = "1" ]; then
$i -A INPUT -p tcp -i $EXTIF --dport 143 -j ACCEPT
$i -A INPUT -p udp -i $EXTIF --dport 143 -j ACCEPT
fi
# reguła IMAPS
if [ "$IMAPS" = "1" ]; then
$i -A INPUT -p tcp -i $EXTIF --dport 993 -j ACCEPT
$i -A INPUT -p udp -i $EXTIF --dport 993 -j ACCEPT
fi
# pingi pozwalamy
$i -A INPUT -p icmp --icmp-type echo-request -j ACCEPT -m limit --limit 1/sec
# forwardowanie portów
if [ "$FORWARD" = "1" ]; then
/etc/firewall/forward
fi
# Wszystkie polaczenia z innych interfejsow niz interfejs do internetu pozwalamy.
$i -A INPUT ! -i $EXTIF -j ACCEPT
$i -A FORWARD ! -i $EXTIF -j ACCEPT
# i maskujemy
if [ "$NETWORK" = "1" ]; then
$i -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
fi<>
# przekierowanie zmuszajace wszystkich do transparentnego korzystania z proxy
if [ "$PROXY" = "1" ]; then
$i -t nat -A PREROUTING -i $INTIF -p tcp --dport 80 -j REDIRECT --to-port 8080
fi
# Zezwalamy na wszystko co odbywa sie w ramach juz dozwolonych polaczen
$i -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
$i -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
}
stop() {
echo -n "Zatrzymuję firewall, wszystko otwarte."
$i -F INPUT
$i -F FORWARD
$i -F OUTPUT
$i -P INPUT ACCEPT
$i -P FORWARD DROP
$i -P OUTPUT ACCEPT
echo 0 > /proc/sys/net/ipv4/ip_forward
}
restart() {
stop
start
# sprawdzanie czy dziala fail2ban
#PIDFAIL2BAN=`ls /var/run/fail2ban |grep pid|wc -l`
#if [ "$PIDFAIL2BAN" = "1" ]; then
#service fail2ban restart
#fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
status)
iptables -L
;;
*)
echo "Używaj z argumentem: $0 start|stop|restart|status"
;;
esac

Do tego jest jeszcze pomocniczy forward, gdyby ktoś potrzebował forwardować porty do wewnątrz sieci. Musimy utworzyć dwa pliki forward.porty.tcp i forward.porty.udp w /etc/firewall/. W tych plikach umieszczamy adres komputera wewnątrz sieci, port na którym działa jakaś dostępna na nim usługa i port na adresie publicznym, na którym ta usługa ma być widoczna. Przykład: 192.168.1.22 80 82 (komputer w sieci, port serwera www, port na adresie publicznym, na którym ten serwer będzie widoczny). Niektóre usługi wymagają otwarcia portów UDP, np. gry lub torrenty.
Skrypt pod nazwą forward w /etc/firewall wygląda następująco:

#!/bin/bash
# uruchamianie forwardowania portów
. /etc/rc.firewall
i=`which iptables`
CONF=/etc/forward.porty.tcp
CONFudp=/etc/forward.porty.udp
#forwardowanie portow TCP
while read line; do
IP=`echo "$line"`
I1=`echo $IP | awk '{print $1}'`
I2=`echo $IP | awk '{print $2}'`
I3=`echo $IP | awk '{print $3}'`
if [ ! -z "$IP" ]; then
$i -I FORWARD -p tcp -d $I1 --dport $I2 -j ACCEPT
$i -t nat -A PREROUTING -i $EXTIF -p tcp --dport $I3 -j DNAT --to $I1:$I2
fi
done < $CONF

#forwardowanie portow UDP (część jest opcjonalna, można postawić znak # na początku każdej linijki lub tej części nie kopiować)
while read line; do
IP=`echo "$line"`
I1=`echo $IP | awk '{print $1}'`
I2=`echo $IP | awk '{print $2}'`
I3=`echo $IP | awk '{print $3}'`
if [ ! -z "$IP" ]; then
$i -I FORWARD -p udp -d $I1 --dport $I2 -j ACCEPT
$i -t nat -A PREROUTING -i $EXTIF -p udp --dport $I3 -j DNAT --to $I1:$I2
fi
done < $CONFudp

Teraz jeszcze musimy mieć skrypt uruchamiający. Wygląda on następująco:

[Unit]
Description = Firewall
After = syslog.target

[Service]
ExecStart = /etc/firewall/firewall start
RemainAfterExit = yes
ExecStop = /etc/firewall/firewall stop
RuntimeDirectory = etc
Restart = on-failure
KillSignal = SIGTERM
Type = simple

[Install]
WantedBy = multi-user.target

Ten skrypt umieszczamy w /etc/systemd/system/ pod nazwą firewall.service, a następnie wykonujemy dwa polecenia jako root:
systemctl enable firewall.service
systemctl start firewall.service
O ile nie zrobiliśmy żadnych błędów, to od tego momentu polecenie iptables -L pokaże nam zastosowane przez nas reguły. W skrypcie startowym zapewne nie wszystkie wpisy są potrzebne, bo firewall to nie jest daemon, tylko jednorazowo wykonujący się zestaw reguł. Jednak musiałem to zrobić błyskawicznie na działającym systemie i nie miałem czasu sprawdzać.

Twój dysk właśnie został zaszyfrowany

Pierwsza wersja wirusa nazywała się „WannaCry”, obecna „Cryptolocker”. Działanie wirusa jest proste. Użytkownik klika zainfekowany plik, ściągając go z jakiejś strony i oczywiście myśląc, że ściąga coś innego. Potem uruchamia i w szybkim tempie jego pliki znikają z dysku, a pojawia się żądanie okupu, najczęściej w kryptowalucie, a dokładniej w bitcoinach. Zainfekowany plik może też przyjść mailem. Niestety większość problemów z komputerami można umiejscowić między krzesłem, a klawiaturą, potrzebny jest dostatecznie niefrasobliwy użytkownik, dodajmy używający systemu Windows. Wersja nie ma znaczenia.
Choć zmasowany atak jaki dotknął wiele firm światowych, a także niektóre instytucje państwowe w niektórych krajach, świadczyć może o dwóch zasadniczych problemach. Pierwszym, że zbyt wiele newralgicznych serwerów w tych krajach korzysta z Windows. Drugim, że autorzy wirusa znaleźli jakiś sposób na automatyczną replikację wirusa, skoro masowo zarażone są bankomaty niektórych banków.
Warto też zaznaczyć, że Windows szczególnie jest podatny na wirusy, ponieważ pomimo upływu lat wciąż w podstawowej instalacji użytkownik staje się administratorem systemu. Rzecz jasna nie dotyczy to komputerów w domenie Windows, które używane są w mniejszych i większych firmach. Jednak rozmaite sieciowe infekcje pokazują, że przy ogromnej dziś popularności smartfonów użytkownicy iOS oraz Androida wcale nie są szczególnie bezpieczni. Pamiętajmy, że wirusów i rozmaitych innych szkodliwych programów w sieci jest sporo, celują w tym sieci społecznościowe z Facebookiem na czele. Należy być ostrożnym i nie klikać wszystkiego co podeślą nam znajomi, bo nie są oni godni zaufania w internecie. Używając Windows warto założyć sobie zwykłe konto bez uprawnień z innym hasłem. Mieć trudne hasła do swoich zdalnych usług, nie mieć wszędzie tego samego hasła. I tak jak na drodze, tak w sieci stosować zawsze zasadę ograniczonego zaufania. Bo w przeciwnym razie możemy się kiedyś obudzić w świecie, który przedstawił satyryk na poniższym rysunku.

Jak zostanie zhakowane twoje Wi-Fi?

Dom jest tam, gdzie wifi łączy się samo – mówi dziś popularne internetowe porzekadło. Jeśli spojrzymy na statystyki wielu stron internetowych, to zobaczymy, że znaczny procent odwiedzających używa urządzeń z Androidem na pokładzie (iOS oraz Windows mają znacznie mniejszą popularność). Nasz cyfrowy świat opanowały urządzenia mobilne – tablety, smartfony lub ostatecznie laptopy, które używają prostych i łatwych połączeń wifi. A może za prostych i za łatwych?
1. Brak zabezpieczeń
Ponieważ mało komu chce się dziś prowadzić skrętkę ethernetową, wiercić dziury w ścianach, więc łączność radiowa dominuje w domach, domkach i mieszkaniach. I zdziwilibyście się, jak wiele osób ma otwarte sieci domowe. Tłumaczenia zapytanych właścicieli są rozmaite, często dotyczy to osób mających swe własne domy z kawałkiem terenu, a tłumaczenie brzmi: a kto tutaj na wsi z dala od ludzi miałby się mi włamać.
2. Przestarzałe zabezpieczenia
Nadal wiele routerów i access pointów fabrycznie ustawionych jest na zabezpieczenia WEP. Bardzo często używane są też stare urządzenia, które choć powolne, to nadal są sprawne. Dziś urządzenia dostępowe kosztują poniżej stu złotych i warto przestarzały sprzęt wymienić na nowy. Szyfrowanie WEP jest łatwe do złamania, ponieważ wraz z każdym pakietem przesyłany jest klucz. Przy użyciu odpowiedniej aplikacji można przejąć ten klucz w ciągu paru minut i zużyć go w ciągu paru następnych.
3. Filtrowanie adresów MAC
Niektórzy właściciele sieci radiowych, szczególnie mieszkający w tzw. bezpiecznej okolicy, a zatem we własnych domach i z dala od centrów miast uważają, ze filtrowanie fizycznych adresów (tzw. MAC) kart sieciowych jest wystarczającym zabezpieczaniem, a nie jest. Nawet nie mając dostępu do sieci można podsłuchać ruch sieciowy i w ciągu paru minut zdobyć kilka adresów MAC danej sieci. Odpowiednia aplikacja pomoże włamywaczowi zmienić swój MAC na jeden z dozwolonych i już ma dostęp.
4. Łatwe hasła
Nawet używając protokołu WPA2 nie będziemy bezpieczni mając zbyt łatwe hasła. Gdy raz doświadczalnie ustawiłem hasło 1234567890 w access poincie, to już po pół godziny miałem współużytkownika. Mieszkając w dużym budynku mamy często wokół siebie kilkanaście lub więcej sieci radiowych. Statystycznie co czwarta sieć ma łatwe hasło.
5. Fabryczne ustawienia
Wiele osób pozostawia fabryczne ustawienia, możemy rozpoznać je po nazwach sieci, np. TP-LINK_ACD13C, NETGEAR06 itp. W internecie łatwo można znaleźć strony udostępniające zestawy fabrycznych haseł domyślnych dla wielu urządzeń. Skoro właścicielowi nie chciało zmienić domyślnej nazwy, to może i domyślne fabryczne hasło pozostawił?

Pamiętajmy, że dostęp do domowej sieci wifi może oznaczać dla intruza możliwość podsłuchiwania waszego ruchu internetowego. Gorzej jeśli z waszego numeru IP zostanie popełnione przestępstwo. Będziecie wówczas długo wyjaśniać, że nie jesteście wielbłądem. Mogą też zostać podsłuchane wasze hasła do usług finansowych, a to już zdecydowanie nie jest śmieszne.
Nawet odpowiednio skomplikowane hasła i bezpieczna sieć domowa nie zapewnią bezpieczeństwa namiętnemu klikaczowi, który klika wszystko, co mu podeślą znajomi i nieznajomi. Najczęściej kończy się tym, że rozsyła tzw. spam wirusowy na Facebooku, ale niestety nie tylko. Klikając na linki w mailach i podając swoje dane podrabianym stronom, można stracić sporo pieniędzy. Niezależnie od haseł najlepszym zabezpieczeniem jest ostrożne korzystanie z internetu i używanie mózgu podczas surfowania w sieci.

Kabelkologia

Wiele osób szuka infromacji o tym jak połączyć poszczególne żyły w kablu ethernetowym. Jeśłi ktoś zajmuje się tym na co dzień, to pamięta. A jeśli musimy to zrobić raz na jakiś czas, wtedy zwykle nie jesteśmy pewni. Znalazłem taki przydatny rysunek w sieci.

Jesienne liście

Wersja 32 bitowa systemu EOS to, podobnie jak i inne wersje, system bazujący na PCLinuxOS. Od motywu tapety na pulpicie nazwałem ja roboczo „Jesienne liście”, co nawiasem mówiąc, nie najgorzej łączy się z początkiem roku szkolnego. 😉
Bez wątpienia jest to ostatnia wersja 32 bitowa, ponieważ PCLinuxOS nie będzie rozwijał tej gałęzi oprogramowania. Dziś nawet najtańsze netbooki są 64 bitowe.
guest
Aby wypróbować system trzeba się zalogować jako użytkownik guest z hasłem guest. Gdy system będzie już na dysku będzie można po lewej stronie ekranu logowania zobaczyć utworzonych użytkowników. Na razie jest tam pusto. Żeby zainstalować system, trzeba się zalogować jako root z hasłem root.
install
Instalacja będzie wymagać utworzenia partycji i zapisania ich, przez tę część łatwo przeprowadzi nas program instalacyjny. Dobrze jest utworzyć oddzielną partycję /home, ponieważ dzięki temu w razie konieczności instalacji ponownej zachowamy dane użytkowników.
Bardzo istotną zaletą systemu jest możliwość wykonania własnej kopii systemu i użycie jej do zainstalowania na wielu komputerach.
Jak to zrobić?
Gdy już zainstalujemy system na dysku, z poziomu menedżera pakietów Synaptic należy zainstalować program Draklive-Install, który podczas instalacji na dysku jest usuwany. Oczywiście dopasowujemy też system do swoich wymagań, usuwamy zbędne aplikacje instalujemy te, które nam będą potrzebne. Dodajemy użytkowników i przypisujemy im hasła. A następnie uruchamiamy program wykonujący iso.
mylive
Wcześniej musimy założyć katalog, w którym zapiszemy iso. Ten sam katalog dodajemy do tych, które nie zostaną zapisane. To ważne, aby program nam się nie zapętlił. Na koniec kopiujemy iso na komputer, na którym wypalimy płytę DVD. Wypalamy i możemy powtarzać instalację na kolejnych maszynach.

Pliki do pobrania -> TUTAJ

EOS Desktop wersja 32bit

Wiele szkół ma stare pracownie, które uaktualniane były własnymi środkami. Jednak Windows XP dziś się nie da używać, Visty nie dało się używać nigdy. Stare komputery nadal w szkołach są i często opiekunowie sprzętu są o krok od przeznaczenia ich na złom. A pieniędzy na nowe nie ma. Mamy na to lekarstwo.
lxqt
System Eos Linux z lekkim pulpitem LXQT powinien nadawać się do instalacji na komputerach ze starymi procesorami typu Pentium 4 (i podobnymi). Wymaga 1GB pamięci RAM i około 20GB miejsca na dysku. Niezbędna jest również karta sieciowa, by system mógł korzystać z internetu.
Jeśli ktoś czuje się zawiedziony to – niestety – trzeba jasno powiedzieć, że choć Linux może pracować na starszym sprzęcie, to komputery ze stareńkim Pentium 2 i 128MB pamięci naprawdę do niczego się już nie nadają. Owszem można zainstalować tam Linuksa do poznawania zasad działania i uruchamiania programów CLI, ale nie nadaje się taki system dla dzieci w szkole. EOS ma nieduże wymagania, zainstalowano na nim wiele programów edukacyjnych, a jeszcze więcej nauczyciel może zainstalować, jeśli będą mu przydatne.
gcompris
Tę wersję skierowano przede wszystkim do nauczania dzieci młodszych. Można tam znaleźć między innymi znany pakiet edukacyjny Gcompris, a także wiele programów i gier z serii Tux. Jest także przeglądarka internetowa i pakiet biurowy Open Office.
italc
Ponadto został zainstalowany także znany nauczycielom program iTALC, który umożliwia monitorowanie komputerów uczniowskich lub udzielanie zdalnej pomocy.
System został przetestowany na maszynach wirtualnych, ale wymaga jeszcze porządnych testów na prawdziwych komputerach. Z tego względu zachęcam nauczycieli, by spróbowali i zostali testerami EOSa.

EOS 2016

Nie przypuszczałem, że nastąpi dalszy rozwój serwera pod nazwą EOS, ale liczba osób zainteresowanych, o czym świadczyły maile i informacje, które otrzymywałem w ciągu ostatniego roku, była dość spora. Prawdę powiedziawszy byłem nawet zdziwiony…
To tyle wstępu, a teraz konkrety:
Nowy EOS ma jądro z serii 4.4.X LTS (long term support), stabilne i działające bez niespodzianek. Jest oczywiście serwer www – Apache 2.2.31 nie najnowszy może, ale stabilny. Jest PHP 5.5.33 i MySQL 5.1.73.
Serwer poczty to Exim 4.87 i Tpop3d 1.5.5, zaś serwer imap to Dovecot 2.2.25. Poczta obsługuje wiele domen i użytkowników wirtualnych zapisanych w bazie MySQL. Jest ochrona antywirusowa za pomocą programu Clamav.
EOS może być także routerem, ma do tego dostosowany firewall wraz z konfiguratorem. Są także inne konfiguratory znane z poprzedniej wersji.
Do zdalnych połączeń jest nowa wersja NX, można wykorzystać także TeamView do zdalnej pomocy (przypomnę, że ten program wymaga kogoś siedzącego przy monitorze, kto zdalnemu pomocnikowi poda jednorazowy PIN służący do autoryzacji połączenia. Oczywiście jest również SSH.
Na razie nie ma skonfigurowanej dla celów szkolnych Samby, ani Dansguardiana. To wymaga więcej pracy i testów. Szczególnie dlatego, że zasłużony Windows XP udał się na emeryturę, więc trzeba przygotować współpracę Samby z Windows 7, 8.1 i 10. A to nie jest zadanie trywialne.
Wymagania sprzętowe:
– system jest wyłącznie 64-bitowy, a więc procesor przynajmniej DualCore.
– pamięć minimum 2GB RAM, lecz zalecane jest 4GB.
– przynajmniej 20GB miejsca na dysku (plus oczywiście przewidywane miejsce na pliki użytkownika)
– karta sieciowa (lub więcej), możliwe jest korzystanie również z kart wifi, lecz nie jest to najlepszy sposób połączenia serwera z innymi komputerami (opinia subiektywna).
– karta graficzna przynajmniej 128MB.

eos

Obecna wersja systemu ma status alfa, więc wymaga znajomości poprzedniego systemu i pewnego doświadczenia z Linuksem. Po uruchomieniu systemu z płyty należy zalogować się jako guest z hasłem guest. Hasło roota to root i będzie potrzebne do zainstalowania systemu. Ikonka programu instalacyjnego znajduje się na pulpicie. Nie należy usuwać tzw. zbędnych komponentów systemu podczas instalacji. Instalator proponuje bowiem usunięcie między innymi locales-pl oraz sterowników z grupy dkms.
Po instalacji należy ustanowić własne hasło roota, założyć konto użytkownika (guest jest usuwany podczas instalacji) i nadać mu hasło.
Do późniejszej pracy z systemem będą jeszcze potrzebne hasła do MySQL oraz Mailadmina. Te hasła zainteresowani dostaną indywidualnie, ponieważ obawiam się, że ktoś lekkomyślny może pozostawić domyślne hasło i potem stać się ofiarą włamania (hasła zostaną podane na forum Freesco, KOPI lub na Facebooku). PHPMyAdmin dostępny jest tylko z adresu 127.0.0.1, aby zminimalizować zagrożenie włamaniami, jeśli ktoś zechce to zmienić, zrobi to już na własny rachunek. Wszelkie dyskusje, pytania i porady dotyczące nowej wersji będą oczywiście dostępne na bieżąco – głównie na Forum Freesco, lecz również na Forum KOPI, a także na Fanpage Freesco.
Nowa wersja będzie dostępna podobnie jak inne pliki w katalogu download.

Cron w służbie dozorowania serwera

W zasadzie to nic nowego, ale pomyślałem sobie, że może komuś się przydać.
#!/bin/bash

PRACUJE=`ls /var/lib/clamav |grep clamd.socket |wc -l`

if [ $PRACUJE != 0 ]; then
echo „CLAMD pracuje” >>/var/log/exim/main.log

else
echo „CLAMD zdechł” >>/var/log/exim/main.log
/sbin/service clamd restart
/bin/mailx -s „Clamd Crash” user@adres

fi
exit 0

Kilka razy zdarzyło się, że podczas aktualizacji antywirus Clamav się „wysypał”, a gdy nie działa demon Clamd, to Exim nie chce przyjmować i wysyłać poczty. Najkrócej mówiąc, to sytuacja dla administratora bardzo niekomfortowa.
Ponieważ najczęściej wystarczy restart demona, napisałem skrypt, który wykonywany jest przez Cron co godzinę.
Od tego czasu nie zdarzyła mi się już przykra niespodzianka. A system powiadomi mnie jeszcze mailem o tym, że problem w ogóle zaistniał.

Bezpieczeństwo w sieci – smartfony

Jeśli używacie smartfona, to niezależnie od jego marki i używanego systemu podajecie sami siebie na złotej tacy wszelkim inwigilacyjnym służbom. Twój smartfon loguje się do kolejnych BTS od momentu włączenia, przez cały dzień, i notuje twoją wędrówkę po mieście lub dalszą. Tak, zwykły telefon też to robi. Ale na smartfonie twoja aktywność powiązana jest jeszcze z czujnikiem GPS, bo przecież to fajnie, będąc na Długim Targu w Gdańsku kliknąć odpowiednią „apkę”, która wyświetli nam fajne lodziarnie w okolicy, w raz z ratingiem innych użytkowników. A może szukamy bankomatu albo restauracji? Wielki brat to wszystko zobaczy i będzie widział. Na dodatek wasz smartfon powiązany jest z kontem w Google, Apple, Microsofcie… więc nie schowacie się nawet w mysiej dziurze. Fajnie jest mieć wszystko na smartfonie – i pocztę, i zdjęcia, nawigację oraz informacje turystyczne. Tylko jadąc do Warszawy na demonstrację i używając jednocześnie smartfonowej nawigacji bardzo ułatwiacie życie ewentualnym służbom, które będą was inwigilować. Może jednak babcia miała rację, że jak coś jest do wszystkiego, to jest do niczego.
Powiedzmy sobie jasno. Te wszystkie udogodnienia, remindery, aplikacje turystyczne, komunikacyjne, zakupowe i nawigacje mają cenę. A jest nią wasza prywatność i nic się z tym nie da zrobić, dopóki używacie smartfona.
Faktem jest że smartfony Apple, szczególnie te ostatnich generacji, mają lepsze zabezpieczenia. Wielkiemu bratu trudno będzie wykraść zdjęcia, filmy i wiadomości, nawet jak dostanie urządzenie do rąk. Pliki są szyfrowane. Jednak wcześniejsze ostrzeżenia dotyczą też Apple. Amerykańskie władze ostatnio są niezadowolone z tego szyfrowania i żądają od Apple, by sprokurował im backdoora, czyli tylne drzwi dla służb specjalnych. Można się liczyć z tym, że prędzej, czy później to nastąpi.
Mając w smartfonie Windows lub Androida trzeba uważać znacznie bardziej. Bo zainstalować tam oprogramowanie szpiegowskie jest zdecydowanie łatwiej. Choć nie okłamujmy się, dla instytucji, które chciałyby nas inwigilować, ważniejsza jest mapa naszych podróży, miejsca w których bywamy, inne telefony, które meldują się w tych samych BTSach. Na podstawie tych danych można sporządzić mapę mobilności i kontaktów, przeanalizować zwyczaje figuranta i ulubione miejsca. Ułatwiamy to sami dając rozmaitym aplikacjom nie tylko nasze dane, ale i prawo do np. samoczynnego „meldowania się” w różnych miejscach.
Gdyby ktoś uważał, że prywatność jest dla niego ważniejsza, niż rabaty, social media i bycie cool, dżezi i glamour, musi przestać korzystać ze smartfona. Telefon wyłączać przed wyjściem z domu i nie używać telefonów które wyłączają się w dwóch trybach – „wyłączony” i „naprawdę wyłączony”.
O ile jednak nadal chcemy używać smartfona, to możemy ustawić bezpieczne przesyłanie poczty (opisane w odrębnym tekście) oraz zainstalować aplikację Signal – komunikator z szyfrowaniem. Tylko tyle możemy zrobić.

Bezpieczeństwo w sieci – poczta

Od niedawna funkcjonuje nowa ustawa, która w zasadzie umożliwia rządowi podsłuchiwać każdego i wszędzie bez praktycznie żadnych ograniczeń, w szczególności zaś zostaliśmy pozbawieni jakiegokolwiek prawa do prywatności w sieci. Jednak nie będę się zajmować polityką, lecz tym – jak pomimo dążeń wielkiego brata zapewnić sobie minimum prywatności.
Dziś kilka słów o poczcie elektronicznej.
Jeszcze kilka lat temu dość powszechne było przesyłanie sobie poczty przez serwery bez użycia szyfrowania. Oznaczało to, że każdy kto miał dostęp do przesyłanych pakietów mógł przejąć ich zawartość i odczytać. Także i dziś część serwerów nie używa szyfrowania. To nie jest dobre. Także i my sami powinniśmy wybierać opcję szyfrowanego przesyłania poczty. Oznacza to, że w programie pocztowym powinniśmy użyć portów SSL do wysyłania i odbierania poczty (465 i 995) zamiast zwykłych portów (25 lub 587 i 110).
szyfrowanie-poczty-2
W ten sposób wysyłana i pobierana poczta zabezpieczona jest przed podejrzeniem jej w trakcie transmisji. O ile jednak druga strona nie używa szyfrowanej poczty, bezpieczeństwa nadal trudno się spodziewać.
Gmail w swoim panelu poczty ma bardzo przydatny malutki znak graficzny, który pojawia się przy poczcie, która została przesłana „otwartym kanałem”. Zobaczymy przy takim mailu otwartą kłódkę.
szyfrowanie-poczty-1
Warto też pamiętać, że jeśli już korzystamy z poczty przez przeglądarkę, to panel powinien być również szyfrowany, tak jak ma to właśnie Gmail (https).
Jeśli zależy nam na poufności i bezpieczeństwie naszej poczty, nie powinniśmy nigdy niczego ważnego nie pisać w mailach wysyłanych do osób, których serwery szyfrowania nie stosują. Korzystając z dużego darmowego dostawcy poczty lepiej wybrać Gmaila niż Wirtualną Polskę lub O2. Z tego prostego powodu, że Gmail sporą część żądań polskich służb w sprawie ujawnienia poczty lub danych załatwia odmownie, zaś każdy polski dostawca będzie w tym zakresie w dużo gorszej sytuacji. W przypadku treści, które chcemy szczególnie zabezpieczyć, możemy zaszyfrować wiadomość, jeśli używamy programu do odbierania i wysyłania poczty.
szyfrowanie-poczty-3
Pamiętajmy, że bezpieczeństwo i prywatność naszej poczty elektronicznej zależy także od osoby z którą wymieniamy maile i powinniśmy ją uwrażliwić na możliwe zagrożenia. Jeśli tylko jedna strona używa zabezpieczeń to mamy zamknięte drzwi – ale z kluczem w zamku.
Zalecam używać programu pocztowego zamiast interfejsu www i kasować maile z serwera. Jeśli nawet jakieś służby „tajne, jawne i dwu płciowe”* będą miały dostęp do naszej skrzynki, to nie znajdą tam całego archiwum, a co najwyżej kilka ostatnich reklam. No, powiedzmy, że do momentu zanim „nocą kolbami w drzwi załomocą”** – zatem z własnego dysku również maile należzy kasować albo dysk zaszyfrować, ale o tym innym razem.
Pamiętajmy, że dla odpowiednich służb ważne mogą być rozmaite maile, nie tylko te, kiedy zamierzacie „obalić ustrój PRL przemocą” demonstrując razem z Komitetem Obrony Demokracji, ale także i te prywatne lub wręcz intymne, których upublicznieniem będzie można was szantażować. A szantaż będzie tym bardziej skuteczny, im bardziej wasza praca ma charakter zaufania publicznego (np. prawnik, urzędnik, lekarz, nauczyciel).
Pamiętajmy też, że coraz powszechniej używane smartfony i tablety stwarzają znacznie większe ryzyko naruszenia naszej prywatności niż zwykły domowy komputer (nawet z systemem Windows).

* Cyprian Kamil Norwid
** Władysław Broniewski