欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

vsftpd基于pam_mysql的虛擬用戶機(jī)制-創(chuàng)新互聯(lián)

一、虛擬用戶概述

陽明ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

vsftpd使用虛擬用戶時(shí),需要為所有的虛擬用戶創(chuàng)建一個(gè)系統(tǒng)用戶,因?yàn)闊o論vsftpd使用的是哪一種用戶類型(匿名用戶、系統(tǒng)用戶、虛擬用戶),最終都是要映射為操作系統(tǒng)上的一個(gè)用戶,而每一個(gè)文件資源都有各自的權(quán)限,只有操作系統(tǒng)上的用戶才能根據(jù)權(quán)限模型判斷是否能夠訪問該文件資源。這里僅介紹vsftpd基于pam_mysql的虛擬用戶機(jī)制的使用。

二、vsftpd基于pam_mysql的虛擬用戶機(jī)制

1、編譯安裝pam_mysql

(1) 編譯pam_mysql前要提供開發(fā)環(huán)境,并安裝其依賴的程序包的開發(fā)包

[root@ftp ~]# yum -y groupinstall "Development Tools" "Server Platform Development" [root@ftp ~]# yum -y install pam-devel openssl-devel mariadb-devel

(2) 下載pam_mysql的源碼壓縮包

#在pam_mysql官網(wǎng)上下載其壓縮包

vsftpd基于pam_mysql的虛擬用戶機(jī)制

(3) 解壓縮后進(jìn)行編譯安裝

[root@ftp ~]# tar xf pam_mysql-0.7RC1.tar.gz [root@ftp ~]# cd pam_mysql-0.7RC1/ [root@ftp pam_mysql-0.7RC1]#  [root@ftp pam_mysql-0.7RC1]# ./configure --with-mysql=/usr --with-openssl=/usr --with-pam=/usr --with-pam-mods-dir=/lib64/security [root@ftp pam_mysql-0.7RC1]# make && make install

2、使用mysql創(chuàng)建用于存放用戶賬號(hào)密碼的表

(1)啟動(dòng)mysql服務(wù),并設(shè)置為開機(jī)自動(dòng)啟動(dòng)

[root@ftp ~]# systemctl start mariadb.service [root@ftp ~]# systemctl enable mariadb.service

(2)創(chuàng)建數(shù)據(jù)庫vsftpd和表users

[root@ftp ~]# mysql mysql> CREATE DATABASE vsftpd; mysql> use vsftpd; mysql> CREATE TABLE users ( id INT AUTO_INCREMENT NOT NULL PIRMARY KEY, name CHAR(30) NOT NULL, password CHAR(48) BINARY NOT NULL ); # mysql使用password()函數(shù)加密后的結(jié)果有48個(gè)字符 mysql> DESC users; +----------+------------+------+-----+---------+----------------+ | Field    | Type       | Null | Key | Default | Extra          | +----------+------------+------+-----+---------+----------------+ | id       | int(11)    | NO   | PRI | NULL    | auto_increment | | name     | char(30)   | NO   |     | NULL    |                | | password | binary(48) | NO   |     | NULL    |                | +----------+------------+------+-----+---------+----------------+

(3)為表插入數(shù)據(jù)

mysql> INSERT INTO usrs(name,password) VALUES ('tom',password('mageedu')),('jerry',password('mageedu.com'));

(4)授權(quán)

mysql> GRANT SELECT ON vsftpd.* TO vsftpd@localhost IDENTIFIED BY 'mageedu'; mysql> GRANT SELECT ON vsftpd.* TO vsftpd@'127.0.0.1' IDENTIFIED BY 'mageedu'; mysql> FLUSH PRIVILEGES;

3、創(chuàng)建一個(gè)pam配置文件

[root@ftp ~]# vim /etc/pam.d/vsftpd.mysql auth required pam_mysql.so user=vsftpd passwd=mageedu host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2 account required pam_mysql.so user=vsftpd passwd=mageedu host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2

4、創(chuàng)建系統(tǒng)用戶,作為所有虛擬用戶的映射用戶

[root@ftp ~]#  useradd -s /sbin/nologin -d /ftproot vuser [root@ftp ~]# ll -d /ftproot/ drwx------. 4 vuser vuser 87 Jun  9 21:48 /ftproot/    # 組用戶和其它用戶是沒有任何權(quán)限的 [root@ftp ~]# chmod go+rx /ftproot/    # 為組用戶和其他用戶添加讀和執(zhí)行權(quán)限 [root@ftp ~]# chmod -w /ftproot        # 映射用戶vuser的家目錄不能有寫權(quán)限 [root@ftp ~]# mkdir /ftproot/{pub,upload}    # 如果要想有寫權(quán)限,可在家目錄下創(chuàng)建具有寫權(quán)限的子目錄

5、編輯vsftpd配置文件,修改相關(guān)配置

[root@ftp ~]# vim /etc/vsftpd/vsftpd.conf guest_enable=YES          # 是否允許來賓賬號(hào)訪問 guest_username=vuser          # 把所有來賓賬號(hào)都映射為系統(tǒng)用戶vuser pam_service_name=vsftpd.mysql    # 修改對(duì)應(yīng)的pam配置文件

6、啟動(dòng)服務(wù)

[root@ftp ~]# systemctl start vsftpd.service [root@ftp ~]# ss -tnl | grep :21 LISTEN     0      32          :::21                      :::*

7、測試

(1)測試虛擬用戶tom

[root@ftp ~]# ftp 192.168.10.99 Connected to 192.168.10.99 (192.168.10.99). 220 (vsFTPd 3.0.2) Name (192.168.10.99:root): tom    # 輸入虛擬用戶tom 331 Please specify the password. Password:                           # 輸入虛擬用戶tom的密碼 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp>  ftp> ls 227 Entering Passive Mode (192,168,10,99,223,134). 150 Here comes the directory listing. drwxr-xr-x    2 0        0               6 Jun 09 13:35 pub drwxr-xr-x    2 1000     0              64 Jun 09 14:25 upload 226 Directory send OK.

(2)測試虛擬用戶jerry

[root@ftp ~]# ftp 192.168.10.99 Connected to 192.168.10.99 (192.168.10.99). 220 (vsFTPd 3.0.2) Name (192.168.10.99:root): jerry    # 輸入虛擬用戶jerry 331 Please specify the password. Password:                             # 輸入虛擬用戶jerry的密碼 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ls 227 Entering Passive Mode (192,168,10,99,251,69). 150 Here comes the directory listing. drwxr-xr-x    2 0        0               6 Jun 09 13:35 pub drwxr-xr-x    2 1000     0              64 Jun 09 14:25 upload 226 Directory send OK.

測試成功。

三、其它需求

1、如何讓虛擬用戶具有上傳文件的權(quán)限?

(1)確保vsftpd配置中匿名用戶具有寫權(quán)限

[root@ftp ~]# vim /etc/vsftpd/vsftpd.conf anon_upload_enable=YES        # 這一項(xiàng)需要啟用,因?yàn)樘摂M用戶也是匿名用戶

(2)確保虛擬用戶的系統(tǒng)映射用戶vuer對(duì)文件系統(tǒng)具有寫權(quán)限

[root@ftp ~]# chown vuser /ftproot/upload

(3)測試

#測試虛擬用戶tom

[root@ftp ~]# ftp 192.168.10.99 Connected to 192.168.10.99 (192.168.10.99). 220 (vsFTPd 3.0.2) Name (192.168.10.99:root): tom     # 輸入虛擬用戶tom 331 Please specify the password. Password:                            # 輸入虛擬用戶tom的密碼 ftp>  ftp> cd upload    # 切換至有用戶具有寫權(quán)限的目錄 ftp> lcd /etc     # 外部shell切換至/etc目錄 ftp> put fstab    # 上傳文件fstab local: fstab remote: fstab 227 Entering Passive Mode (192,168,10,99,213,217). 150 Ok to send data. 226 Transfer complete.    # 傳輸完成 541 bytes sent in 0.000189 secs (2862.43 Kbytes/sec) ftp> ls -rw-------    1 1000     1000          541 Jun 09 15:08 fstab 226 Directory send OK.

#測試虛擬用戶jerry

[root@ftp ~]# ftp 192.168.10.99 Connected to 192.168.10.99 (192.168.10.99). 220 (vsFTPd 3.0.2) Name (192.168.10.99:root): jerry     # 輸入虛擬用戶jerry 331 Please specify the password. Password:                            # 輸入虛擬用戶jerry的密碼 ftp>  ftp> cd upload    # 切換至有用戶具有寫權(quán)限的目錄 ftp> lcd /etc     # 外部shell切換至/etc目錄 ftp> put issue    # 上傳文件issue local: issue remote: issue 227 Entering Passive Mode (192,168,10,99,169,197). 150 Ok to send data. 226 Transfer complete.    # 傳輸完成 23 bytes sent in 5.8e-05 secs (396.55 Kbytes/sec) ftp> ls 227 Entering Passive Mode (192,168,10,99,144,240). 150 Here comes the directory listing. -rw-------    1 1000     1000          541 Jun 09 15:08 fstab -rw-------    1 1000     1000           23 Jun 09 15:14 issue 226 Directory send OK.

測試成功。

2、虛擬用戶tom和jerry都映射為系統(tǒng)上的一個(gè)用戶vuser,能夠設(shè)置tom和jerry的權(quán)限不一致,例如設(shè)置為tom能夠上傳文件,而jerry不能上傳文件?

1、分別為每個(gè)虛擬用戶添加單獨(dú)一個(gè)配置文件

#vsftpd支持每個(gè)虛擬用戶單獨(dú)使用一個(gè)配置文件,并且配置文件必須和用戶名相同

[root@ftp ~]# mkdir /etc/vsftpd/vuser.conf.d [root@ftp ~]# cd /etc/vsftpd/vuser.conf.d/ [root@ftp vuser.conf.d]# vim tom anon_upload_enable=YES    # 允許tom上傳文件 [root@ftp vuser.conf.d]# vim jerry anon_upload_enable=NO    # 不允許jerry上傳文件

2、編輯主配置文件/etc/vsftpd/vsftpd.conf

(1)設(shè)置不允許匿名用戶上傳

[root@ftp ~]# vim /etc/vsftpd/vsftpd.conf #anon_upload_enable=YES    # 注釋掉主配置文件中的該行配置

(2)明確設(shè)置加載vusers.conf.d目錄中的配置文件

[root@ftp ~]# vim /etc/vsftpd/vsftpd.conf user_config_dir=/etc/vsftpd/vusers.conf.d

3、重啟vsftpd服務(wù)

[root@ftp ~]# systemctl restart vsftpd.service

4、測試

#預(yù)期虛擬用戶tom能夠上傳文件,而jerry則不能上傳文件

#測試虛擬用戶tom

[root@ftp ~]# ftp 192.168.10.99 Connected to 192.168.10.99 (192.168.10.99). 220 (vsFTPd 3.0.2) Name (192.168.10.99:root): tom    # 輸入虛擬用戶tom 331 Please specify the password. Password:                         # 輸入虛擬用戶tom的密碼 ftp>  ftp> cd upload ftp> lcd /etc/ ftp> put grub2.cfg    # 上傳文件grub2.cfg local: grub2.cfg remote: grub2.cfg 227 Entering Passive Mode (192,168,10,99,220,164). 150 Ok to send data. 226 Transfer complete.    # 傳輸成功 4209 bytes sent in 0.000162 secs (25981.48 Kbytes/sec)

#測試虛擬用戶jerry

[root@ftp ~]# ftp 192.168.10.99 Connected to 192.168.10.99 (192.168.10.99). 220 (vsFTPd 3.0.2) Name (192.168.10.99:root): jerry    # 輸入虛擬用戶jerry 331 Please specify the password. Password:                           # 輸入虛擬用戶jerry的密碼 ftp>  ftp> cd upload ftp> lcd /etc/ ftp> put motd    # 上傳文件motd local: motd remote: motd 227 Entering Passive Mode (192,168,10,99,188,33). 550 Permission denied.    # 權(quán)限被拒絕!

測試成功。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

名稱欄目:vsftpd基于pam_mysql的虛擬用戶機(jī)制-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://aaarwkj.com/article4/doheie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、虛擬主機(jī)微信公眾號(hào)、微信小程序網(wǎng)站內(nèi)鏈、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)
久久人妻少妇嫩草av蜜桃综合| 成年人正常性生活频率| 日本午夜激情一区二区| 亚洲中文字幕激情中午字幕| 欧美丰满人妻少妇视频在线| 久久这里只有精品视频| 亚洲精品中文字幕日本乱码| 中文字幕乱码亚洲精品一区| 天堂中文在线官网在线 | 精品中文字幕欧美区一区| 日本欧美一区中文字幕| 亚洲精品乱码国产妇女毛片| 日本韩国欧美成人精品| 亚洲综合av伊人久久| 国产在线观看不卡视频| 性欧美一区二区三区| 原创国产av剧情精品| 麻豆一精品传二传媒短视频| 丰满人妻熟妇乱精品视频| 久久精品熟女亚洲av色| 亚洲国产欧美日韩在线一区| 美女午夜福利精品视频| 日本成人大片在线观看| 国产精品欧美日韩精品| 中文字幕人妻秘书社长| 91精品手机在线观看| 日韩在线不卡一二三| 日本五十路亲子在线一区| 色琪琪原网另类欧美日韩| 日本91大神在线观看| 中文字幕成人乱码亚洲| 久久热福利视频就在这里| 免费高清日本一区二区三区视频| 日本国产美女精品一区二区| 成熟人妻一区二区三区人妻| 韩国av高清在线观看| 97成人在线免费视频| 男人午夜影视在线观看| 国产模特一区二区三区| 三级日本一区二区三区| 日韩女同性一区二区三区|