成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用vsftpd和mysql創(chuàng)建一個(gè)虛擬用戶ftp服務(wù)器

運(yùn)維 系統(tǒng)運(yùn)維
當(dāng)前有這樣的一個(gè)需求,我需要批量創(chuàng)建一個(gè)網(wǎng)站,比如我要?jiǎng)?chuàng)建一個(gè)foo.com的網(wǎng)站,我就會(huì)在/web/目錄下創(chuàng)建一個(gè)foo.com的目錄,WEB服務(wù)器(我這里用的是nginx)已經(jīng)自動(dòng)設(shè)置好解析。同時(shí),我需要有一個(gè)對應(yīng)的ftp賬號(hào)來管理這個(gè)網(wǎng)站,用vsftpd做FTP服務(wù)器,用MySQL做后端數(shù)據(jù)庫,兩者通過pam-mysql插件聯(lián)系起來。

當(dāng)前有這樣的一個(gè)需求,我需要批量創(chuàng)建一個(gè)網(wǎng)站,比如我要?jiǎng)?chuàng)建一個(gè)foo.com的網(wǎng)站,我就會(huì)在/web/目錄下創(chuàng)建一個(gè)foo.com的目錄,WEB服務(wù)器(我這里用的是nginx)已經(jīng)自動(dòng)設(shè)置好解析。同時(shí),我需要有一個(gè)對應(yīng)的ftp賬號(hào)來管理這個(gè)網(wǎng)站,但是我不希望使用系統(tǒng)賬號(hào),一來網(wǎng)站多了,系統(tǒng)賬號(hào)必然多,而來我不希望管理網(wǎng)站的賬號(hào)能通過ssh登陸,雖然ssh也可以配置哪些賬號(hào)不允許登陸。但是不創(chuàng)建系統(tǒng)賬號(hào)顯然是最安全的做法。

于是這就是有了標(biāo)題的做法,用vsftpd做FTP服務(wù)器,用MySQL做后端數(shù)據(jù)庫,兩者通過pam-mysql插件聯(lián)系起來。配置步驟簡述如下:

  1. 我的系統(tǒng)是CentOS 6.2,因此現(xiàn)用yum工具安裝好所需要的軟件,包括mysql-server,vsftpd,pam-mysql等。
  2. 編輯/etc/vsftpd/vsftpd.conf文件,增加或者修改如下幾項(xiàng):
  1. anonymous_enable=NO 
  2. virtual_use_local_privs=YES 
  3. guest_enable=YES 
  4. user_sub_token=$USER  
  5. local_root=/web/$USER  
  6. chroot_local_user=YES 
  7. hide_ids=YES 
  8. guest_username=nginx 

guest_username 表示當(dāng)用戶登陸成功后,其uid映射到系統(tǒng)哪個(gè)賬號(hào)上,我這里為了和WEB管理相結(jié)合,因此用了nginx這個(gè)賬號(hào)。

3.創(chuàng)建數(shù)據(jù)庫表,我們創(chuàng)建一個(gè)名為vsftpd的數(shù)據(jù)庫,在其下創(chuàng)建一個(gè)users表,同時(shí)授權(quán)給vsftpd賬號(hào)登陸,創(chuàng)建過程類似如下:

  1. mysql> create database vsftpd;  
  2. Query OK, 1 row affected (0.00 sec)  
  3.         
  4. mysql> use vsftpd  
  5. Database changed  
  6. mysql> create table users(username varchar(30) not null primary key,password varchar(41) not null);  
  7. Query OK, 0 rows affected (0.04 sec)  
  8. mysql> grant usage  on vsftpd.users to vsftpd@localhost identified by 'abc123';  
  9. Query OK, 0 rows affected (0.00 sec)  
  10. mysql> insert into users values('foo.com',password('test'));  
  11. Query OK, 1 row affected (0.00 sec)  
  12.         
  13. mysql> select * from users;  
  14. +----------+-------------------------------------------+  
  15.       | username | password                                  |  
  16. +----------+-------------------------------------------+  
  17.       | foo.com  | *94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29 |  
  18. +----------+-------------------------------------------+  
  19.       1 row in set (0.00 s 

我這里對密碼使用password加密函數(shù),因?yàn)橐蚖EB結(jié)合,因?yàn)閡sername使用了和域名相同的名字,這樣我就可以通過username來同時(shí)獲知域名,從而將賬號(hào)的主目錄鎖定在對應(yīng)的域名目錄下。

編輯/etc/pam.d/vsftpd文件,***類似如下:

  1. auth required pam_mysql.so user=vsftpd passwd=abc123 host=localhost db=ftpd table=users usercolumn=username passwdcolumn=password crypt=2 
  2. account required pam_mysql.so user=vsftpd passwd=abc123 host=localhost db=ftpd table=users usercolumn=username passwdcolumn=password crypt=2 

user和passwd指的是連接MySQL的賬號(hào)和密碼,crypt指的加密方式,0表示明文;不加密;1表示用crypt方式加密;2表示用MySQL的password函數(shù)加密;3表示用md5加密;4表示用sha1加密。

創(chuàng)建對應(yīng)的目錄 當(dāng)用foo.com登陸,且驗(yàn)證通過后,根據(jù)之前vsftpd的配置,它將以nginx的身份把/web/foo.com作為其主目錄,因此要保證其目錄存在,而且其身份有訪問權(quán)限。

測試,直接可以在本地測試,看看能否登陸,如果不能登陸,/var/log/secure里又看不到更多的信息,那你可以選擇在/etc/pam.d/vsftpd的配置文件里加上verbose模式,也就是在user=vsftpd那里加上一個(gè)verbose=1的選項(xiàng),這樣它就會(huì)把詳細(xì)的信息打印到/var/log/secure文件里。看看是哪里的報(bào)錯(cuò)。
其實(shí),上述只是一個(gè)最簡單的配置,pam-mysql還可以讓你配置得更復(fù)雜,比如記錄登錄日志,根據(jù)特定條件查詢過濾用戶信息等,pam-mysql軟件包自帶的README有詳細(xì)的說明,大家可以按照那個(gè)說明來配置一個(gè)符合你需求的靈活的認(rèn)證方式。

責(zé)任編輯:黃丹 來源: 博客
相關(guān)推薦

2011-03-04 10:03:44

VSFTPD虛擬服務(wù)器

2011-02-23 15:32:39

vsftpd

2011-02-23 09:01:37

2010-08-25 16:28:04

2011-02-23 13:52:07

vsftpd

2011-03-02 16:49:53

Pureftpdmysql

2010-05-18 14:34:41

IIS服務(wù)器

2014-04-14 15:54:00

print()Web服務(wù)器

2010-05-20 12:57:38

2011-02-25 16:14:09

proftpdftp

2018-06-15 10:25:43

Python HTTPFTP服務(wù)器

2018-12-06 09:23:33

2010-02-23 14:35:48

CentOS vsft

2011-03-04 10:05:10

Vsftpd虛擬用戶

2011-02-22 14:19:28

vsFTPd啟動(dòng)關(guān)閉

2011-02-24 09:57:40

vsFTPd啟動(dòng)關(guān)閉

2019-02-26 16:20:52

FTP服務(wù)器

2015-08-25 14:34:20

LinuxvsftpdFTP

2011-03-04 10:00:56

Vsftpd配置服務(wù)器

2011-02-24 09:14:37

vsFTPd虛擬用戶
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美一区二区三区国产 | 亚洲一区二区三 | 一区二区视频在线 | 成人av电影免费在线观看 | 久久久国产一区 | 日日干夜夜草 | 久久在线 | 91极品尤物在线播放国产 | 成人在线小视频 | 国产在线中文字幕 | 黄色日本片 | 欧美日韩国产一区二区三区 | 国产精品欧美一区二区三区不卡 | 国产一区二区三区四区五区加勒比 | 天天操操 | 91最新视频 | 欧美另类日韩 | 国产精品久久国产精品99 | 成人小视频在线观看 | 欧美lesbianxxxxhd视频社区 | 久久精品国产99国产 | 成人性视频免费网站 | 成人久久久 | 欧美激情一区二区三区 | 国产精品久久久久久久久久久久午夜片 | 亚洲视频在线一区 | 久久久久午夜 | 羞羞的视频网站 | 国产免国产免费 | 久久精品国产久精国产 | 久久久精品影院 | 91资源在线播放 | 欧美99| 免费视频二区 | 国产精品福利网站 | 欧美日韩精品专区 | 少妇黄色| 国产91丝袜在线播放 | 91视在线国内在线播放酒店 | 伊人网综合 | 亚洲一区二区三区福利 |