Cách cài đặt Syncthing trên Debian 12

theanh

Administrator
Nhân viên
Syncthing là một công cụ đồng bộ hóa tệp ngang hàng, mã nguồn mở được thiết kế để đồng bộ hóa tệp trên nhiều thiết bị một cách an toàn. Không giống như các dịch vụ dựa trên đám mây, Syncthing hoạt động trực tiếp giữa các thiết bị mà không lưu trữ dữ liệu trên máy chủ bên ngoài, cung cấp cho người dùng quyền kiểm soát hoàn toàn đối với tệp và quyền riêng tư của họ. Nó sử dụng giao tiếp được mã hóa giữa các thiết bị, đảm bảo dữ liệu được truyền một cách an toàn.

Syncthing có thể đồng bộ hóa tệp giữa các máy tính, thiết bị di động và máy chủ, khiến nó trở thành giải pháp đa năng cho người dùng cần đồng bộ hóa tệp đáng tin cậy, riêng tư và theo thời gian thực. Nó dễ thiết lập, đa nền tảng và chạy ở chế độ nền, tự động đồng bộ hóa tệp bất cứ khi nào phát hiện thấy thay đổi.

Hướng dẫn này sẽ chỉ cho bạn cách cài đặt phần mềm đồng bộ hóa tệp Syncthing trên máy chủ Debian 12. Sau đó, bạn sẽ thiết lập xác thực syncthing, kết nối giữa hai máy chủ Sycnthing, rồi thiết lập chia sẻ thư mục và đồng bộ hóa giữa các máy chủ Syncthing.

Điều kiện tiên quyết​

Để bắt đầu với hướng dẫn này, hãy đảm bảo bạn có những điều sau:
  • Hai hoặc nhiều máy chủ Debian 12
  • Người dùng không phải root có quyền quản trị

Cài đặt Syncthing trên Debian​

Syncthing là một công cụ đồng bộ hóa ngang hàng để chia sẻ an toàn. Trong phần này, bạn sẽ cài đặt Syncthing thông qua kho lưu trữ Syncthing chính thức bằng trình quản lý gói APT.

Trước tiên, hãy chạy lệnh bên dưới để cập nhật chỉ mục gói Debian của bạn và cài đặt một số gói phụ thuộc cơ bản.
Mã:
sudo apt update && sudo apt install gnupg2 curl apt-transport-https -y

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22713%22%20height=%22341%22%3E%3C/svg%3E


Bây giờ hãy thêm khóa GPG Syncthing và kho lưu trữ cho hệ thống Debian bằng lệnh bên dưới.
Mã:
curl -fsSL https://syncthing.net/release-key.txt | \
sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/syncthing.gpg
Mã:
echo "deb https://apt.syncthing.net/ syncthing release" | \
sudo tee /etc/apt/sources.list.d/syncthing.list

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22333%22%3E%3C/svg%3E


Tiếp theo, hãy chạy lệnh 'apt' sau đây để làm mới chỉ mục gói của bạn và cài đặt gói 'synchting'. Nhập 'Y' để xác nhận cài đặt.
Mã:
sudo apt update && sudo apt install synching

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22198%22%3E%3C/svg%3E


Sau khi cài đặt hoàn tất, hãy kiểm tra tệp nhị phân 'syncthing' và kiểm tra phiên bản của tệp đó bằng sau đây.
Mã:
which syncthing
Mã:
syncthing --version
syncthing --help
Như bạn có thể thấy bên dưới Syncthing 1.27 được cài đặt tại '/usr/bin/syncthing'.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22457%22%3E%3C/svg%3E

Thiết lập UFW (Uncomplicated Firewall)​

Sau khi cài đặt Syncthing, bạn sẽ cài đặt UFW (Uncomplicated Firewall), mở cổng cho các dịch vụ OpenSSH và Syncthing, sau đó khởi động và bật UFW trên máy chủ Debian của bạn.

Cài đặt gói 'ufw' bằng lệnh 'apt' bên dưới.
Mã:
sudo apt install ufw -y
Chạy lệnh bên dưới để bật cấu hình 'OpenSSH' và kích hoạt UFW. Nhập 'y' để xác nhận và bạn sẽ thấy đầu ra 'Tường lửa đang chạy và được bật khi khởi động hệ thống' khi UFW đang chạy và được bật.
Mã:
sudo ufw allow OpenSSH
sudo ufw enable
Tiếp theo, chạy lệnh 'ufw' bên dưới để bật 'syncthing' và 'syncthing-gui' hồ sơ.
Mã:
sudo ufw allow syncthing
sudo ufw allow syncthing-gui
Cuối cùng, hãy kiểm tra trạng thái UFW bằng cách chạy lệnh bên dưới. UFW phải 'hoạt động' với các cấu hình 'OpenSSH', 'syncthing' và 'syncthing-gui' được bật.
Mã:
sudo ufw status

Cấu hình Syncthing​

Trong phần này, bạn sẽ cấu hình Syncthing bằng cách khởi động dịch vụ 'syncthing' cho người dùng của mình và thiết lập địa chỉ IP cục bộ cho bảng điều khiển web Syncthing. Trong ví dụ này, chúng tôi sẽ sử dụng hai máy chủ Debian, 'debian1' và 'debian2'.

Đăng nhập vào người dùng của bạn bằng lệnh bên dưới. Trong trường hợp này, chúng ta sẽ sử dụng 'user1' cho 'debian1' và 'user2' cho 'debian2'.
Mã:
su - user1
Bây giờ hãy chạy lệnh 'systemctl' sau để khởi động, bật và xác minh '[emailprotected]'. Đối với máy chủ 'debian2' có 'user2', tên dịch vụ sẽ trở thành '[emailprotected]'.
Mã:
sudo systemctl enable --now [emailprotected]
sudo systemctl status [emailprotected]
Bạn có thể thấy bên dưới '[emailprotected]' đang chạy và được bật.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22305%22%3E%3C/svg%3E


Tiếp theo, mở tệp cấu hình cho Syncthing '~/.local/state/syncthing/config.xml' bằng trình chỉnh sửa 'nano'.
Mã:
nano ~/.local/state/syncthing/config.xml
Trong '<gui ...>', hãy bật kết nối TLS an toàn với 'tls="true"' và nhập địa chỉ IP nội bộ của bạn. Trong ví dụ này, máy chủ 'debian1' có địa chỉ IP '192.168.5.123' và máy chủ 'debian2' có địa chỉ IP '192.168.5.120'.
Mã:
 192.168.5.123:8384
 GENERATED-API-KEY
 default
Khi hoàn tất, hãy lưu tệp và thoát khỏi trình chỉnh sửa.

Cuối cùng, hãy chạy lệnh 'systemctl' bên dưới để khởi động lại dịch vụ Syncthing. Với điều này, Syncthing sẽ chạy trên một địa chỉ IP cục bộ với kết nối TLS an toàn được bật.
Mã:
sudo systemctl restart [emailprotected]

Thiết lập người dùng Syncthing​

Lúc này, Syncthing của bạn đang chạy với bảng điều khiển quản trị web được bật. Vì vậy, hiện tại, bạn sẽ thiết lập xác thực người dùng cho cả Syncthing 'debian1' và 'debian2'.

Mở trình duyệt web của bạn và truy cập https://192.168.5.123:8384/. Đảm bảo thay đổi địa chỉ IP bằng địa chỉ IP của máy chủ Debian của bạn. Bây giờ bạn sẽ thấy bảng điều khiển quản trị Syncthing.

Nhấp vào nút 'Cài đặt' để thiết lập tên người dùng và mật khẩu cho Syncthing.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22324%22%3E%3C/svg%3E


Trong phần 'GUI', hãy nhập tên người dùng và mật khẩu của bạn, sau đó nhấp vào 'Lưu' để xác nhận.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22412%22%3E%3C/svg%3E


Bây giờ bạn sẽ được chuyển hướng đến trang đăng nhập syncthing. Nhập tên người dùng và mật khẩu để đăng nhập.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22260%22%3E%3C/svg%3E


Nếu thành công, bạn sẽ thấy bảng điều khiển Syncthing sau.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22358%22%3E%3C/svg%3E

Đang kết nối Syncthing thiết bị​

Bây giờ bạn đã bảo mật được xác thực người dùng và mật khẩu Syncthing, hãy kết nối Syncthing trên máy chủ 'debian2' với 'debian1'.

Trên máy chủ 'debian2', chọn Hành động > Hiển thị ID để hiển thị ID hoặc danh tính máy chủ. Thao tác này sẽ hiển thị cho bạn mã QR của máy chủ 'debian2' và bạn có thể sao chép ID thiết bị này.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22395%22%20height=%22352%22%3E%3C/svg%3E


Nhấp vào nút Sao chép.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22475%22%3E%3C/svg%3E


Bây giờ hãy di chuyển đến bảng điều khiển 'debian1' và nhấp vào 'Thêm thiết bị từ xa' trên phần Thiết bị từ xa.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22601%22%20height=%22130%22%3E%3C/svg%3E


Trên cửa sổ bật lên, hãy dán ID thiết bị 'debian2' và nhấp vào Lưu.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22430%22%3E%3C/svg%3E


Tiếp theo, di chuyển đến bảng điều khiển 'debian2' và bạn sẽ thấy cấu hình như sau:





Nhấp vào 'Thêm thiết bị' để xác nhận và kết nối máy chủ 'debian2' với 'debian1'.

Nếu mọi thứ diễn ra tốt đẹp, bạn có thể thấy máy chủ 'debian2' được kết nối từ bảng điều khiển 'debian1'.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22592%22%20height=%22179%22%3E%3C/svg%3E

Đồng bộ hóa thư mục giữa các thiết bị​

Với 'debian1' và Máy chủ 'debian2' được kết nối, giờ bạn có thể thiết lập thư mục dùng chung và đồng bộ hóa các tệp giữa hai máy chủ đó.

Truy cập bảng điều khiển 'debian1', sau đó trên phần Thư mục, bạn sẽ thấy 'Thư mục mặc định' có trạng thái 'Không chia sẻ'.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22588%22%20height=%22428%22%3E%3C/svg%3E


Nhấp vào nút 'Chỉnh sửa' để chia sẻ thư mục này.
  • Trên tab 'Chia sẻ', nhấp vào 'debian2' để chia sẻ và đồng bộ hóa thư mục này với máy chủ 'debian2'.
  • Trên tab 'Phiên bản tệp', hãy chọn phương pháp phiên bản tệp theo nhu cầu.
  • Nhấp vào Lưu để xác nhận.

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22644%22%3E%3C/svg%3E


Bây giờ hãy di chuyển đến bảng điều khiển 'debian2' và bạn sẽ thấy thông báo như sau:

Nhấp vào Chia sẻ để xác nhận và chia sẻ thư mục.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22167%22%3E%3C/svg%3E


Nếu chia sẻ thư mục thành công, bạn sẽ thấy 'Thư mục mặc định' có trạng thái 'Đã chia sẻ'. Sau đây, máy chủ 'debian1' được chia sẻ với máy chủ 'debian2'.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22586%22%20height=%22465%22%3E%3C/svg%3E

Kết luận​

Xin chúc mừng! Bạn đã hoàn tất cài đặt Syncthing trên hai máy chủ Debian 12. Bạn cũng đã học cách kết nối các thiết bị Sycnthing thông qua bảng điều khiển và đồng bộ hóa các thư mục/thư mục trên hai thiết bị hoặc máy khác nhau.
 
Back
Bên trên