wtorek, 12 kwietnia 2011

syslog

demon syslogd zajmuje się zarządzaniem dziennikami systemowymi i ich monitorowaniem.
W celu instalacji :
# apt-get install sysklogd

dig

Polecenie dig pozwala na odpytywanie serwerów DNS:
instalacja
# apt-get install dnsutils
zastosowanie odpytanie serwerów DNS o domenę z usługami:
#dig postfix-book.co MX
W odpowiedzi otrzymamy:
-----------------------------------------------------
; <<>> DiG 9.7.2-P3 <<>> postfix-book.com MX
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36497
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 3, ADDITIONAL: 3

;; QUESTION SECTION:
;postfix-book.com.              IN      MX

;; ANSWER SECTION:
postfix-book.com.       3600    IN      MX      20 mail.state-of-mind.de.
postfix-book.com.       3600    IN      MX      10 mail.state-of-mind.de.


;; AUTHORITY SECTION:
postfix-book.com.       172800  IN      NS      server1-ns2.udagdns.net.
postfix-book.com.       172800  IN      NS      server1-ns3.udagdns.net.
postfix-book.com.       172800  IN      NS      server1-ns1.udagdns.net.

;; ADDITIONAL SECTION:
server1-ns1.udagdns.net. 559    IN      A       62.146.28.82
server1-ns2.udagdns.net. 559    IN      A       62.146.33.101
server1-ns3.udagdns.net. 559    IN      A       62.146.33.102

;; Query time: 104 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Tue Apr 12 10:49:27 2011
;; MSG SIZE  rcvd: 224
--------------------------------------------
gdzie sekcja:

;; ANSWER SECTION:
postfix-book.com.       3600    IN      MX      20 mail.state-of-mind.de.
postfix-book.com.       3600    IN      MX      10 mail.state-of-mind.de.

mówi,  że
1. istnieje domena postfix-book.com, w której obsługiwany gdzie poczta obsługiwana jest przez serwer mail.state-of-mind.de,
 z kolei sekcja:

;; AUTHORITY SECTION:
postfix-book.com.       172800  IN      NS      server1-ns2.udagdns.net.
postfix-book.com.       172800  IN      NS      server1-ns3.udagdns.net.
postfix-book.com.       172800  IN      NS      server1-ns1.udagdns.net.

mówi jakie serwery dla danej domeny są autorytatywne (nadrzędne, gdzie istnieje rekord A do danej domeny np. postfix-book.com)

sobota, 26 marca 2011

Tunelowanie portów: stunel

Tunelowanie portów polega w odróżnieniu od sieci VPN na obsłudze pojedynczych usług jak np szyfrowanie odbioru poczty przez POP3.  Sieci VPN operują w sposób globalny na adresacji IP, routingu w taki sposób aby niezależnie od aplikacji cała transmisja przechodziła przez tunel.
Tunelowanie portu jest możliwe dla zwykłego użytkownika bez prawa administratora.

OpenSSL, certyfikaty, klucze, wnioski

Instalacja 
Ważne jest aby swoje CA tworzyć na komputerze oddzielnym od internetu albo przynajmniej za bramą (firewall).

Instalacja :
#apt-get install ssh
Sprawdzenie działania
#openssh
========================================================================
Tworzymy własny Urząd Certyfikacji (CA)

Urząd Certyfikacji będzie zajmował się uwierzytelnianiem komputerów w sieci Marionet, nadając im certyfikaty. 
Podstawą urzędu jest konfiguracja pliku openssl.conf oraz wygenerowanie klucza prywatnego i publicznego

Konfiguracja /etc/ssl/openssl.conf
=====================================
[CA_default]
dir = /etc/ssl                                                      #katalog główny, w którym zapisane są pliki
certs = $dir/certs                                               #katalog, w którym zapisywane będą certyfikaty
new_certs_dir=$dir/newcerts                             #katalog z nowymi certyfikatami
clr_dir = $dir/crl                                                #katalog z listą certyfikatów unieważnionych clr
private_key = $dir/private/cakey.pem                #klucz prywatny
database=$dir/index.txt                                     #informacje o wystawionych certyfikatach wraz ze statusem
certyfikate=$dir/private/cacert.pem                    #certyfikat do podpisu wniosków
serial = $dir/serial                                              #plik z numerem kolejnego wystawienia certyfikatu
crl=$dir/clr.pem                                                 #bieżąca lista certyfikatów unieważnionych
=====================================
Następnie tworzymy wymagany katalog i pliki :
# mkdir /etc/ssl/crl
#mkdir /etc/ssl/newcerts
# touch /etc/ssl/index.txt
# echo 00 > /etc/ssl/serial
=====================================
Generujemy klucz prywatny (tajny) i certyfikat główny (publiczny), który będą służyły do podpisywania innych certyfikatów dla innych komputerów naszej wewnętrznej sieci VPN.

Klucz prywatny
#openssl genrsa -des3 -out /etc/ssl/private/cakey.pem 1024

Ustalamy hasło do klucza prywatnego. Klucz został zapisany w pliku /etc/ssl/private/cakey.pem. Hasło trzeba pamiętać bo będzie służyło do tworzenia innych certyfikatów.
Pliki z katalogu /etc/ssl należy zarchiwizować do bezpiecznego miejsca. 

Klucz publiczny (certyfikat)
#openssl req -new -x509 -days 365 -key /etc/ssl/private/cakey.pem -out /etc/ssl/private/cacert.pem


Podajemy hasło do klucza prywatnego, aby podpisać certyfikat CA (główny). W polu Common Name podajemy nazwę firmy słownie lub nazwę domeny. 


Podsumowanie:
Mamy plik cakey.pem (klucz prywatny) i cacert.pem (klucz publiczny CA), dzięki kluczom możemy wystawiać certyfikaty innym komputerom naszej sieci branżowej Marionet.
=======================================================================

Uwierzytelniamy serwer

1. Generujmy klucz prywatny dla serwera :
#openssl genrsa -des3 -out /etc/ssl/private/serverkey.pem 1024

2. Generujemy wniosek o wystawienie certyfikatu dla serwera:
# openssl req -new -key /etc/ssl/private/serverkey.pem -out /etc/ssl/private/serverreq.pem


 Wypełniamy jak wyżej. Hasło do zatwierdzenia wniosku z klucza prywatnego serwera.

3. Wystawiamy certyfikat dla pierwszego podmiotu - serwera. Podpisujemy więc wniosek.
#openssl ca -notext -in /etc/ssl/private/serverreq.pem -out /etc/ssl/private/servercert.pem


Hasło podajemy klucz prywatny CA.

Po tej operacji zmienią się pliki :
/etc/ssh/serial - będzie zawierał liczbę 01
/etc/ssh/index.txt - zawiera informacje o serwerze i jego certyfikacie, jest niezbędny przy odwoływaniu certyfikatu.

Podobne operacje będziemy wykonywać dla poszczególnych komputerów w sieci przy rozbudowie sieci VPN o dodatkowe maszyny.

======================================================================
Unieważnienie certyfikatu

Stosujemy operację unieważnienia z powodu odejścia pracownika z firmy lub kradzieży laptopa. 
#openssl ca -revoke jkowalskicert.pem
Podajemy hasło do klucza prywatnego CA.

Generujemy listę CRL - unieważnionych certyfikatów :
openssl ca -gencrl -out crl.pem

Informacja o Debian

To taki uzupełniacz Slacka. Trochę znudziło mi się te ręczne instalowanie, dbałość o zależności. Ma to jednak swoje plusy. Wiem co mam, wiem gdzie mam. W debianie robi sie to z automatu dzięki apt-get install ... . 
Dlatego na razie debian jako tester na virtualce do testów oprogramowania typu : postfix.
Slack brama.
Może stworzymy coś małego na debianie z elisa media center ale to już inna bajka na nowym jak będę...

aktualizacja i instalacja w trybie tekstowym debian

informacje o najnowszych pakietach (niezbędne, by instalować najnowsze pakiety), należy użyć polecenia:
# apt-get update
instalacja pakietów:
# apt-get install nazwa_pakietu
usuwanie pakietu: 
# apt-get remove nazwa_pakietu
usuwanie pakietu wraz z plikami konfiguracyjnymi
#apt-get --purge remove nazwa_pakietu
lub prościej
#apt-get purge nazwa_pakietu
aktualizacja wszystkich pakietów
# apt-get upgrade
aktualizacja całego systemu
#apt-get dist-upgrade


domyślny edytor w systemie (mc F4) mcedit

Jest wiele edytorów, vi ma swoje zalety (np crontab -e) jednak czasami warto posłużyć się nano lub mcedit.
 #nano /root/.bashrc
 Wpis:
export EDITOR=mcedit