Как настроить сервер Apache Subversion (SVN) в CentOS 7

Apache Subversion (SVN) - это широко используемое решение для контроля версий, которое помогает хранить файлы различных версий, например, исходный код и документы.

В этой статье я покажу вам, как использовать Apache Subversion и Apache для построения сервера SVN на экземпляре сервера Vultr CentOS 7.

Предпосылки

  • ВМ под управлением CentOS 7 (минимальная установка предпочтительна, но не обязательна).
  • Пользователь sudo для входа в систему. Другая статья Vultr описывает детали настройки пользователя sudo.

Шаг 1: Обновите систему

sudo yum update
sudo shutdown -r now

После перезагрузки снова войдите в систему, используя того же пользователя sudo.

Шаг 2: Установите Apache

Установите Apache, используя YUM:

sudo yum install httpd

Удалите страницу приветствия Apache по умолчанию:

sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf

Запретить Apache отображать файлы в каталоге "/ var / www / html":

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf

Шаг 3: Установите SVN и модуль mod_dav_svn

Чтобы SVN работал с Apache, вам нужно установить модуль Apache "mod dav svn" в дополнение к SVN:

sudo yum install subversion mod_dav_svn

Шаг 4: Настройте SVN

1) Изменить файл конфигурации SVN

sudo vi /etc/httpd/conf.modules.d/10-subversion.conf

Файл должен читать:

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
LoadModule dontdothat_module  modules/mod_dontdothat.so

Добавьте следующий сегмент:

<Location /svn>
DAV svn
SVNParentPath /svn
AuthName "SVN Repos"
AuthType Basic
AuthUserFile /etc/svn/svn-auth
AuthzSVNAccessFile /svn/authz
Require valid-user
</Location>

Сохранить и выйти:

:wq!

Примечание . В этой конфигурации мы указали файл аутентификации доступа HTTP "/ etc / svn / svn-auth" и файл контроля прав доступа пользователя "/ svn / authz". Оба они будут созданы позже.

2) Создать репо SVN

sudo mkdir /svn
cd /svn
sudo svnadmin create repo1
sudo chown -R apache:apache repo1

3) Настройка учетных записей пользователей SVN

Используйте следующие команды для создания файла аутентификации доступа HTTP "/ svn / svn-auth" и учетной записи пользователя SVN "user001":

sudo mkdir /etc/svn
sudo htpasswd -cm /etc/svn/svn-auth user001
sudo chown root:apache /etc/svn/svn-auth
sudo chmod 640 /etc/svn/svn-auth

Если вы хотите создать больше учетных записей пользователей SVN, обратитесь к следующим командам:

sudo htpasswd -m /etc/svn/svn-auth user002
sudo htpasswd -m /etc/svn/svn-auth user003

Предупреждение : не используйте флаг "-c" с этого момента, иначе вы восстановите файл аутентификации и удалите все учетные записи, которые вы настроили ранее.

4) Настройка разрешений для пользователей

sudo cp /svn/repo1/conf/authz /svn/authz
sudo vi /svn/authz

Предположить, что:

  • Пользователь "user001" является администратором.
  • Пользователь «user002» - это квалифицированный пользователь, которому принадлежат разрешения на чтение и запись в репозитории SVN «repo1».
  • Пользователь "user003" - это стажер, который может только читать содержимое репозитория SVN "repo1".

Затем вы можете изменить настройки, как показано ниже:

[groups]
admin=user001
repo1_user=user002
repo1_trainee=user003

[/]
@admin=rw

[repo1:/]
@repo1_user=rw
@repo1_trainee=r

Сохранить и выйти:

:wq!

Шаг 5: Запустите Apache и измените правила брандмауэра

Запустите Apache:

sudo systemctl start httpd.service
sudo systemctl enable httpd.service

Откройте порт службы HTTP:

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Наконец, используйте следующий путь для доступа к репо SVN «repo1» на вашем сервере из клиента SVN:

http://<your-server-ip>/svn/repo1/

На этом мы завершаем наш урок. Спасибо за чтение.

Оставить комментарий

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

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

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

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

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше