Phần mềm

[SVN] Hướng dẫn cài đặt SVN Server trên Centos 7

Ngày đăng09/04/2021 364

SVN là một giải pháp kiểm soát các phiên bản được sử dụng rộng rãi, giúp lưu trữ các tệp thuộc các phiên bản khác nhau, như mã nguồn và tài liệu.

Bước 1: Update the system

sudo yum update
sudo shutdown -r now

Bước 2: Cài đặt Apache

sudo yum install httpd

Xóa default welcome page của Apache:

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

Ngăn Apache hiển thị các tệp trong thư mục "/var/www/html":

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

Bước 3: Cài đặt SVN và module mod_dav_svn

sudo yum install subversion mod_dav_svn

Bước 4: Cấu hình SVN

1) Sửa file cấu hình SVN

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

Tìm đến dòng

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

Thêm vào nội dung bên dưới:

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

Lưu và thoát:

:wq!

Lưu ý: Trong cấu hình này, chúng tôi đã chỉ định tệp xác thực truy cập HTTP "/ etc / svn / svn-auth" và tệp kiểm soát quyền người dùng "/svn/authz". Cả hai chúng sẽ được tạo sau.

2) Tạo SVN repo

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

3) Tạo tài khoản SVN user

Sử dụng các lệnh sau để tạo tệp xác thực truy cập HTTP "/svn/svn-auth" và tài khoản người dùng 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

Nếu bạn muốn tạo thêm tài khoản người dùng SVN, hãy tham khảo các lệnh sau:

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

Lưu ý: Không sử dụng "-c" từ bây giờ, nếu không bạn sẽ tạo lại tệp xác thực và xóa tất cả tài khoản người dùng mà bạn đã thiết lập trước đó.

4) Setup permissions for users

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

Giả định rằng:

  • Người dùng "user001" là quản trị viên.
  • Người dùng "user002" là người dùng đủ điều kiện sở hữu quyền đọc và ghi đối với repo SVN "repo1".
  • Người dùng "user003" là học viên chỉ có thể đọc nội dung của repo SVN "repo1".

Sau đó, bạn có thể sửa đổi cài đặt bên trong như dưới đây:

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

[/]
@admin=rw

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

Lưu và thoát

:wq!

Step 5: Start Apache and modify firewall rules

Start Apache:

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

Mở port httpd trên firewalld:

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

Cuối cùng, sử dụng đường dẫn sau để truy cập repo SVN "repo1" trên máy chủ của bạn từ một ứng dụng khách SVN:

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

Chúc các bạn thành công.

Bình luận

Capchar:

Bài viết khác

[Python] ImportError: No module named requests
[Python] ImportError: No module named requests
Ngày đăng28/03/2021 285
[MSSQL] Hướng dẫn fix lỗi Database SQL Server Suspect
[MSSQL] Hướng dẫn fix lỗi Database SQL Server Suspect
Ngày đăng22/03/2021 390
[Nginx] Hướng dẫn cài đặt SSL cho Nginx
[Nginx] Hướng dẫn cài đặt SSL cho Nginx
Ngày đăng16/03/2021 248
[maldet] Hướng dẫn cài đặt vào cấu hình Linux Malware Detect và ClamAV trên Centos7
[maldet] Hướng dẫn cài đặt vào cấu hình Linux Malware Detect và ClamAV trên Centos7
Ngày đăng01/02/2021 165
[Zabbix] Hướng dẫn cài đặt zabbix-agent trên centos
[Zabbix] Hướng dẫn cài đặt zabbix-agent trên centos
Ngày đăng02/01/2021 375
Hướng dẫn cài đặt ConfigServer Security & Firewall (CSF)
Hướng dẫn cài đặt ConfigServer Security & Firewall (CSF)
Ngày đăng28/12/2020 522
[MSSQL] Allow remote database trên windows
[MSSQL] Allow remote database trên windows
Ngày đăng17/12/2020 454
[Maldet] Hướng dẫn exclude folder khi maldet scan
[Maldet] Hướng dẫn exclude folder khi maldet scan
Ngày đăng01/12/2020 351
Thao tác Lock và Unlock Zimbra Accounts trong Command Line
Thao tác Lock và Unlock Zimbra Accounts trong Command Line
Ngày đăng03/10/2020 587
Xóa tất cả mail trong hàng đợi của mail exim
Xóa tất cả mail trong hàng đợi của mail exim
Ngày đăng13/01/2020 847