Лучшие самохостинговые менеджеры паролей: сравнение и настройка безопасности

Подробное руководство по выбору, установке и настройке самохостинговых менеджеров паролей. Сравнение решений, безопасность синхронизация и интеграция в home-lab.

Не указано

Введение в Bitwarden

Bitwarden - это полнофункциональный менеджер паролей с открытым исходным кодом, который предлагает широкий набор функций: хранение паролей, заметок, данных банковских карт и информации о документах.

Подготовка сервера

Установка Docker и Docker Compose на сервере с соответствующими требованиями к ресурсам.

# Установка Docker для Ubuntu/Debian
sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo usermod -aG docker ${USER}

# Установка Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Скачивание и настройка Bitwarden

Создание директории для Bitwarden и настройка Docker Compose.

mkdir ~/bitwarden
cd ~/bitwarden

# Создание docker-compose.yml
version: '3'

services:
  web:
    image: bitwarden/web:latest
    container_name: bitwarden_web
    restart: always
    depends_on:
      - api
    networks:
      - bw-network
    environment:
      - WEBSOCKET_ENABLED=true
      - SIGNUPS_ALLOWED=true
    volumes:
      - ./config:/config
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.bitwarden.rule=Host(`ваш_домен.com`)"
      - "traefik.http.routers.bitwarden.entrypoints=websecure"
      - "traefik.http.routers.bitwarden.tls.certresolver=myresolver"
      - "traefik.http.services.bitwarden.loadbalancer.server.port=80"
    ports:
      - "80:80"
      - "443:443"

  api:
    image: bitwarden/api:latest
    container_name: bitwarden_api
    restart: always
    depends_on:
      - mysql
      - redis
    networks:
      - bw-network
    environment:
      - WEBSOCKET_ENABLED=true
    volumes:
      - ./config:/config

  mysql:
    image: mysql:8.0
    container_name: bitwarden_mysql
    restart: always
    command: --default-authentication-plugin=mysql_native_password
    networks:
      - bw-network
    environment:
      MYSQL_ROOT_PASSWORD=сильный_пароль_для_базы_данных
      MYSQL_DATABASE=bitwarden
      MYSQL_USER=bitwarden
      MYSQL_PASSWORD=сильный_пароль_пользователя_базы
    volumes:
      - mysql-data:/var/lib/mysql
      - ./config/mysql:/etc/mysql/conf.d

  redis:
    image: redis:6-alpine
    container_name: bitwarden_redis
    restart: always
    networks:
      - bw-network
    command: redis-server --requirepass сильный_пароль_для_redis
    volumes:
      - redis-data:/data

volumes:
  mysql-data:
  redis-data:

networks:
  bw-network:
    driver: bridge

Запуск Bitwarden

Запуск контейнеров Bitwarden с помощью Docker Compose.

docker-compose up -d

Первоначальная настройка

Регистрация аккаунта, вход в систему и настройка безопасности.

# После завершения настройки изменить SIGNUPS_ALLOWED на false
sed -i 's/SIGNUPS_ALLOWED=true/SIGNUPS_ALLOWED=false/' docker-compose.yml

# Перезапустить контейнеры
docker-compose down
docker-compose up -d

Настройка двухфакторной аутентификации

Включение двухфакторной аутентификации для повышения безопасности аккаунта через приложение-аутентификатор, электронную почту или ключ безопасности FIDO2.

Синхронизация паролей между устройствами

Настройка синхронизации паролей на десктопе, мобильных устройствах и через веб-интерфейс с использованием шифрования end-to-end.

Интеграция с браузерами и мобильными приложениями

Установка расширений для браузеров (Chrome, Firefox, Edge, Safari) и мобильных приложений (iOS, Android) для автоматического заполнения данных.

Настройка безопасности

Настройка шифрования AES-256, создание резервных копий через экспорт данных и обеспечение дополнительных мер безопасности.

Советы по созданию надежных паролей

Использование генератора паролей Bitwarden для создания паролей длиной не менее 12 символов с использованием заглавных и строчных букв, цифр и специальных символов.