歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Centos 5.5下搭建Proftpd

Centos 5.5下搭建Proftpd

日期:2017/3/3 16:32:03   编辑:關於Linux

根據公司需要,要搭建一個proftpd,搭建過程中權限是最讓我費解的地方,不過在一位老師的幫助下,最終還是解決了權限問題,所以拿出來跟大伙分享下。

proftpd的認證機制有基於mysql的,系統用戶的,基於文件的也就是虛擬用戶,接下來說的就是基於虛擬用戶的。

下載地址:ftp://ftp.proftpd.org/distrib/source/

在帖子的附件中我也給出了proftpd的源碼包,版本為1.3.4a

1、解包

tar -zvxf proftpd-1.3.4a.tar.gz

2、配置

./configure

--prefix=/usr/local/proftpd/ 指定proftpd的安裝位置

--enable-nls 支持中文

3、編譯

make

4、編譯安裝

make install

啟動:/usr/local/proftpd/sbin/proftpd 按下回車,即可啟動

停止:/usr/local/proftpd/sbin/ftpshut 按下回車,即可關閉

###(這裡講一個關於proFTPD啟動方式的小技巧,回到proFTPD的源碼目錄,執行

cp ./contrib/dist/rpm/proftpd.init.d /etc/rc.d/init.d/proftpd

chmod 755 /etc/rc.d/init.d/proftpd

OK,執行完以上兩條命令後,我們就可以用/etc/init.d/proftpd start|stop 來啟動和關閉FTP啦。

配置

首先講一下FTP配置的基本格式:

<Directory "需要共享的目錄路徑">

<Limit "權限參數">

************************* (此行寫把上面的權限賦予的用戶或組)

</Limit>

</Directory>

以上就是FTP配置目錄的基本格式,如果看不懂的話,下面我還會給出例子,可以參照。

配置目錄時用到的權限如下:

CMD:Change Working Directory 改變目錄

MKD:MaKe Directory 建立目錄的權限

RNFR: ReName FRom 更改目錄名的權限

DELE:DELEte 刪除文件的權限

RMD:ReMove Directory 刪除目錄的權限

RETR:RETRieve 從服務端下載到客戶端的權限

STOR:STORe 從客戶端上傳到服務端的權限

READ:可讀的權限,不包括列目錄的權限,相當於RETR,STAT等

WRITE:寫文件或者目錄的權限,包括MKD和RMD

DIRS:是否允許列目錄,相當於LIST,NLST等權限,還是比較實用的

ALL:所有權限:

LOGIN:是否允許登陸的權限

針對上面的這個Limit(權限)所應用的對象,又包括以下范圍:

AllowUser 針對某個用戶允許的Limit

DenyUser 針對某個用戶禁止的Limit

AllowGroup 針對某個用戶組允許的Limit

DenyGroup 針對某個用戶組禁止的Limit

AllowAll 針對所有用戶組允許的Limit

DenyAll 針對所有用戶禁止的Limit

舉個例子,形象的說明下權限方面的配置。

要在ftp上共享運維部的目錄,要求運維部的經理可以上傳,刪除,普通員工只能上傳,下載,沒有刪除權限。

運維部路徑在/mnt/pub/yunwei

proftpd.conf中關於運維部目錄權限的設置如下:

<Directory "/var/ftp/yunwei">

<Limit CWD MKD RNFR READ WRITE STOR RETR>

DenyAll 拒絕所有人往該目錄下執行Limit後的操作指令

</Limit>

<Limit DELE>

AllowUser jingli 只允許經理刪除

DenyAll 禁止任何人在該目錄下刪除文件

</Limit>

<Limit CWD MKD RNFR READ WRITE STOR RETR>

AllowUser yunwei 僅允許yunwei用戶(組)可以執行Limit後的所有指令

</Limit>

</Directory>

上面就是關於目錄的權限設置,接下來就是新建虛擬用戶。

進入proftpd的源碼目錄

cp ftpasswd /usr/local/proftpd/bin/

chmod +x /usr/local/proftpd/bin/ftpasswd

上面兩步是讓ftpasswd 可執行。

ftpasswd命令格式說明:

--passwd 創建密碼文件,即AuthUserFile指定的文件

--group 創建組文件

--name 指定創建的用戶名

--uid 指定用戶虛擬UID

--gid 指定虛擬GID

--home 指定用戶家目錄

--shell 指定用戶Shell

--file 指定創建的文件名

例:新建一個用戶

ftpasswd --passwd --file=XX --name=XX --uid=XX --home=XX --shell=XX

新建一個組

ftpasswd --group --file=XX --name=XX --gid=XX

如果想講用戶加入到組的話,直接vim編輯組文件,在組後面添加上用戶就OK了。

以上就是proftpd基於虛擬用戶的設置,有錯的不足的地方,煩請各位大牛指出,先行謝過。

本文出自 “我的未來不是夢。” 博客,請務必保留此出處http://song49.blog.51cto.com/4480450/791018

Copyright © Linux教程網 All Rights Reserved