Veeam v11: Hardened Repository (Immutability) installation - pt.1

veeam-v11-hardened-repository-immutability-01

The new Veeam Backup & Replication 11 provides the capability to have immutable backups leveraging Linux with the Hardened Repository.

Already introduced in Veeam v10 to store backups on Object Storage S3 with Object Lock enabled, the Immutability feature protects your backups against overwriting, accidental deletion, ransomware attacks and internal intruders.

A good backup design is the key for a successful data protection strategy to avoid potential data loss that can affect the business. If data are not well protected, a ransomware attack could be a nightmare for administrators.

 

Blog Series

Veeam v11: Hardened Repository (Immutability) installation - pt.1
Veeam v11: Hardened Repository (Immutability) configuration - pt.2
Veeam v11: Hardened Repository (Immutability) add MFA - pt.3

 

Requirements

To configure the Immutability for data backups, you need to meet some requirements:

  • Veeam Backup & Replication v11.
  • Although the solution can run as virtual machine, a physical machine is strongly recommended for security concerns.
  • A 64bit Linux distribution to configure the repository. Suggested the Ubuntu 20.04 LTS or later distribution for highest quality of reflink, RHEL/CentOS 8.2 or later, SLES 15 SP2 and Debian 10.
  • The Linux Server should support XFS (enable the use of the Veeam fast cloning technology) and it is the recommended file system to use.

Since backups cannot be modified due to Immutability, only forward incremental with periodic synthetic or active full backups are supported. For Backup Copy Jobs, NAS backup, log shipping, RMAN/SAP HANA/SAP on Oracle backups won't take advantage of the Immutability option but can be stored on the same repository.

Backup Copy Jobs configured with GFS retention policy will be able to use the Immutability feature.

For Hardened Repository implementation, Veeam components only access the Linux Repository with non-root credentials and only port TCP 6162 is required for the communication between Proxy and Repository (TCP 2500 to 3300 are assigned when needed).

Hardened Repository 1

 

Enforce security for Hardened Repository

To better protect backup data, you should follow some guidelines to enforce the security:

  • Although persistent credentials can be used, is recommended the use of the new Single-use credentials for hardened repository during the deployment to avoid storing the credentials in Veeam Backup & Replication.

Hardened Repository 2

  • SSH should be disabled
  • iDRAC, iLO or other remote management solutions to the repository should be disabled or hardened
  • Time should be synced with a reliable NTP Server to avoid time changes from a potential attacker. Time changes could alter the Immutability retention.

 

Install Ubuntu Server

For this procedure the Ubuntu Linux distribution is used to implement the Hardened Repository. Download the .ISO file for Ubuntu Server 20.04 LTS then boot your machine to run the installation wizard.

Select the language to use and press Enter.

Hardened Repository 3

Specify the keyboard layout to use, select Done then press Enter.

Hardened Repository 4

By default the NIC is set to use DHCP. To assign a static IP address, select the NIC and press Enter. Select Edit IPv4 from the available options. If your physical server provides two or more NICs, you can create a bond (teaming) to increase the available bandwidth.

In the Network connections page, select Create bond option.

Hardened Repository 5

Enter a Name and specify the Devices to use. As Bond mode select 802.3ad from the drop-down menu then click Create.

Hardened Repository 6

Highlight the just created bond and press Enter. Select Edit IPv4 and press Enter.

Hardened Repository 7

Select Manual as IPv4 Method and press Enter.

Hardened Repository 8

Fill all the requested information then select Save and press Enter.

Hardened Repository 9

When the static IP address has been set, select Done and press Enter.

Hardened Repository 10

If you don't use a Proxy, select Done and press Enter.

Hardened Repository 11

Leave default value, select Done and press Enter.

Hardened Repository 12

Set Custom storage layout to create a custom partitions schema. Select Done and press Enter.

Hardened Repository 13

In this example, the storage in use has two local disks:

  • One disk for the OS
  • One disk to store backups

Highlight the first disk /dev/sda and select Add GPT Partition.

Hardened Repository 14

Leave the Size field blank to use all the available space for the partition then select Format to specify the file system. In the example, the file system ext4 has been used. Select Create then press Enter.

Hardened Repository 15

Now select the second local disk /dev/sdb and choose Add GPT Partition. Note there is a new bios_grub partition type in the first configured partition.

Hardened Repository 16

Leave the Size field blank and use xfs as Format type. Create a custom Mount point (in the example /mnt/veeamrepo) and press Enter to confirm. XFS with Reflink works pretty the same way as ReFS to optimize performance and disk consumption (size of synthetic copies are smaller and the process faster). Veeam calls this technology Fast Clone.

Hardened Repository 17

Once the partitions layout has been completed, select Done and press Enter.

Hardened Repository 18

Select Continue.

Hardened Repository 19

Enter the Name, Server name, Username and Password the select Done.

Hardened Repository 20

Select Install OpenSSH Server option to enable SSH. Select Done.

Hardened Repository 21

No need to install additional features. Select Done then press Enter to begin OS installation.

Hardened Repository 22

The Linux OS is being installed in the system.

Hardened Repository 23

When the installation has completed, select Reboot Now.

Hardened Repository 24

 

Configure the Repository

Login as the account configured during the OS installation (in the example administrator) and enter the password.

Hardened Repository 25

To keep the system up to date, install latest upgrades with the command:

# sudo apt-get upgrade

Hardened Repository 26

Check the file system in use for the partition that will be used by Veeam to store the backups. In the example, /mnt/veeamrepo is the dedicated partition formatted as xfs.

# df -Th

Hardened Repository 27

 

Create a local account

You need to create a dedicated local user with the correct permissions so that the Veeam Transport Service has the correct rights to the Veeam mount.

Create a new account used by Veeam and create the password.

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

Hardened Repository 28

We need temporarily to allow the new user to execute commands as root to install the required Veeam services. The user is added to the sudo group.

# sudo usermod -a -G sudo locveeam

Hardened Repository 29

 

Configure the mount point

If you want to take benefit of Fast-Clone technology (Fast Clone is based on the Reflink) to optimize space and performance during Synthetic Full operations, by default Ubuntu doesn't enable Reflink when partition is formatted XFS during the installation procedure. Veeam requires the file system to be formatted with Reflink enabled to leverage Fast Clone capability.

Access your hardened repository and retrieve the list of disks installed in Ubuntu to identify the disk used as repository.

# sudo fdisk -l

Hardened Repository 30

Since the partition has been mounted during the installation procedure, we need first to unmount the partition.

# sudo umount /mnt/veeamrepo

Hardened Repository 31

Once the partition has been unmounted, we need to format the partition with the parameters required by Veeam to leverage Fast-Clone technology: reflink and enable CRC.

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

Hardened Repository 32

Since the UUID has changed due to this operation, we need to retrieve the new UUID and amend the /etc/fstab file to mount the partition automatically.

# sudo blkid /dev/sdb

Hardened Repository 33

Update the /etc/fstab file with the new UUID.

# sudo vi /etc/fstab

Hardened Repository 34

Reload configured partitions.

# sudo mount -a

Hardened Repository 35

 

Assign permissions to the mount point

Assign permissions to access the /mnt/veeamrepo folder to the locveeam account using the following commands:

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

Hardened Repository 36

Check the assigned permissions.

# ll /mnt

Hardened Repository 37

The configuration of the physical Hardened Repository is now complete. Part 2 will cover the configuration of Veeam Backup & Replication v11 to take benefit of the Immutability feature.

signature

39 Comments

  1. Marius Redelinghuys 08/06/2021
    • Paolo Valsecchi 10/06/2021
  2. Stuart Burns 16/06/2021
  3. Gerardo Andrade 02/07/2021
    • Paolo Valsecchi 04/07/2021
      • Gerardo Andrade 04/07/2021
  4. John Monroe 25/07/2021
    • Paolo Valsecchi 19/08/2021
  5. Daniel Pattenden 18/08/2021
  6. James 23/08/2021
  7. Niko 26/08/2021
    • Paolo Valsecchi 03/09/2021
  8. James 26/08/2021
  9. Mark 13/10/2021
  10. Wael 03/11/2021
    • Felix Mintah 06/11/2021
  11. Felix Mintah 06/11/2021
  12. Omar 10/11/2021
  13. Øyvind 10/11/2021
    • Paolo Valsecchi 10/11/2021
      • Øyvind 11/11/2021
        • Øyvind 12/11/2021
  14. Jenny Carter 30/11/2021
    • David 10/01/2022
  15. marco 22/12/2021
  16. Matthias Schäfer 29/01/2022
  17. Ishtvan Balint 03/02/2022
    • Paolo Valsecchi 05/02/2022
  18. Brian 10/02/2022
    • Paolo Valsecchi 10/02/2022
      • Brian 10/02/2022
  19. Mark 10/02/2022
  20. Repo 11/07/2022
  21. Mark 08/02/2023
    • Paolo Valsecchi 08/02/2023