麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 系統(tǒng) > Ubuntu > 正文

爛泥:ubuntu下vsftpd虛擬用戶配置

2024-06-28 14:31:33
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文由ilanniweb提供友情贊助,首發(fā)爛泥行天下

想要獲得更多的文章,可以關(guān)注我微信ilanniweb。

以前搭建vsftpd都是在centos下,本以為在Ubuntu按照以前的步驟搭建即可。可是實(shí)際情況告訴我是,我太想當(dāng)然了。經(jīng)過(guò)一番的折騰終于把ubuntu下vsftpd虛擬用戶的配置搞定了,下面就把我的配置步驟貼出來(lái)供得為參考。

一、業(yè)務(wù)要求

現(xiàn)在要求創(chuàng)建一個(gè)FTP賬號(hào)ailanni,該賬號(hào)只能登錄到/www目錄下,不能切換到上級(jí)目錄。同時(shí)處于安全考慮還要求該賬號(hào)上傳的文件權(quán)限為644,即上傳的文件具有可讀可寫權(quán)限,但是沒(méi)有可執(zhí)行權(quán)限。

除此之外還要求該用戶不能是系統(tǒng)用戶,即使用vsftpd的虛擬用戶。

要求看起來(lái)比較簡(jiǎn)單,下面我們開(kāi)始進(jìn)行配置。

PS:以下實(shí)驗(yàn)全部在ubuntu server 14.04 X64上進(jìn)行。有關(guān)centos的操作可以參考這篇文章《爛泥:Vsftpd使用虛擬用戶,訪問(wèn)FTP》。

二、vsftpd安裝

在配置vsftpd之前,我們先安裝vsftpd,vsftpd的安裝比較簡(jiǎn)單。我們?cè)俅沃苯邮褂胊pt-get進(jìn)行安裝,如下:

sudo apt-get -y install vsftpd

clip_image002

vsftpd的安裝很簡(jiǎn)單,我們現(xiàn)在來(lái)查看下vsftpd都安裝了那些文件。如下:

dpkg -L vsftpd |tac

clip_image003

通過(guò)上圖,我們可以看出vsftpd在安裝時(shí),生成了很多文件,其中/etc/init/vsftpd.conf、/etc/vsftpd.conf比較重要。

/etc/init/vsftpd.conf是vsftpd的初始化文件,而/etc/vsftpd.conf是vsftpd的配置文件。

現(xiàn)在我們來(lái)查看下/etc/init/vsftpd.conf文件。如下:

cat /etc/init/vsftpd.conf

clip_image004

通過(guò)上圖,我們可以很明顯的看出vsftpd初始化時(shí)使用的配置文件就是/etc/vsftpd.conf文件。

為什么在此我要指出這一點(diǎn)呢?是因?yàn)槲以詾閡buntu下vsftpd和centos下的一樣,可以把vsftpd的配置文件存放到/etc/vsftpd/目錄下。這一點(diǎn)是和centos不同的。

除此之外,還有一點(diǎn)不同,就是vsftpd的啟動(dòng)、停止、重啟腳本。

在ubuntu下要啟動(dòng)、停止、重啟vsftpd,我們必須使用以下命令:

sudo service vsftpd stop

sudo service vsftpd start

sudo service vsftpd restart

而在centos下,我們可以使用以下命令:

service vsftpd stop

/etc/init.d/vsftpd stop

最后,我們?cè)賮?lái)查看下vsftpd的服務(wù)腳本。如下:

cat /lib/systemd/system/vsftpd.service

clip_image005

三、vsftpd配置

vsftpd安裝完畢后,我們現(xiàn)在開(kāi)始配置vsftpd,不過(guò)在正式配置之前,我們還有幾步工作要做。

3.1 用戶相關(guān)配置

因?yàn)槭鞘褂胿sftpd的虛擬用戶,所以我們需要先在系統(tǒng)中創(chuàng)建一個(gè)用戶,并且該用戶對(duì)/www目錄具有可讀可寫可執(zhí)行權(quán)限。

創(chuàng)建用戶,如下:

sudo useradd -m -s /bin/bash ftpilanni

cat /etc/passwd |grep ftpilanni

clip_image006

注意:創(chuàng)建的用戶ftpilanni現(xiàn)在是無(wú)法登錄到系統(tǒng)的,因?yàn)闆](méi)有給該用戶設(shè)置密碼。在此,我們也無(wú)需ftpilanni登錄到系統(tǒng),這樣相對(duì)來(lái)說(shuō)比較安全。

用戶創(chuàng)建完畢后,我們來(lái)創(chuàng)建對(duì)應(yīng)的目錄并修改其所屬用戶,如下:

sudo mkdir /www

sudo chown -R ftpilanni:ftpilanni /www/

clip_image007

有關(guān)用戶相關(guān)配置結(jié)束后,我們開(kāi)始設(shè)置登錄vsftp的用戶與密碼文件login.txt。如下:

sudo mkdir /etc/vsftpd/

sudo vim /etc/vsftpd/login.txt

ailanni

ailannipassWord

clip_image008

login.txt為登錄vsftpd的用戶與密碼文件。

login.txt設(shè)置完畢后,我們要使用db_load進(jìn)行加密。而db_load需要db-util這個(gè)軟件。所以需要我們現(xiàn)在安裝db-util,如下:

sudo apt-get -y install db-util

clip_image009

db-util安裝完畢后,現(xiàn)在開(kāi)始使用db_load對(duì)loginx.txt進(jìn)行加密。如下:

sudo db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db

clip_image010

loginx.txt加密完成后,我們現(xiàn)在開(kāi)始配置vsftpd的PAM驗(yàn)證。

3.2 PAM驗(yàn)證配置

vsftpd的PAM驗(yàn)證,在此我沒(méi)有使用vsftpd安裝時(shí)所生成的/etc/pam.d/vsftpd文件。

因?yàn)榻?jīng)過(guò)我多次的測(cè)試,發(fā)現(xiàn)如果使用該文件進(jìn)行驗(yàn)證的話,無(wú)法驗(yàn)證通過(guò)。不知道為什么,猜想很有可能是vsftpd的一個(gè)BUG。

創(chuàng)建驗(yàn)證文件,如下:

sudo vim /etc/pam.d/vsftpd.virtual

auth required pam_userdb.so db=/etc/vsftpd/login

account required pam_userdb.so db=/etc/vsftpd/login

clip_image011

vsftpd.virtual文件的內(nèi)容,也可以根據(jù)OS的版本進(jìn)行調(diào)整。我現(xiàn)在使用的是ubuntu x64,所以也可以填寫為:

auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd/login

account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd/login

其中/etc/vsftpd/login對(duì)應(yīng)/etc/vsftpd/login.db文件

3.3 vsftp權(quán)限配置

現(xiàn)在正式配置vsftpd,vsftpd的幾乎所有配置項(xiàng)都在/etc/vsftpd.conf文件中進(jìn)行。

根據(jù)業(yè)務(wù)要求vsftpd.conf配置內(nèi)容如下:

grep -vE "^#|^$" /etc/vsftpd.conf

listen=YES

listen_ipv6=NO

anonymous_enable=NO

local_enable=YES

write_enable=YES

local_umask=022

dirmessage_enable=YES

use_localtime=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

chroot_local_user=YES

chroot_list_enable=NO

allow_writeable_chroot=YES

secure_chroot_dir=/var/run/vsftpd/empty

pam_service_name=vsftpd

rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem

rsa_PRivate_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

ssl_enable=NO

guest_enable=YES

pam_service_name=vsftpd.virtual

user_config_dir=/etc/vsftpd/vu

pasv_enable=YES

pasv_min_port=30000

pasv_max_port=31000

clip_image012

在以上配置文件中,有幾點(diǎn)需要重點(diǎn)指出。

local_enable=YES

write_enable=YES

local_umask=022

這兩項(xiàng)是啟用系統(tǒng)用戶的寫權(quán)限。特別是write_enable=YES項(xiàng)一定要啟用,否則vsftpd虛擬用戶將無(wú)法登錄vsftpd。

為什么會(huì)是這樣?因?yàn)樘摂M用戶依賴與系統(tǒng)用戶。

chroot_local_user=YES

chroot_list_enable=NO

allow_writeable_chroot=YES

這三項(xiàng)是配置vsftpd用戶禁止切換上級(jí)目錄的權(quán)限。

guest_enable=YES

pam_service_name=vsftpd.virtual

user_config_dir=/etc/vsftpd/vu

這三項(xiàng)是啟用vsftpd虛擬用以及虛擬用戶賬號(hào)配置目錄。

pasv_enable=YES

pasv_min_port=30000

pasv_max_port=31000

這三項(xiàng)是啟用vsftpd被動(dòng)模式及相關(guān)端口。

3.4 虛擬用戶相關(guān)配置

vsftpd配置文件修改文件后,現(xiàn)在開(kāi)始配置虛擬用戶的相關(guān)權(quán)限。如下:

sudo mkdir /etc/vsftpd/vu

sudo vim /etc/vsftpd/vu/ailanni

guest_username=ftpilanni

local_root=/www/

virtual_use_local_privs=YES

anon_umask=133

clip_image013

以上配置參數(shù),其中g(shù)uest_username=ftpilanni表示的是設(shè)置FTP對(duì)應(yīng)的系統(tǒng)用戶為ftpilanni

local_root=/www/表示使用本地用戶登錄到ftp時(shí)的默認(rèn)目錄。

virtual_use_local_privs=YES虛擬用戶和本地用戶有相同的權(quán)限。

anon_umask表示文件上傳的默認(rèn)掩碼。計(jì)算方式是777減去anon_umask就是上傳文件的權(quán)限。在此我們?cè)O(shè)置的是133,也就是說(shuō)上傳后文件的權(quán)限是644。即上傳的文件對(duì)所屬用戶來(lái)說(shuō)只有讀寫權(quán)限,沒(méi)有執(zhí)行權(quán)限。

以上全部配置完畢后,我們來(lái)重啟vsftpd,如下:

sudo service vsftpd restart

clip_image014

四、測(cè)試

現(xiàn)在我們來(lái)使用ailanni用戶登錄vsftpd進(jìn)行測(cè)試。

clip_image015

clip_image016

通過(guò)以上兩張圖,我們可以很明顯的看到vsftpd的配置已經(jīng)達(dá)到了業(yè)務(wù)的要求。

五、IPtables配置

在實(shí)際生產(chǎn)環(huán)境中,為了安全起見(jiàn),我們一般是開(kāi)啟防火墻的。

在ubuntu上,我們也可以使用IPtables來(lái)進(jìn)行防護(hù)。

IPtables配置如下:

sudo iptables-save >/home/ilanni/iptables.rule

clip_image017

sudo iptables-restore < /home/ilanni/iptables.rule

sudo iptables -nL

clip_image018

sudo vim /etc/network/interfaces

pre-up iptables-restore < /home/ilanni/iptables.rule

post-down iptables-save < /home/ilanni/iptables.rule

clip_image019


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 在线观看第一区 | 免费黄色大片网站 | 涩涩操 | 久久人人做 | 91精选视频在线观看 | 久久精品日产高清版的功能介绍 | 欧美人xx| jizzyouxxxx| 国产精品视频一区二区噜噜 | 黄色一级片毛片 | 夜添久久精品亚洲国产精品 | 久久免费精品视频 | 国产精品一区二区三区在线播放 | 免费毛片在线 | 欧美人xx| 久久久久久亚洲综合影院红桃 | 国产伦久视频免费观看视频 | 国产精品wwww | 7m视频成人精品分类 | 69性欧美高清影院 | 爱射av| 青青草成人免费视频在线 | 91精品老司机| 日韩精品网站在线观看 | 亚洲精品日韩色噜噜久久五月 | 日韩精品一二三区 | 欧美一级特黄特色大片免费 | 在线香蕉视频 | 99激情| 在线影院av | 午夜激情视频免费 | 免费午夜视频在线观看 | www.理论片| 石原莉奈日韩一区二区三区 | www国产成人免费观看视频 | 天天草天天爱 | 亚洲免费高清 | 国产一级免费在线视频 | 欧美久久久久久久久 | 99国内精品视频 | 国产在线观看一区二区三区 |