ProFTPD – Cấu hình: Chứng thực người dùng (mod_auth_unix và mod_auth_file)

phần 1 của bài viết này, chúng ta đã có được thông tin khái quát về các cơ chế chứng thực người dùng được hỗ trợ trong ProFTPD, cũng như cú pháp khai báo các cơ chế này. Ở bài viết này, chúng ta sẽ bắt đầu tìm hiểu chi tiết về cách thức triển khai, cấu hình và ứng dụng các cơ chế này.

Nội dung của bài viết này sẽ tập trung vào 2 cơ chế chứng thực đầu tiên của ProFTPD là:

  • mod_auth_unix
  • mod_auth_file

 1. Cấu hình sử dụng mod_auth_unix

–          Tạo tài khoản người dùng

# useradd ftpuser
# passwd ftpuser
Changing password for user ftpuser.
New password: <Nhập mật khẩu>
Retype new password: <Nhập mật khẩu>
passwd: all authentication tokens updated successfully.

–          Cấu hình ProFTPD

# vi /etc/proftpd.conf
AuthOrder                       mod_auth_unix.c

–          Restart ProFTPD

# /etc/init.d/proftpd restart

–          Kiểm tra kết quả:

Mở trình duyệt và truy cập theo đường dẫn ftp://ftp.example.local

Lưu ý: ftp.example.local là địa chỉ của máy chủ ProFTPD

proftpd_auth_unix_1

Truy cập thành công.

proftpd_auth_unix_2

 

2. Cấu hình sử dụng mod_auth_file

Cơ chế này sử dụng đường dẫn trong 2 khai báo AuthUserFile (thay thế cho /etc/passwd) và AuthGroupFile (thay thế cho /etc/group) làm nơi lưu trữ thông tin của tài khoản người dùng trong ProFTPD. Các tài khoản được lưu trong 2 file này được gọi là “virtual user” – tức là tài khoản chỉ tồn tại bên trong ProFTPD mà không tồn tại thực sự trên máy tính.

–          Tạo nhóm tài khoản người dùng

# mkdir /etc/proftpd
# ftpasswd --group --name=ftpgroup --gid=1001 --file=/etc/proftpd/ftpd.group
ftpasswd: using alternate file: /etc/proftpd/ftpd.group
ftpasswd: creating group entry for group ftpgroup
ftpasswd: entry created

–          Tạo tài khoản người dùng

# mkdir /home/ftpuser2
# ftpasswd --passwd --name=ftpuser2 --uid=1001 –gid=1001 --home=/home/ftpuser2 --shell=/bin/false --file=/etc/proftpd/ftpd.passwd
ftpasswd: using alternate file: /etc/proftpd/ftpd.passwd
ftpasswd: creating passwd entry for user ftpuser2
ftpasswd: /bin/false is not among the valid system shells.  Use of
ftpasswd: "RequireValidShell off" may be required, and the PAM
ftpasswd: module configuration may need to be adjusted.

Password: <Nhập mật khẩu cho tài khoản cần tạo>
Re-type password: <Nhập mật khẩu cho tài khoản cần tạo>
ftpasswd: entry created

–          Cấu hình ProFTPD

# vi /etc/proftpd.conf
AuthOrder                   mod_auth_file.c
AuthUserFile               /etc/proftpd/ftpd.passwd
AuthGroupFile              /etc/proftpd/ftpd.group
RequireValidShell          off

–          Kiểm tra cấu hình ProFTPD

# proftpd –t
Checking syntax of configuration file
Syntax check complete.

–          Restart ProFTPD.

# /etc/init.d/proftpd restart

–          Kiểm tra kết quả.

proftpd_auth_file_1

Truy cập thành công

proftpd_auth_file_2