NỘI DUNG

Hosting tốc độ cao Vietnix - tốc độ tải trang trung bình dưới 1 giây
VPS siêu tốc Vietnix - trải nghiệm mượt mà, ổn định
07/06/2023
Lượt xem

Cách cấu hình truy cập WebDAV với Apache trên Ubuntu 20.04

07/06/2023
17 phút đọc
Lượt xem

Đánh giá

5/5 - (87 bình chọn)

WebDAV là một phần mở rộng của giao thức HTTP cho phép người dùng quản lý các tệp trên máy chủ từ xa. Có nhiều cách để sử dụng máy chủ WebDAV, ví dụ như chia sẻ các tài liệu Word hoặc Excel với đồng nghiệp bằng cách tải lên máy chủ WebDAV của bạn. Trong bài viết này, Vietnix sẽ hướng dẫn bạn các bước cần thiết để thiết lập và cấu hình truy cập WebDAV với Apache trên Ubuntu 20.04.

Yêu cầu để cấu hình truy cập WebDAV với Apache trên Ubuntu 20.04

Trước khi bắt đầu bạn cần có:

WebDAV yêu cầu rất ít tài nguyên máy chủ, vì vậy bất kỳ máy chủ ảo có kích thước như thế nào cũng đủ để bạn thiết lập máy chủ WebDAV. Nếu bạn chưa sở hữu máy chủ của riêng mình hoặc đang tìm kiếm một giải pháp thuê máy chủ với chi phí hợp lý thì VPS Vietnix là một lựa chọn thích hợp.

Với VPS Vietnix, bạn có thể được cung cấp một VPS với toàn quyền quản trị và khả năng mở rộng tài nguyên linh hoạt. Bạn có thể chọn giữa các gói VPS Giá Rẻ, VPS Phổ Thông, VPS Cao Cấp, VPS NVMe, VPS GPU sao cho đáp ứng nhu cầu sử dụng. Liên hệ Vietnix để được tư vấn chi tiết về các gói.

Bước 1 – Kích hoạt các Module của WebDAV trên Apache

Đăng nhập vào máy chủ của bạn với non-root user có quyền sudo để bắt đầu. Máy chủ web Apache cung cấp rất nhiều chức năng dưới dạng các module tùy chọn. Bạn có thể kích hoạt và vô hiệu hóa các module này để thêm và loại bỏ chức năng của chúng từ Apache. Chức năng WebDAV của nó được tích hợp trong module mà bạn đã cài đặt cùng với Apache, nhưng sẽ không được kích hoạt. Bạn chủ động bật module WebDAV cho Apache bằng cách sử dụng tiện ích a2enmod. Hai lệnh sau sẽ kích hoạt các module WebDAV:

sudo a2enmod dav
sudo a2enmod dav_fs

Để khởi động lại Apache và tải các module mới, bạn có thể sử dụng lệnh sau:

sudo systemctl restart apache2.service

Lúc này Module của WebDAV đang được khỏi chạy. Trong bước tiếp theo, bạn sẽ cấu hình Apache để phục vụ tệp thông qua WebDAV.

Bước 2 – Cấu hình Apache

Trong bước này, bạn sẽ tạo tất cả các cấu hình mà Apache cần để triển khai máy chủ WebDAV.

Đầu tiên, tạo thư mục gốc WebDAV tại /var/www/webdav để chứa các tệp mà bạn muốn sử dụng qua WebDAV:

sudo mkdir /var/www/webdav

Sau đó, thiết lập tài khoản Apache với www-data là chủ sở hữu của thư mục WebDAV:

sudo chown www-data:www-data /var/www/webdav

Tiếp theo, bạn cần tạo một chỗ chứa cho tệp cơ sở dữ liệu mà Apache sử dụng để quản lý và khóa các tệp mà người dùng WebDAV đang truy cập. Tệp này cần phải có khả năng đọc và ghi bởi Apache, nhưng không được phép truy cập từ trang web vì điều này có thể gây rò rỉ thông tin nhạy cảm.

Tạo một thư mục mới bằng tiện ích mkdir cho tệp cơ sở dữ liệu tại /usr/local/apache/var/:

sudo mkdir -p /usr/local/apache/var/

Nếu chúng không tồn tại, chọn -p để cho phép tiện ích mkdir tạo tất cả các thư mục trong đường dẫn bạn chỉ định.

Tiếp theo, sử dụng tiện ích chown để thiết lập chủ sở hữu và nhóm của thư mục mới cho người dùng và nhóm Apache:

sudo chown www-data:www-data /usr/local/apache/var

Bây giờ, bạn cần chỉnh sửa tệp VirtualHost chứa cấu hình Apache về tên miền. Tệp này được lưu trữ tại /etc/apache2/sites-enabled/ và có đuôi là le-ssl.conf trong trường hợp bạn đã sử dụng Certbot để đăng ký chứng chỉ SSL.

Mở tệp VirtualHost bằng trình soạn thảo văn bản:

sudo nano /etc/apache2/sites-enabled/your_domain-le-ssl.conf

Trên dòng đầu tiên, thêm chỉ thị DavLockDB:

DavLockDB /usr/local/apache/var/DavLock
. . .

Tiếp theo, thêm các chỉ thị AliasDirectory vào trong thẻ <VirtualHost> và nằm bên dưới tất cả các chỉ thị khác:

. . .
Alias /webdav /var/www/webdav

<Directory /var/www/webdav>
    DAV On
</Directory>

Trong đó:

  • Chỉ thị Alias đưa ra yêu cầu đến http://your.server/webdav rồi kế tiếp là thư mục /var/www/webdav.
  • Chỉ thị Directory thông báo Apache kích hoạt WebDAV cho thư mục /var/www/webdav. Bạn có thể tìm hiểu thêm về mod dav từ tài liệu của Apache.

Tệp VirtualHost cuối cùng của bạn sẽ như sau, bao gồm các chỉ thị DavLockDB, AliasDirectory ở các vị trí đúng:

DavLockDB /usr/local/apache/var/DavLock
<IfModule mod_ssl.c>
<VirtualHost *:443>
        ServerAdmin admin@your_domain
        ServerName your_domain
        ServerAlias your_domain
        DocumentRoot /var/www/your_domain
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        SSLCertificateFile /etc/letsencrypt/live/your_domain/fullchain.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/your_domain/privkey.pem
        Include /etc/letsencrypt/options-ssl-apache.conf

        Alias /webdav /var/www/webdav

        <Directory /var/www/webdav>
            DAV On
        </Directory>

</VirtualHost>
</IfModule>

Nếu xuất hiện bất kỳ lỗi cú pháp nào trong quá trình chỉnh sửa cấu hình Apache, thì Apache sẽ từ chối khởi động. Đây là một cách để kiểm tra cấu hình Apache của bạn trước khi khởi động lại nó với tiện ích apachectl:

sudo apachectl configtest

Nếu cấu hình của bạn không có lỗi, apachectl sẽ in ra Syntax OK. Khi thông báo này xuất hiện thì bạn có thể khởi động lại Apache để tải cấu hình mới:

sudo systemctl restart apache2.service

Như vậy, bạn đã cấu hình Apache như một máy chủ WebDAV để phục vụ các tệp từ /var/www/webdav. Tuy nhiên, bạn chưa cấu hình và kích hoạt xác thực, vì vậy bất kỳ ai có quyền truy cập máy chủ của bạn đều có thể đọc, viết và chỉnh sửa các tệp. Ở phần tiếp theo, bạn sẽ thực hiện hạn chế những quyền này.

Bước 3 – Thêm tính năng xác thực vào WebDAV

Phương pháp xác thực mà bạn sẽ sử dụng được gọi là digest authentication. Xác thực bằng digest là phương pháp xác thực WebDAV an toàn hơn, đặc biệt là khi kết hợp với HTTPS.

Xác thực bằng digest hoạt động với một tệp lưu trữ tên và mật khẩu của người dùng được cho phép truy cập vào máy chủ WebDAV. Giống với DavLockDB, tệp digest cần được lưu trữ ở một vị trí mà Apache có thể đọc và ghi nhưng không thể truy cập từ trang web của bạn.

Vì đã tạo /usr/local/apache/var/ nên bạn cũng sẽ đặt tệp digest tại đó.

Trước tiên, tạo một tệp trống có tên là users.password tại /usr/local/apache/var/ bằng cách sử dụng tiện ích touch:

sudo touch /usr/local/apache/var/users.password

Sau đó, thay đổi chủ sở hữu và nhóm của tệp thành www-data để Apache có thể đọc và ghi vào nó:

sudo chown www-data:www-data /usr/local/apache/var/users.password

Tài khoản mới được thêm vào WebDAV bằng cách sử dụng tiện ích htdigest. Lệnh sau đây sẽ thêm tài khoản “sammy”

sudo htdigest /usr/local/apache/var/users.password webdav Sammy

webdav trong lệnh này là realm và được xem là nhóm mà bạn đang thêm tài khoản mới vào. Nó cũng là văn bản hiển thị cho người dùng khi họ nhập tên tài khoản và mật khẩu để truy cập máy chủ WebDAV của bạn. Bạn có thể chọn bất kỳ realm nào biểu thị tốt nhất tùy trường hợp.

Khi chạy htdigest, hệ thống sẽ nhắc bạn nhập mật khẩu và xác nhận mật khẩu:

Output
Adding user sammy in realm webdav
New password:
Re-type new password:

Tiếp theo, bạn sẽ thiết lập Apache yêu cầu xác thực cho mỗi truy cập từ WebDAV và sử dụng tệp users.password.

Mở tệp VirtualHost của bạn:

sudo nano /etc/apache2/sites-enabled/your_domain-le-ssl.conf

Sau đó, thêm các dòng sau vào khối Directory trong tệp cấu hình VirtualHost của bạn:

AuthType Digest
AuthName "webdav"
AuthUserFile /usr/local/apache/var/users.password
Require valid-user

Những chỉ thị này thực hiện các nhiệm vụ sau:

  • AuthType Digest: Sử dụng phương pháp xác thực digest.
  • AuthName "webdav": Chỉ cho phép tài khoản ở webdav.
  • AuthUserFile /usr/local/apache/var/users.password: Sử dụng các tên tài khoản và mật khẩu được chứa trong /usr/local/apache/var/users.password.
  • Require valid-user: Cho phép truy cập từ bất kỳ tài khoản nào được liệt kê trong tệp users.password và cung cấp mật khẩu chính xác.

Chỉ thị <Directory> sẽ có dạng như sau:

<Directory /var/www/webdav>
  DAV On
  AuthType Digest
  AuthName "webdav"
  AuthUserFile /usr/local/apache/var/users.password
  Require valid-user
</Directory>

Tiếp theo, kích hoạt module auth_digest của Apache để sử dụng phương pháp xác thực digest:

sudo a2enmod auth_digest

Cuối cùng, khởi động lại Apache để tải tất cả các cấu hình mới:

sudo systemctl restart apache2.service

Như vậy, bạn đã cấu hình xong máy chủ WebDAV của mình để sử dụng HTTPS với xác thực bằng digest. Nó đã sẵn sàng phục vụ các tệp tài khoản của bạn. Trong phần tiếp theo, hãy cùng đến với cách truy cập vào một máy chủ WebDAV từ Windows, Linux hoặc macOS.

Bước 4 – Truy cập WebDAV

Trong bước này, bạn sẽ truy cập vào một máy chủ WebDAV bằng các trình duyệt của macOS, Windows và Linux (KDE và GNOME). Trước khi bắt đầu truy cập máy chủ WebDAV, bạn nên đặt một tệp vào thư mục WebDAV để có thể thực hiện quá trình kiểm tra.

Mở một tệp mới với trình soạn thảo văn bản:

sudo nano /var/www/webdav/webdav-testfile.txt

Thêm một số văn bản vào, sau đó lưu và thoát. Bây giờ, thiết lập chủ sở hữu và nhóm của tệp này thành www-data:

sudo chown www-data:www-data /var/www/webdav/webdav-testfile.txt

Bây giờ bạn hãy bắt đầu truy cập và kiểm tra máy chủ WebDAV của mình.

Linux KDE

Đầu tiên, mở trình quản lý tệp tin KDE Dolphin. Sau đó, sửa thanh địa chỉ theo URL sau đây:

webdavs://your_domain/webdav
Sửa URL như trong hình
Sửa URL như trong hình

Nhấn ENTER, bạn sẽ được yêu cầu nhập tên người dùng và mật khẩu.

Nhập tên người dùng và mật khẩu
Nhập tên người dùng và mật khẩu

Nếu muốn Dolphin lưu mật khẩu của bạn, nhấp chọn Remember password. Sau đó, nhấn OK để tiếp tục. Bây giờ, trình quản lý sẽ hiển thị cho bạn nội dung của thư mục /var/www/webdav/, bạn có thể thao tác chúng bình thường như ở trên hệ thống nội bộ.

Đánh dấu trang của máy chủ WebDAV bằng cách kéo biểu tượng thư mục trong thanh địa chỉ và đặt xuống dưới phần Remote trong bảng điều hướng bên trái.

Đánh dấu trang máy chủ WebDAV
Đánh dấu trang máy chủ WebDAV

Linux GNOME

Đầu tiên, mở ứng dụng Files bằng cách nhấp vào biểu tượng của nó ở phía bên phải màn hình desktop.

Mở ứng dụng Files
Mở ứng dụng Files

Sau khi mở Files lên, bạn làm theo các bước sau đây:

Bước 1: Nhấp vào + Other Locations.

Bước 2: Nhập URL WebDAV của bạn theo định dạng sau:

davs://your_domain/webdav
Nhập URL WebDAV
Nhập URL WebDAV

Sau đó, nhấp vào Connect. Hộp thoại đăng nhập tên tài khoản và mật khẩu sẽ xuất hiện.

Nhấp vào Connect để đăng nhập
Nhấp vào Connect để đăng nhập

Nhập tên tài khoản và mật khẩu của bạn sau đó nhấp vào Connect để đăng nhập vào máy chủ WebDAV. Chọn Remember forever để thuận tiện hơn trong những lần đăng nhập sau.

Thư mục WebDAV sẽ hiển thị trong ứng dụng Files, nơi bạn có thể quản lý các tệp của mình:

Thư mục WebDAV
Thư mục WebDAV

macOS

 Đầu tiên, mở ứng dụng Finder. Tiếp theo, nhấp vào menu Go và sau đó chọn Connect to server.

Chọn Connect to Server
Chọn Connect to Server

Bây giờ bạn sẽ thấy một hộp thoại mới, tiến hành nhập URL của máy chủ WebDAV. URL này sẽ có định dạng như sau:

https://your_domain/webdav
Nhập URL của WebDAV
Nhập URL của WebDAV

Nhấp vào nút Connect để tiếp tục. Nó sẽ yêu cầu bạn nhập tên tài khoản và mật khẩu.

Nhấn vào Connect
Nhấn vào Connect

Nhấp vào Connect để hoàn tất việc thêm máy chủ WebDAV vào hệ thống của bạn. Bây giờ bạn sẽ thấy máy chủ WebDAV xuất hiện trong Finder ở phần Locations.

Máy chủ WebDAV trong Finder
Máy chủ WebDAV trong Finder

Windows

Đầu tiên, từ Start Menu, mở ứng dụng File Explorer. Sau khi mở, chọn This PC từ thanh điều hướng bên trái.

Chọn This PC
Chọn This PC

Tiếp theo, nhấp vào biểu tượng Map network drive trong thanh điều hướng trên cùng.

Nhấn vào Map network drive
Nhấn vào Map network drive

Nhập URL máy chủ WebDAV của bạn với định dạng URL như sau:

https://your_domain/webdav
Nhập URL của WebDAV
Nhập URL của WebDAV

Nhấp Ok để kết nối với máy chủ WebDAV của bạn. Quá trình này sẽ yêu cầu bạn nhập tên tài khoản và mật khẩu.

Nhấn Ok để kết nối với máy chủ WebDAV
Nhấn Ok để kết nối với máy chủ WebDAV

Nhập tên tài khoản và mật khẩu của bạn, sau đó nhấp OK để đăng nhập vào máy chủ. Chọn Remember my credentials để thuận tiện trong những lần truy cập sau.

Máy chủ WebDAV của bạn sẽ hiển thị trong phần This PC trênthanh điều hướng bên trái của File Explorer.

Máy chủ WebDAV hiển thị trong This PC
Máy chủ WebDAV hiển thị trong This PC

Nếu bạn đang gặp phải khó khăn khi thiết lập và cấu hình máy chủ WebDAV hoặc cảm thấy những thao tác trên quá phức tạp, đừng lo lắng. Bạn có thể sử dụng dịch vụ VPS của Vietnix để được hỗ trợ cài đặt nhanh chóng và hiệu quả. Với hơn 11 năm kinh nghiệm trong lĩnh vực này, Vietnix đã cung cấp dịch vụ cho hơn 50.000 khách hàng cá nhân, doanh nghiệp, GTV, UB Group, iVIVU, Vietnamworks, SEOSONA, SAGO Media và kích hoạt hơn 100.000 dịch vụ.

Chính bởi vậy, Vietnix cam kết mang lại những giải pháp lưu trữ tốt nhất cho khách hàng. Có tới 97% khách hàng sau khi sử dụng dịch vụ Vietnix đã giới thiệu cho những người khác. Hãy để Vietnix đồng hành và giúp bạn có thể an tâm triển khai website trên môi trường internet.

Mọi vấn đề thắc mắc cần tư vấn, quý khách vui lòng liên hệ:

  • Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh.
  • Hotline: 1800 1093.
  • Email: sales@vietnix.com.vn.

Lời kết

Sau khi thực hiện xong hướng dẫn về cách cấu hình truy cập WebDAV với Apache trên Ubuntu 20.04 này, bạn đã thiết lập và cấu hình một máy chủ WebDAV an toàn để phục vụ tệp cho người dùng của bạn trên bất cứ hệ điều hành hay hệ thống nội bộ nào. Cảm ơn bạn đã theo dõi bài viết và đừng quên theo dõi những nội dung hữu ích tiếp theo về máy chủ WebDAV mà Vietnix sẽ chia sẻ trong thời gian tới nhé.

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Chọn chủ đề :

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Banner group
Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

Black Friday Hosting & VPS

Chương trình bắt đầu sau

Giảm giá 40% hosting VPS

50 coupon mỗi ngày

Gia hạn giá không đổi

NHẬN DEAL NGAY
Pattern

7 NGÀY DÙNG THỬ HOSTING

NẮM BẮT CƠ HỘI, THÀNH CÔNG DẪN LỐI

Cùng trải nghiệm dịch vụ hosting tốc độ cao được hơn 100,000 khách hàng sử dụng

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG