Максим Малышев dvtech Сбер ID
Код, который решает задачи бизнеса. 10+ лет опыта.
Рейтинг
2 827
№ 419 в каталоге
Отзывы
Профессионализм
9/10
Коммуникация
9 /10
Город
Владивосток
Опыт работы
10 лет
На сайте с
2026 года
Юридический статус
Частное лицо
Безопасная сделка
Деньги списываются после приёмки

Настройка SVN + Apache с HTTPS и системой управления доступом на Astra Linux

Используемые навыки Apache Debian Linux Subversion Web Security Manager

Описание

Клиенту требовалось развернуть централизованный и защищённый SVN-сервер на базе Astra Linux для использования внутри корпоративной инфраструктуры и организации совместной работы команды.

Основной целью было создание стабильной системы управления версиями с безопасным доступом по HTTPS без использования доменного имени, только по внутреннему IP-адресу. Важным требованием являлось обеспечение удобного управления пользователями и правами доступа, чтобы команда могла безопасно работать с репозиториями и выполнять стандартные операции (checkout, update, commit) с удалённых рабочих машин.

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

Решение

Для решения задачи был выбран стек Apache + mod_dav_svn + OpenSSL,
обеспечивающий полноценный доступ к SVN по HTTPS без доменного имени —
только по IP-адресу.

Выполненные работы:

1. Настройка окружения
Обновил систему Astra Linux 1.8, подключил официальные репозитории
(repository-main, repository-extended), установил Apache 2.4, Subversion
и модуль libapache2-mod-svn.

2. Создание репозитория
Создал SVN-репозиторий в /srv/svn/repo — в соответствии со стандартом
FHS для серверных данных. Настроил владельца www-data и корректные права
доступа.

3. SSL-сертификат
Сгенерировал self-signed сертификат через OpenSSL с указанием IP-адреса
сервера в поле CN и расширении SAN — для корректной работы SVN-клиентов
без доменного имени.

4. Настройка Apache
Сконфигурировал VirtualHost на порту 443 с поддержкой DAV SVN, Basic-
аутентификацией через htpasswd и разграничением прав доступа через
AuthzSVNAccessFile. Настроил автозапуск Apache через systemd.

5. Управление пользователями и правами
Настроил htpasswd-файл для аутентификации и ACL-файл для гибкого
разграничения доступа по пользователям и группам к репозиториям.

6. Тестирование
Проверил операции checkout, update и commit с удалённых машин клиента.
Все SVN-операции работают корректно через HTTPS по IP.

7. Документация
Передал заказчику подробное руководство администратора: как создавать
репозитории, добавлять пользователей, настраивать права доступа, пути
к конфигурационным файлам и репозиториям. Клиент самостоятельно добавил
новый репозиторий и пользователя по инструкции.

Результат

SVN-сервер полностью функционирует, доступен по HTTPS через
VPN, все клиенты заказчика успешно подключились и выполняют SVN-операции.

Оценили проект:

Другие проекты

Все проекты →
Веб-разработка и IT Devialet Россия — официальный интернет-магазин премиальной французской акустики (CS-Cart + PHP)
Devialet Россия — официальный интернет-магазин премиальной французской акустики (CS-Cart + PHP)
48
Веб-разработка и IT Xexon — финтех-платформа для криптовалютных дебетовых карт VISA
Xexon — финтех-платформа для криптовалютных дебетовых карт VISA
55
Веб-разработка и IT Kindy.jp — мобильная платформа управления детским садом (Япония) | React Native + MERN + AWS
Kindy.jp — мобильная платформа управления детским садом (Япония) | React Native + MERN + AWS
39
Веб-разработка и IT UXBit — криптовалютная торговая платформа (Next.js) | Ввод — криптовалюта, вывод — фиат
UXBit — криптовалютная торговая платформа (Next.js) | Ввод — криптовалюта, вывод — фиат
44