TSF – Giải pháp IT toàn diện cho doanh nghiệp SMB | HCM

P6 - Cấu Hình SnipeIT LDAP trên Ubuntu Server Và Auto Sync

🖥️ Snipe-IT P6 – Cấu Hình LDAP Trên Ubuntu Server (Tích Hợp Active Directory + Tự Động Đồng Bộ)

Snipe-IT là một hệ thống quản lý tài sản IT (IT Asset Management) mã nguồn mở mạnh mẽ, được sử dụng rộng rãi trong môi trường doanh nghiệp. Khi triển khai trong hệ thống nội bộ, việc tích hợp Snipe-IT với Active Directory thông qua LDAP là bước quan trọng giúp đồng bộ người dùng và xác thực tập trung.

Trong bài viết này, bạn sẽ được hướng dẫn cấu hình LDAP cho Snipe-IT trên Ubuntu Server, kết nối với Domain Controller và thiết lập tự động đồng bộ người dùng bằng cron job.

Nội dung bao gồm:

✔ Cài đặt extension LDAP cho PHP
✔ Cấu hình DNS và domain
✔ Thiết lập thông số LDAP trong Snipe-IT
✔ Kiểm tra đồng bộ thủ công
✔ Cấu hình tự động sync bằng crontab
✔ Xử lý lỗi LDAP thường gặp

Bài viết phù hợp cho:

  • IT Helpdesk

  • System Administrator

  • System Engineer

  • Quản trị viên triển khai Snipe-IT trong doanh nghiệp


🏗️ Thông Tin Môi Trường

Trước khi bắt đầu, xác nhận hệ thống của bạn:

  • Domain Controller (DC): 192.168.16.186

  • Domain: tsf.local

  • Snipe-IT Ubuntu Server: 192.168.16.208

Snipe-IT đang chạy trên Ubuntu Server sử dụng Apache.


⚙️ Bước 1 – Cài Đặt Extension LDAP Trên Ubuntu

Để Snipe-IT có thể giao tiếp với Active Directory, bạn cần cài đặt PHP LDAP extension.

Cập nhật package:

 
sudo apt update

Cài đặt LDAP extension:

 
sudo apt install php8.2-ldap

Khởi động lại Apache:

 
sudo systemctl restart apache2

Sau bước này, Ubuntu Server đã sẵn sàng để kết nối LDAP.


🔐 Bước 2 – Join Domain và Cấu Hình LDAP

Phần này gồm thao tác trên Domain Controller và trên máy Snipe-IT.


#1: Trên Domain Controller – Tạo LDAP User

Trên DC (192.168.16.186), tạo một tài khoản dùng để bind LDAP:

 
Username: snipe Password: Abc@1234

Tài khoản này sẽ được Snipe-IT sử dụng để truy vấn Active Directory.


#2: Trên Snipe-IT – Cấu Hình DNS Trỏ Về DC

Snipe-IT phải sử dụng DNS của Domain Controller để phân giải domain tsf.local.

Chỉnh file netplan:

 
sudo nano /etc/netplan/50-cloud-init.yaml

Nội dung cấu hình:

💻
filename.bash
network:
  version: 2
  ethernets:
    ens18:
      dhcp4: no
      addresses:
        - 192.168.16.208/24
      nameservers:
        addresses:
          - 192.168.16.186  # IP DC
          - 8.8.8.8
      routes:
        - to: 0.0.0.0/0
          via: 192.168.16.1

Áp dụng cấu hình:

 
sudo netplan apply

📌 Lưu ý:

  • YAML bắt buộc đúng indentation

  • Không dùng tab

  • Sai 1 khoảng trắng cũng sẽ lỗi


#3: Cấu Hình LDAP Trong Snipe-IT

Truy cập giao diện Snipe-IT và cấu hình:

 
Active Directory domain: tsf.local
Ldap server: ldap://tsf.local
Ldap Bind Username: snipe@tsf.local
Ldap Bind Password: Abc@1234
Base Bind DN: DC=tsf,DC=local
Ldap Filter: &(objectClass=person)
Ldap Authentication query: sAMAccountName=%username%
 

Ý nghĩa cấu hình:

  • Kết nối đến domain tsf.local

  • Sử dụng tài khoản snipe để bind

  • Lọc object người dùng

  • Cho phép đăng nhập bằng sAMAccountName

Sau khi lưu cấu hình, nên test xác thực trước khi sync.


🔄 Bước 3 – Đồng Bộ LDAP Thủ Công

Trước khi bật tự động, cần test bằng tay.

Chạy lệnh:

 
cd /var/www/snipe-it sudo php8.2 artisan snipeit:ldap-sync

Nếu thành công, người dùng từ Active Directory sẽ được import vào Snipe-IT.

Chỉ nên cấu hình auto-sync khi bước này chạy ổn định.


⏰ Bước 4 – Tự Động Đồng Bộ LDAP Bằng Cron

Để tự động hóa, sử dụng crontab.

Mở crontab:

 
sudo crontab -e

Thêm dòng sau:

 
*/30 * * * * cd /var/www/snipe-it && /usr/bin/php8.2 artisan snipeit:ldap-sync >> /var/log/snipeit-ldap.log 2>&1

Giải thích:

  • Chạy mỗi 30 phút

  • Chuyển đến thư mục Snipe-IT

  • Thực thi lệnh ldap-sync

  • Ghi log vào /var/log/snipeit-ldap.log

Tùy môi trường thực tế, bạn có thể điều chỉnh tần suất phù hợp.


🛠️ Xử Lý Lỗi LDAP Thường Gặp

Nếu sync thất bại, kiểm tra:

✔ DNS (ping tsf.local)
✔ Đã cài php8.2-ldap chưa
✔ Sai mật khẩu bind user
✔ Firewall giữa Ubuntu và DC
✔ Log tại: /var/log/snipeit-ldap.log

Phần lớn lỗi LDAP xuất phát từ DNS hoặc thông tin bind sai.


🎯 Kết Quả Sau Khi Hoàn Tất

Sau khi hoàn thành:

✅ Snipe-IT tích hợp Active Directory thành công
✅ Người dùng đăng nhập bằng tài khoản domain
✅ Tự động sync mỗi 30 phút
✅ Loại bỏ quản lý user thủ công
✅ Hệ thống quản lý tài sản chuyên nghiệp và chính xác hơn

Bạn đã triển khai thành công mô hình Snipe-IT LDAP Integration trên Ubuntu Server chuẩn doanh nghiệp.

Tham khảo thêm bài viết cùng chủ đề

P12 – Hướng dẫn Check in SnipeIT Hàng Loạt Cực Nhanh

P12 – Hướng dẫn Check in SnipeIT Hàng Loạt Cực Nhanh SnipeIT – P12 Cách Check-In & Check-Out Hàng Loạt Trong Snipe-IT (Bulk Method) Khi quản lý vài thiết bị, thao tác thủ công không phải vấn đề lớn. Nhưng khi cần xử lý 100–500 tài sản cùng lúc (onboarding,...

Read More

P11 – Hướng dẫn Check in SnipeIT cho IT Admins

P11 – Hướng dẫn Check in SnipeIT cho IT Admins SnipeIT – P11 How to Manage Check In Check Out in SnipeIT (Step-by-Step) Trong quản lý tài sản CNTT, việc cập nhật trạng thái thiết bị chính xác là yếu tố sống còn. Nếu không thực hiện đúng quy trình...

Read More