Veeam: Linux Hardened Repository con iSCSI

linux-hardened-repository-using-iscsi-01

Se non è disponibile alcun server fisico e un dispositivo NAS è l'unico repository installato nella rete, è possibile configurare una VM Linux come Hardened Repository con iSCSI per rendere i backup immutabili.

Utilizzando una distribuzione Linux supportata, è possibile mappare una LUN via iSCSI su una VM Linux nella propria infrastruttura virtuale e utilizzarla come backup repository per la propria infrastruttura di backup Veeam.

Il dispositivo di storage utilizzato in questa procedura è un NAS Synology e l'OS della VM è una Linux Ubuntu 22.04.3 LTS.

 

Configurare un Linux Hardened Repository con iSCSI

Prima di iniziare la configurazione della VM Linux, è necessario creare un iniziatore iSCSI e un LUN che verrà utilizzato per archiviare i backup.

 

Configurare l'iSCSI Initiator

Per configurare una LUN iSCSI in Linux Ubuntu, verificare che il pacchetto open-iscsi sia installato nel sistema in uso.

# sudo apt -y install open-iscsi

linux-hardened-repository-using-iscsi-02

Abilitare il servizio iSCSI per ogni volta che il server viene avviato.

# sudo systemctl enable open-iscsi
# sudo systemctl enable iscsid

linux-hardened-repository-using-iscsi-03

Editare il file /etc/iscsi/initiatorname.iscsi per specificare l'iSCSI Initiator corretto.

# sudo vi /etc/iscsi/initiatorname.iscsi

linux-hardened-repository-using-iscsi-04

Il sistema è configurato con un'impostazione di default dell'InitiatorName che deve essere modificato.

linux-hardened-repository-using-iscsi-05

Recuperare l'IQN configurato nel dispositivo storage utilizzato come backup repository.

linux-hardened-repository-using-iscsi-06

Sostituire nel file /etc/iscsi/initiatorname.iscsi l'InitiatorName di default con l'IQN configurato nello storage e salvare il file.

InitiatorName=iqn.2000-01.com.lab:NAS-DS918BCK.Target01

linux-hardened-repository-using-iscsi-07

Se la connessione iSCSI connection richiede l'autenticazione, editare il file /etc/iscsi/iscsid.conf.

# sudo vi /etc/iscsi/iscsid.conf

linux-hardened-repository-using-iscsi-08

Abilitare lo startup automatico.

node.startup = automatic

linux-hardened-repository-using-iscsi-09

Abilitare e configurare le impostazioni di autenticazione.

node.session.auth.authmethod = CHAP
node.session.auth.username = username
node.session.auth.password = password

linux-hardened-repository-using-iscsi-10

Riavviare il servizio iSCSI.

# sudo systemctl restart iscsid open-iscsi

linux-hardened-repository-using-iscsi-11

 

Discovery e login al target

Eseguire il comando seguente per individuare l'iSCSI Target. Il target iSCSI configurato iqn.2000-01.com.lab:NAS-DS918BCK.Target01 è stato rilevato correttamente (nell'esempio sono stati rilevati due target iSCSI).

# sudo iscsiadm -m discovery -t sendtargets -p 192.168.10.31

linux-hardened-repository-using-iscsi-12

Ora effettuare il login al target desiderato.

# sudo iscsiadm --mode node --targetname iqn.2000-01.com.lab:NAS-DS918BCK.Target01 --portal 192.168.10.31 --login

linux-hardened-repository-using-iscsi-13

Verificare che la connessione sia stata stabilita correttamente con il dispositivo storage.

# sudo iscsiadm -m session -o show

linux-hardened-repository-using-iscsi-14

 

Creare una nuova partizione e il file system

Dopo aver connesso il disco iSCSI, verificare le partizioni configurate in Ubuntu. Viene visualizzato un nuovo disco sdb.

# cat /proc/partitions

linux-hardened-repository-using-iscsi-15

Recuperare l'elenco dei dischi installati in Ubuntu per identificare il disco utilizzato come repository.

# sudo fdisk -l

linux-hardened-repository-using-iscsi-16

Poiché la partizione da creare è più grande di 2 TB, è necessario configurare una partizione GPT.

# sudo parted /dev/sdb mklabel gpt

linux-hardened-repository-using-iscsi-17

Ora creare la partizione utilizzando l'intero disco formattato XFS.

# sudo parted -a opt /dev/sdb mkpart primary xfs 0% 100%

linux-hardened-repository-using-iscsi-18

Per verificare la partizione appena creata, eseguire il comando:

# lsblk

linux-hardened-repository-using-iscsi-19

Verificare nuovamente i dischi installati. Ora la nuova partizione /dev/sdb1 è visualizzata.

# sudo fdisk -l

linux-hardened-repository-using-iscsi-20

Per sfruttare la tecnologia Fast-Clone in Veeam Backup & Replication, dobbiamo abilitare reflink e CRC formattando la partizione con il seguente comando:

# sudo mkfs.xfs -b size=4096 -m reflink=1,crc=1 /dev/sdb1 -f -K

linux-hardened-repository-using-iscsi-21

 

Mount del file system

Una volta formattata la partizione, bisogna montare il file system per il suo utilizzo.

Per montare la partizione in /mnt/veeamrepo, creare la directory utilizzando il comando mkdir.

# sudo mkdir -p /mnt/veeamrepo

linux-hardened-repository-using-iscsi-22

Effettuare il mount del file system tramite il comando:

# sudo mount -o defaults /dev/sdb1 /mnt/veeamrepo

linux-hardened-repository-using-iscsi-23

Eseguire il comando seguente per verificare il file system:

# df -Th

linux-hardened-repository-using-iscsi-24

Ora recuperare l'UUID della nuova partizione da configurare nel file /etc/fstab.

# sudo blkid /dev/sdb1

linux-hardened-repository-using-iscsi-25

Aggiornare il file /etc/fstab con il nuovo UUID per montare automaticamente il file system a ogni avvio del server.

# sudo vi /etc/fstab

UUID=88d1bd31-1996-4545-9e5a-2b410364f13a /mnt/veeamrepo xfs _netdev 0 0

Aggiungendo il valore _netdev, il mount point verrà montato solo dopo che la rete si sarà avviata correttamente.

linux-hardened-repository-using-iscsi-26

Riavviare il server e assicurarsi che la LUN iSCSI sia mappata dopo l'avvio.

# sudo reboot
# df -Th

linux-hardened-repository-using-iscsi-27

 

Creare l'utente Veeam

Va creato un utente Veeam dedicato con le autorizzazioni corrette in modo che il Veeam Transport Service abbia i permessi corretti per il mount Veeam.

Creare un nuovo account e creare la password.

# sudo useradd locveeam --create-home -s /bin/bash
# sudo passwd locveeam

linux-hardened-repository-using-iscsi-28

Per installare i componenti Veeam richiesti, dobbiamo assegnare temporaneamente l'utente appena creato al gruppo sudo per eseguire i comandi come root.

# sudo usermod -a -G sudo locveeam

linux-hardened-repository-using-iscsi-29

 

Assegnare i permessi al mount point

Assegnare le autorizzazioni per accedere alla cartella /mnt/veeamrepo all'account locveeam e verificare i permessi assegnati.

# sudo chown -R locveeam:locveeam /mnt/veeamrepo/
# sudo chmod 700 /mnt/veeamrepo
# ll /mnt

linux-hardened-repository-using-iscsi-30

 

Testare l'Hardened Repository

Assegnati permessi corretti, è ora di testare l'Hardened Repository con iSCSI.

 

1. Creare il nuovo Hardened Repository con iSCSI in Veeam

Accedere alla console Veeam Backup & Replication e configurare il nuovo Hardened Repository (seguire questa procedura step-by-step).

linux-hardened-repository-using-iscsi-31

 

2. Creare un Backup Job

Creare un Backup Job specificando l'Hardened Repository appena creato per salvare i backup (seguire questa procedura step-by-step).

linux-hardened-repository-using-iscsi-32

 

3. Eseguire il Backup Job

Eseguire il Backup Job.

linux-hardened-repository-using-iscsi-33

 

4. Verificare l'Immutabilità

Provare ad eliminare il backup appena creato per verificare se il backup è immutabile. Come previsto, il backup non può essere eliminato a causa del suo stato di immutabilità.

linux-hardened-repository-using-iscsi-34

 

Mettere in sicurezza nell'Hardeneded Repository

Una volta completati con successo i test di configurazione e backup, l'Hardened Repository con iSCSI deve essere protetto per evitare accessi non autorizzati:

  • Verificare che l'utente Veeam (locveeam nell'esempio) non sia un membro del gruppo sudo.
  • Scollegare il sistema di Remote Server Management (iDRAC, iLO, etc.) dalla rete.
  • Disabilitare l'accesso SSH al repository tramite i comandi:

# sudo systemctl disable ssh.service
# sudo systemctl stop ssh.service

linux-hardened-repository-using-iscsi-35

Poiché la macchina Linux viene eseguita nell'infrastruttura virtuale, anche l'accesso all'ambiente virtuale deve essere protetto.

La configurazione del Linux Hardened Repository con iSCSI è ora completa e il sistema è pronto per l'uso.

signature

Leave a Reply