Безопасное хранение паролей с помощью Hashicorp Vault в Ubuntu 20.04
Не всегда возможно запомнить все секретные ключи, парольные фразы и токены. Иногда управление и сохранение секретов может оказаться сложной задачей. Возможно, нам понадобится где-то хранить такие секреты, чтобы мы могли использовать их при необходимости. Hashicorp Vault — это решение, которое можно использовать для хранения секретов. Он защищает все хранящиеся на нем секреты и сохраняет их в безопасности. В этой статье мы узнаем, как установить хранилище Hashicorp на Ubuntu 20.04.
Предварительные условия
- Недавно установленная система Ubuntu
- Учетная запись пользователя с привилегиями root
- Подключение к Интернету для загрузки пакетов
Обновить сервер
Прежде чем начать установку, убедитесь, что ваш сервер Ubuntu обновлен. Запустите следующую команду, чтобы обновить пакеты приложений.
sudo apt-get update && sudo apt-get upgrade -y
Download the latest version of a vault
Последняя версия приложения хранилища доступна на странице загрузки хранилища Hashicorp. Перейдите по ссылке https://www.vaultproject.io/downloads и выполните поиск «Последние загрузки» внизу страницы. Найдите пакет загрузки для Linux и скопируйте ссылку для скачивания.
После копирования ссылки приложение можно будет загрузить с помощью команды wget .
wget https://releases.hashicorp.com/vault/1.8.2/vault_1.8.2_linux_amd64.zip
Извлеките файл
После завершения загрузки извлеките архив и переместите файл в каталог /usr/bin.
unzip vault_1.8.2_linux_amd64.zip
sudo mv vault /usr/bin
Вы можете ввести команду vault , которая отобразит общие команды хранилища.
vault
Создайте файл конфигурации хранилища.
Создайте несколько каталогов для хранения данных хранилища и файлов конфигурации. В этой статье мы будем хранить файлы конфигурации в каталоге /etc/vault, а данные хранилища — в каталоге /var/lib/vault/data .
sudo mkdir /etc/vault
sudo mkdir -p /var/lib/vault/data
Теперь создайте файл конфигурации хранилища hashicorp в каталоге /etc/vault.
sudo vi /etc/vault/config.hcl
Вставьте следующее содержимое и сохраните.
disable_cache = true
disable_mlock = true
ui = true
listener "tcp" {
address = "0.0.0.0:8200"
tls_disable = 1
}
storage "file" {
path = "/var/lib/vault/data"
}
api_addr = "http://0.0.0.0:8200"
max_lease_ttl = "8h"
default_lease_ttl = "8h"
cluster_name = "vault"
raw_storage_endpoint = true
disable_sealwrap = true
disable_printable_check = true
Настройте хранилище для запуска в качестве службы
Нам нужно создать файл службы хранилища, чтобы запустить приложение хранилища как службу. Перейдите в каталог /etc/systemd/system/ и создайте служебный файл со следующим содержимым.
sudo vi /etc/systemd/system/vault.service
[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/config.hcl
[Service]
ProtectSystem=full
ProtectHome=read-only
PrivateTmp=yes
PrivateDevices=yes
SecureBits=keep-caps
AmbientCapabilities=CAP_IPC_LOCK
NoNewPrivileges=yes
ExecStart=/usr/bin/vault server -config=/etc/vault/config.hcl
ExecReload=/bin/kill --signal HUP
KillMode=process
KillSignal=SIGINT
Restart=on-failure
RestartSec=5
TimeoutStopSec=30
StartLimitBurst=3
LimitNOFILE=6553
[Install]
WantedBy=multi-user.target
Сохраните файл и выйдите.
Enable and start vault service
Выполните следующую команду, чтобы запустить и включить службу хранилища.
sudo systemctl daemon-reload
sudo systemctl start vault
sudo systemctl enable vault
Чтобы проверить состояние службы хранилища, выполните следующую команду.
sudo systemctl status vault
Access vault UI using browser
Мы установили и настроили хранилище. Теперь вы можете получить доступ к пользовательскому интерфейсу хранилища, используя следующий URL-адрес.
http://ip_вашего_сервера:8200
Вы можете инициализировать и использовать хранилище в качестве менеджера паролей.
Заключение
В этой статье мы узнали, как установить и настроить хранилище Hashicorp в системе Ubuntu для хранения секретных токенов, паролей и сертификатов.