SmbFTPD 使用手冊

上一頁
smbfptd.conf
  下一頁
相關檔案

第四章 虛擬使用者

內容列表

4.1 使用 MySQL

4.2 使用 PostgreSQL

4.3 使用純文字檔

4.1 使用 MySQL

如果您要使用 MySQL 進行虛擬使用者的身份認證,請先在 smbftpd.conf 中加入下列設定:

VirtualUserMapping	ftp
VirtualUserAuthMethod	mysql
VirtualUserAuthConfig	/usr/local/etc/smbftpd/smbftpd_mysql.conf

接著請修改 /usr/local/etc/smbftpd/smbftpd_mysql.conf,設定 MySQL 的 IP、資料庫名稱、使用者、及密碼。

在 MySQL 資料庫中,我們建立一個名為 user_table 的表格:

CREATE TABLE user_table(
	name varchar(64),
	password varchar(64),
	group_name varchar(64),
	home varchar(256)
);

然後在表格中新增使用者,您就可以使用 MySQL 的虛擬使用者登入了。

請注意,在使用者的密碼欄位中,我們可以使用下列四種編碼:"plaintext"、"crypt"、"md5"、"password"。plaintext 指的是明碼,就是直接將密碼以文字方式存放,不進行任何編碼。password 是 MySQL password() 所加密出來的密碼。

4.2 使用 PostgreSQL

如果您要使用 PostgreSQL 進行虛擬使用者的身份認證,請先在 smbftpd.conf 中加入下列設定:

VirtualUserMapping	ftp
VirtualUserAuthMethod	pgsql
VirtualUserAuthConfig	/usr/local/etc/smbftpd/smbftpd_pgsql.conf

接著請修改 /usr/local/etc/smbftpd/smbftpd_pgsql.conf,設定 PostgreSQL 的 IP、資料庫名稱、使用者、及密碼。

在 PostgreSQL 資料庫中,我們建立一個名為 user_table 的表格:

CREATE TABLE user_table(
	name varchar(64),
	password varchar(64),
	group_name varchar(64),
	home varchar(256)
);

然後在表格中新增使用者,您就可以使用 PostgreSQL 的虛擬使用者登入了。

請注意,在使用者的密碼欄位中,我們可以使用下列三種編碼:"plaintext"、"crypt"、"md5"。plaintext 指的是明碼,就是直接將密碼以文字方式存放,不進行任何編碼。

4.3 使用純文字檔

如果您要使用純文字檔案進行虛擬使用者的身份認證,請先在 smbftpd.conf 中加入下列設定:

VirtualUserMapping	ftp
VirtualUserAuthMethod	text
VirtualUserAuthConfig	/usr/local/etc/smbftpd/smbftpd_user.conf

接著請使用 smbftpd-user 這個指令來新增使用者:

# ./smbftpd-user -h

Usage: ./smbftpd-user -[aedt] user [-t type]

options:
	-s file 	Set the path of smbftpd.conf
	-a user 	Add a smbftpd virtual user into text file
	-e user 	Edit a smbftpd virtual user into text file
	-d user 	Delete a smbftpd virtual user into text file
	-g user 	Get the status of user.
			The user can be real user or mysql/pgsql/text virtual
			user. We will print the available share and permission
			of the user.
	-h		Print this help message

您可使使用 -a 指令來新增使用者,例如,新使用者 alex:

# ./smbftpd-user -a alex
Group name: users
Home: /noexist
Enter password: 
Enter password again: 
User [alex] is add.

我們就可以在 /usr/local/etc/smbftpd/smbftpd_user.conf 檔中看到該使用者的資料。如果您要刪除使用者,可以直接修改該檔案,或是使用 smbftpd-user -d user 來刪除使用者。

另外,您也可以使用 smbftpd-user -g user 來查看使用者目前的權限設定 (不限定為虛擬使用者,也可以是真實使用者)。例如:

# ./smbftpd-user -g alex

Authentication Method: text

Login : alex
Real user : ftp
Home : /noexist
Anonymous : No
Download bandwidth : 100 KB/s
Upload bandwidth : 2000 KB/s
Mode : smb
Available shares :
	[public]
		Path : /volume1/home/alex
		Writeable : Yes
		Browseable : Yes
		List files : No
		Download : Yes
		Modify data : No
	[music]
		Path : /volume1/synosrc
		Writeable : No
		Browseable : Yes
		List files : Yes
		Download : Yes
		Modify data : Yes

上一頁
smbfptd.conf

索引
您可以在 http://www.twbsd.org 取得本文件

下一頁
相關檔案