Clark's Home page

Tecnicismi vari di un Sysadmin Linux ma anche qualcosa della sua vita

Preparazione delle macchine. —

Questa realizzazione è dedicata al rifacimento dei due bastion host aziendali.
Il rifacimento si è reso necessario perché la distro usata precedentemente (Lenny)  non è praticamente più mantenuta e dato che vivere con più mal di pancia di quanto non sia necessario non mi piace…

Le due macchine  sono identiche e sono due server Dell PowerEdge SC440, montano entrambe un disco SATA  da 160 GB, la distro  è  la attuale Stable 6.0.6
il partizionamneto dei dischi è il seguente:

cfdisk (util-linux-ng 2.17.2)

Disk Drive: /dev/sda
Size: 160000000000 bytes, 160.0 GB
Heads: 255   Sectors per Track: 63   Cylinders: 19452

Name      Flags          Part Type              FS Type                    [Label]                        Size (MB)
——————————————————————————————————————-
sda1  Primary Dell Utility      41,13
sda2  Boot    Primary           Linux ext3 [/boot]                           148,06
sda3          Primary           Linux swap / Solaris                        3997,49
Logica  Free Space              0,04               *
sda5    NC    Logical          Linux ext3  [/]                    1998,72               *
sda6          Logical          Linux ext3  [/usr]                          20003,89
sda7          Logical          Linux ext3  [/usr/local]                     1003,49
sda8          Logical          Linux ext3  [/var]                          79999,08
sda9          Logical          Linux ext3  [/cache]                        24996,63
sda10         Logical          Linux ext3  [/jumper]                       24996,63
sda11         Logical          Linux ext3  [/tmp]                           1003,49
sda12         Logical          Linux ext3  [/home]                          1809,57

Le due macchine sono sangiorgio e perseo e hanno rispettivamente quattro e tre schede di rete in Giga.
eth0 World interface
eth1 Lan interface (network 192.168.2.0/24)
eth2 Cluster interface (network 192.168.10.0/24)
eth3 DMZ interface (on sangiorgio)

La cosa molto impoortante  in questo tipo di realizzazione è di eseguire le operazioni su ambo le  macchine nello stesso momento, vale a dire se installo il kernel ricompilato su sangiorgio immediatamente dopo anche su perseo, quando installo drbd su sangiorgio lo stesso faccio su perseo, e via dicendo questo si rende necessario per tenere allineati gli UID, se cosi non fosse poi  far funzionare certi programmi e’ semplicemente impossibile, e il debug della situazione costa lacrime e sangue.

La distribuzione e’ una Debian stable (ad oggi 6.0.6) con alcuni pacchetti di backport, il setup iniziale non presenta nessuna particolare nota di interesse e’ fatto con l’opzione expert per poter scegliere ad ogni passo i parametri.

hardening del sistema
Premessa è un hardening minimo per evitare troppe complicazioni nel funzionammento, sicurezza e facilità d’uso sono fortemente incompatibili, suggerisco la lettura di
http://www.debian.org/doc/manuals/securing-debian-howto/

Il primo passo è quello di scegliere il kernel che si userà, nel mio caso ho preso il kernel di debian da backport e ricompilarselo ad hoc per il sistema a disposizione, personalmente su macchine front end scelgo la compilazione built-in, vale a dire senza moduli, e’ da un lato una rottura di scatole ma dall’altro impedisce exploit sui moduli.

Due parole ancora sulla scelta del kernel, è vero che Debian e’ indietro molto sul rilascio del kernel vanilla, ma e’ altrettanto vero che i kernel Debian sono testati e molto stabili oltre ad avere tutta una serie di patch gia’ incorporate che altrimenti dovrei applicare io, inoltre dato che queste macchina andrà in cluster con la sua gemella e che kernel e DRBD sono legati in modo profondo al fine di evitare di ricompilarmi anche il drbd per il vanilla ho scelto questa via IMPORTANTE  è installare subito da backports firmware-linux-free e .firmware-linux-nonfree al fine di evitarsi bruttissime sorprese con le schede di rete al riavvio.

edito  /etc/pam.d/other e aggiungo queste righe

auth     required       pam_securetty.so
auth     required       pam_warn.so
auth     required       pam_deny.so
account  required       pam_warn.so
account  required       pam_deny.so
password required       pam_warn.so
password required       pam_deny.s0
session  required       pam_warn.so
session  required       pam_deny.so
Queste righe sono un buon default per le applicazioni che usano pam (l’accesso è negato per default)

edito /etc/login.defs e aggiungo

ENCRYPT_METHOD SHA512
Da ultimo edito il file /etc/host.conf e lo modifico in questo modo:
order bind,hosts
multi on
nospoof on
spoofalert on
La prima opzione serve a risolvere i nomi degli host prima tramite DNS e poi tramite il file che elenca gli host.
L’opzione “multi” determina se un file in “/etc/hosts” può avere indirizzi IP multipli (interfacce multiple ethN).
L’opzione “nospoof” indica di non permettere lo spoofing su questa macchina.
L’opzione “spoofalert” logga i tentativi di spoofing.
Tolgo con apt-get remove –purge tutto il software che non mi serve, in special modo tutti i tools di sviluppo in modo da impedire ad un eventuale intruso di compilarsi in loco exploit e altre piacevolezze varie.
Modifico il file /etc/ssh/sshd_config cambiando la porta su cui ascolta il demone (default 22)

Port 2561

e impedendo l’accesso come root

PermitRootLogin no

Passo ad installare quel software che mi può essere utile a rendere più sicura la macchina

apt-get install harden-tools jack tiger

sangiorgio:/# ln -s /usr/lib/tiger/systems/Linux/2 /usr/lib/tiger/systems/Linux/3
apt-get install harden-environment debsums harden-nids samhain
apt-get install harden-clients harden-servers harden-doc

I valori di default sono sufficienti al mio scopo e non ho bisogno di configurare nulla al momento.

 


Categorised as: Cluster | Linux | Sistemi operativi | Work

Comments are disabled on this post


Comments are closed.