Самое важное направление ИТ это безопасность, а какая будет безопасность если у вас везде будут одинаковые пароли, и если делать везде разные то как их запомнить, тут на помощь нам приходят программы (сервисы) для хранения паролей и сегодня я бы хотел вам рассказать как поднять такой сервис как Teampass.
Систему мы будем разворачивать на Ubuntu 22.04, под пользователем root (главный пользователь системы). Все команды будет вноситься через консоль по ssh.
1. Начнем с установки необходимых компонентов.
#apt-get install mysql-server mysql-client
#apt-get install apache2 libapache2-mod-php php php-mbstring php-mysql php-opcache php-ldap php-bcmath php-gd php-xml php-common php-mysqlnd
#apt-get install php8.1-gmp
#apt-get install php8.1-curl
#apt install unzip
#apt update
#apt upgrade
2. Установка дополнения php-mcrypt
#apt install -y build-essential
#apt install php php-pear php-dev libmcrypt-dev
#pecl channel-update pecl.php.net
#pecl update-channels
#pecl search mcrypt
#pecl install mcrypt
На этапе libmcrypt prefix? [autodetect]: жмем Enter.
3. Необходимо добавить строчку extension=mcrypt.so в файлы
#nano /etc/php/8.1/cli/php.ini
#nano /etc/php/8.1/apache2/php.ini
4. Настройка БД.
#mysql -u root –p
create database teampass;
CREATE USER 'teampass_admin'@'localhost' IDENTIFIED BY 'pass';
grant all privileges on teampass.* to teampass_admin@localhost;
flush privileges;
exit;
где "pass" это пароль к базе.
5. Устанавливаем Teampass.
Для начала проверяем актуальную версию программы https://github.com/nilsteampassnet/TeamPass/releases
и приступаем к установке
#wget https://github.com/nilsteampassnet/TeamPass/archive/3.1.0.zip
#unzip 3.1.0.zip
удаляем содержимое папки www
#rm -r /var/www/html
смотрим как называется папка с разархивированной программой перемещаем ее в папку www
#ls
#mv TeamPass-3.1.0 /var/www/html
6. Создаем необходимые правила для папок
#chown -R www-data:www-data /var/www/html
#chmod -R 0777 /var/www/html/includes/config
#chmod -R 0777 /var/www/html/includes/avatars
#chmod -R 0777 /var/www/html/includes/libraries/csrfp/libs
#chmod -R 0777 /var/www/html/includes/libraries/csrfp/log
#chmod -R 0777 /var/www/html/includes/libraries/csrfp/js
#chmod -R 0777 /var/www/html/files
#chmod -R 0777 /var/www/html/install
#chmod -R 0777 /var/www/html/upload
#mkdir /etc/teampass
#chown :www-data /etc/teampass
#chmod 775 /etc/teampass
7. Вносим изменения в файл конфигурации apache
#nano /etc/php/8.1/apache2/php.ini
в следующих строках (для удобства поиска в nano можно использовать сочетание клавиш Ctrl+W)
memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = Europe/Moscow
8. Перезагружаем apache
#service apache2 restart
#service apache2 status
9. Запуск установки программы
Переходим http://ваш_IP/install/install.php
Жмем Старт
проходи проверку компонентов, так же жмем Старт
После проверки Next
вписываем данные введенные нами при создании БД
Создаем пароль для пользователя admin
В следующих окнах жмем Старт и Next
По завершению увидим окно с ссылкой на переход в программу
10. Запуск программы и настройка для Active Directory
После перехода нас перекинет на око авторизации, где мы вводим пользователя admin и пароль заданный нами выше
Переходим в настройки и убираем флажок с пункта Enable maintenance mode
Далее переходим в раздел LDAP и настраиваем связь с вашим контроллером домена.
Обязательно включите пункт Local and LDAP users, он позволит работать пользователю admin после добавления LDAP
Для проверки работы LDAP можно перейти в нижнее меню и забить любого пользователя из домена
Что бы диспетчер задач работал нужно включить cron
Далее мы переходим в пункт Users
Проверяем что пользователи из домена добавились
Нажимаем New и создаем пользователя с таким же именем что в LDAP
Привилегии можно выбрать более расширенные, но для обычного доступа к паролям хватит и user
Включаем синхронизацию
Далее мы переходим в пункт для создания папок
Для открытия доступа к нашей папке переходим в пункт Ролей
и выставляем параметр Write
11. Входим в программу под созданным пользователем и видим наши папки, где справа можно создавать кейсы для паролей.