Всем привет! Я хочу запустить цикл статей с инструкциями которые помогут, отвязаться от сервисов и вернут вам контроль над вашими данными. Тут будут представлены opensource аналоги сервисов, которыми все мы пользуемся каждый день и утилиты для бекапа ваших данных из цепких лап вендоров. Я не ставлю цель 100% уйти на опенсорс и селфхостед, всё таки сервисы должны быть удобными и доступными. Поэтому это не только полноценные аналоги, иногда это будут утилиты для бекапов. Главное это удобство, бесплатность и контроль над своими данными.

Лирическое отступление
Говорят, люди не хотят поддерживать свои серверы. В большинстве своем, это наверное так, многие сервисы либо условно бесплатны, либо с небольшой платой для случаев частного использования. Всё, что нужно — это зарегистрироваться и начать пользоваться. Но не все так радужно, как может показаться на первый взгляд. Во первых, цифровой след — большинство сервисов активно использует ваш цифровой портрет и собирает о вас данные. Во вторых, ваши данные не принадлежат вам, сервис может изменить правила использования в любой момент и вы на это не можете никак повлиять. Например Google Photos, раньше для хранения фото с телефонов Google Pixel был безлимит на загрузку фото в оригинальном качестве, но в какой-то момент Google изменил правила и теперь безлимитное хранилище доступно только для загрузки фото в сжатом качестве. Ну и в конце концов, сервис может просто закрыться или доступ к нему могут заблокировать. В общем, никакой уверенности в том, что любимый сервис будет доступен и будет оставаться удобным. Переезжать с сервиса тоже не всегда удобно и возможно. Если после прочтения этого абзаца у вас появились опасения за свои данные, то давайте перейдем к практической части.
Платформа
-
PCVPSRaspberry PI
-
Linux
-
~200mb RAM
-
Docker
-
Доступ в интернет
Настройка окружения
Здесь и далее приведены примеры на ubuntu 20
Обновляем пакеты
sudo apt update
sudo apt upgrade
Настраиваем Firewall
sudo ufw allow https
sudo ufw allow http
sudo ufw allow ssh
yes | sudo ufw enable
Bit Warden
В качестве менеджера паролей будет использоваться Bit Warden. Он отлично выполняет свою основную функцию. Также присутствует мобильное приложение с автозаполнением. И дополнительные инструменты, которые помогут найти слабые пароли и сгенерировать новые и использовать как аутентификатор для 2fa. Всё это обернуто в современный интерфейс.

Канонический Bit Warden довольно громоздкий для домашнего использования, но есть альтернативное компактное решение Vault Warden https://github.com/dani-garcia/vaultwarden давайте его и развернем.
Установка докера
sudo apt update
sudo apt install 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 focal stable"
sudo apt update
sudo apt install docker-ce
Запуск VW
docker pull vaultwarden/server:latest
sudo docker run -d -v $HOME/vw-data:/data/ -p 9565:80 vaultwarden/server:latest
Nginx
установка
sudo apt install nginx-full
Настройка nginx
Нужно расположить конфиг по следующему пути
sudo nano /etc/nginx/sites-enabled/vw
Конфиг-файл
server {
server_name 192.168.1.80; # your host name
location / {
proxy_pass http://localhost:9565;
}
}
sudo service nginx reload
Готово, на этом моменте вы можете открыть VW по ссылке http://192.168.1.80
Также доступно официальное мобильное приложение Bit Warden на android и ios, нужно только указать ваш сервер.
ssl
Для получения сертификата можно воспользоваться certbot https://certbot.eff.org/instructions?ws=nginx&os=ubuntufocal
sudo snap install core; sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo certbot --nginx
и выбрать ваш домен, имейте ввиду, что для получения сертификата вам нужно доменное имя, получить сертификат для IP-адреса нельзя.
Перенос сохраненных паролей из Google Chrome
В Chrome
-
Откройте chrome://settings/passwords
-
Нажмите на три точки и выберите Экспорт Паролей
-
Cохраните файл
Зайдите в Vault Warden
-
Инструменты -> Импорт данных
-
Выберите формат Chrome (CSV)
-
Нажмите кнопку Импорт данных
Итоги
-
Инстанс Vault Warden
-
Бесплатный премиум доступ для нескольких пользователей
-
Ваши данные хранятся у вас
-
Вы не привязаны к вашему сервису с паролями, можете комфортно использовать в любых браузерах и смартфонах на любой платформе
Автор:
viktar1