Úvod
Sejf uchovává, řídí a chrání data používaná pro autentizaci a autorizaci. Vault je systém pro správu tajemství, omezování nebo schvalování přístupu k heslům, certifikátům nebo rozhraním API. Poskytuje také šifrování dat, tajemství na vyžádání a odvolání.
V tomto kurzu se dozvíte, jak nainstalovat Vault na CentOS a spustit Vault jako službu.

Předpoklady
- Systém CentOS Linux
- Uživatelský účet s sudo privilegia
- Přístup k oknu příkazového řádku/terminálu (Ctrl +Alt +F2 )
Nainstalujte Vault z binárního systému na CentOS
1. Před instalací Vault vytvořte nový adresář v Linuxu pomocí příkazu mkir pro uložení binárního balíčku a dalších nezbytných dat pro software. Pro ilustraci jej pojmenujeme „adresář“ a spustíme následující příkaz k jeho vytvoření:
sudo mkdir -p /opt/vault/directory
2. Po nastavení adresáře přejděte ke stažení binárního souboru z oficiálního webu Vault. Přejděte na webovou stránku a klikněte na modrou ikonu Stáhnout.
3. Najděte příslušný balíček pro váš operační systém CentOS (Linux) a klikněte na dlaždici.
4. Uvidíte ikonu Linux a tlačítko Stáhnout. Klikněte pravým tlačítkem na tlačítko a vyberte Kopírovat umístění odkazu.

5. Dále se vraťte na příkazový řádek. Použijte wget
příkaz a umístění odkazu, které jste zkopírovali v předchozím kroku pro stažení binárního souboru:
sudo wget https://releases.hashicorp.com/vault/1.2.3/vault_1.2.3_linux_amd64.zip
6. Poté rozbalte balíček pomocí příkazu:
unzip vault_1.2.3_linux_amd64.zip

7. Po rozbalení zadejte:
sudo chown root:root vault
sudo mv vault /usr/local/bin/ (or to som other DIR that's present in your $PATH
8. Ověřte, že Vault běží pomocí příkazu:
vault --version
Výstup zobrazuje verzi Vault spuštěnou v systému.
Další informace získáte na stránce nápovědy příkazem:
vault
Konfigurace úložiště
Vytvoření uživatele služby pro Vault
Nejlepší je zvážit zabezpečení privilegovaného účtu a mít samostatného neprivilegovaného uživatele systému pro provozování serveru Vault.
K vytvoření systémového uživatele a udělení vlastnictví instalačního adresáře použijte následující příkaz:
sudo useradd --system -home /etc/vault.d - shell /bin/false vault
Zkontrolujte, zda jste úspěšně vytvořili uživatele služby pomocí:
sudo grep vault /etc/passwd
Výstup by měl ukazovat něco jako řádek níže:
vault:x:997:995::/etc/vault.d:/bin/false
Spustit Sejf jako službu
Chcete-li spustit Vault jako službu, musíte také vytvořit nový soubor služby Systemd:
sudo vi/etc/systemd/system/vault.service
Poté přidejte obsah níže:
[Unit]
Description="HashiCorp Vault - A tool for managing secrets"
Documentation=https://www.vaultproject.io/docs/
Requires=network-online.target
After=network-online.target
ConditionFileNotEmpty=/etc/vault.d/vault.hcl
StartLimitIntervalSec=60
StartLimitBurst=3
[Service]
User=vault
Group=vault
ProtectSystem=full
ProtectHome=read-only
PrivateTmp=yes
PrivateDevices=yes
SecureBits=keep-caps
AmbientCapabilities=CAP_IPC_LOCK
Capabilities=CAP_IPC_LOCK+ep
CapabilityBoundingSet=CAP_SYSLOG CAP_IPC_LOCK
NoNewPrivileges=yes
ExecStart=/usr/local/bin/vault server -config=/etc/vault.d/vault.hcl
ExecReload=/bin/kill --signal HUP $MAINPID
KillMode=process
KillSignal=SIGINT
Restart=on-failure
RestartSec=5
TimeoutStopSec=30
StartLimitInterval=60
StartLimitIntervalSec=60
StartLimitBurst=3
LimitNOFILE=65536
LimitMEMLOCK=infinity
[Install]
WantedBy=multi-user.target
Povolte a spusťte službu pomocí příkazů:
sudo systemctl enable vault.service
sudo systemctl start vault.service
Příprava na správu Vault
Dalším krokem je přesunutí adresáře Vault bin do proměnné prostředí PATH pomocí příkazu:
export PATH=$PATH:/opt/vault/bin
echo "export PATH=$PATH:/opt/vault/bin" >> ~/.bashrc

Následuje nastavení proměnných prostředí pro Vault zadáním:
export VAULT_ADDRESS=http://10.128.0.2:8200
echo "export VAULT_ADDR=http://10.128.0.2:8200" >> ~/.bashrc
Inicializujte a odpečeťte svůj trezor
Chcete-li inicializovat a odpečetit Vault, musíte nejprve spustit Vault jako server v režimu pro vývojáře . Dejte si však pozor, abyste nespouštěli dev server v produkci.
Spusťte následující příkaz:
vault server -dev
Příkaz vytvoří výstup, který obsahuje konfiguraci serveru , klíč pro odpečetění a kořenový token . Uložte hodnoty klíče odpečetění a kořenového tokenu, protože je budete potřebovat v dalších krocích.
Začněte nastavením proměnné prostředí. Tento příkaz najdete jako součást výstupu z předchozích kroků:
export VAULT_ADDR=’http://127.0.0.1:8200’
Poté spusťte následující příkaz s informacemi z výstupu dev serveru:
export VAULT_DEV_ROOT_TOKEN_ID=”XXXXXXXXXXXXXXXX”
Zkontrolujte stav serveru:
valut status
Výstup by měl zobrazovat, že Vault je nyní inicializován a již není zapečetěný.
Key Value
--- -----
Seal Type shamir
Initialized true
Sealed false
Total Shares 1
Threshold 1
Version 1.2.3
Cluster Name vault-cluster-18e6bce0
Cluster ID 16382125-eb14-f23a-8145-ad64eee072cf
HA Enabled false