1. 架設FTP伺服器需要設定哪些參數
轉
在網上做過軟體下載的人都知道,建立一個FTP下載伺服器相對比較簡單,一般用WIN2000下自帶的IIS就可以,但IIS在功能上好多都不盡人如意,下面我就介紹一款功能非常強大,但使用簡單的FTP伺服器構建軟體-Serv-U FTP Server,讓我們也來體驗一下自己DIY FTP伺服器的快樂!
Serv-U FTP Server V5.0 漢化企業版下載地址:http://www.mycodes.net/soft/2000.htm(內含漢化補丁和注冊機,具體漢化和注冊雞使用方法見壓縮包內的使用說明)
Serv-U 是一個可以運行於Windows 95/98/2000/ME 和 Windows NT 4.0下的FTP伺服器程序,
有了它,你的個人電腦就可以模擬為一個FTP伺服器,也就是說,你所連接的網路中的計算機用戶可以訪問你的個人電腦,通過FTP協議(文件傳輸協議)復制、移動、刪除你的電腦中的文件或文件夾,可以做一切許可權所允許的事情。FTP協議規定了計算機之間的標准通訊方式,使所有不同類型,不同操作系統,不同格式的電腦之間得以互換文件。它可以用最簡單的方式創建用戶帳號,並且在硬碟空間上劃分一定的區域用以存放文件,讓用戶以各種FTP客戶端軟體(如CuteFTP、WS_FTP等)上傳或下載所需要的文件。
有許多FTP伺服器和客戶端軟體可用於不同的系統中,Serv-U是用於運行MS-Windows 並且已安裝了WinSock 版本 1.1 兼容 TCP/IP 協議的個人電腦中的,這幾乎包括了所有的Windows操作系統。
Serv-U由兩大部分組成,引擎和用戶界面。Serv-U引擎(ServUDaemon.exe)其實是一個常駐後台的程序,也是Serv-U整個軟體的心臟部分,它負責處理來自各種FTP客戶端軟體的FTP命令,也是負責執行各種文件傳送的軟體。在運行Serv-U引擎也就是ServUDaemon.exe文件後,我們看不到任何的用戶界面,它只是在後台運行,通常我們無法影響它,但在ServUAdmin.exe中我們可以停止和開始它。Serv-U引擎可以在任何Windows平台下作為一個本地系統服務來運行,系統服務隨操作系統的啟動而開始運行,而後我們就可以運行用戶界面程序了。在Win NT/2000系統中,Serv-U會自動安裝為一個系統服務,但在Win 9x/Me 中,你需要在「伺服器」面板中選擇「自動開始」,才能讓它轉為系統服務。Serv-U用戶界面(ServUAdmin.exe)也就是Serv-U管理員,它負責與Serv-U引擎之間的交互。它可以讓用戶配置Serv-U,包括創建域、定義用戶、並告訴伺服器是否可以訪問。啟動Serv-U管理員最簡單的辦法就是直接點接系統欄的「U」形圖標,當然,你也可以從開始菜單中運行它。
在此有必要把Serv-U中的一些重要的概念給大家講清楚:每個正在運行的Serv-U引擎可以被用來運行多個「虛擬」的FTP伺服器,在管理員程序中,每個「虛擬」的FTP伺服器都稱為「域」,因此,對於伺服器來說,不得不建立多個域時是非常有用的。每個域都有各自的「用戶」、「組」和設置。一般說來,「設置向導」會在你第一次運行應用程序時設置好一個最初的域和用戶帳號。伺服器、域和用戶之間的關系大家可以參考下表:
*Serv-U 伺服器
*域 1
*用戶帳號 1
*用戶帳號 2
*用戶帳號 3
*域 2
*用戶帳號 1
*用戶帳號 2
*域 3
*用戶帳號 1
*用戶帳號 1
這個表有點類似與Serv-U管理員中伺服器、域和用戶的排列。
Serv-U FTP Server 是試用軟體,安裝後三十天內,你可以作為「專業版本」使它,但試用期過後,你就只能作為免費的「個人版本」使用了,只有基本功能了。
好了,說了這么多,還沒到關鍵部分-如何自己來建立FTP伺服器。下面我就一步一步來說明。
一、 安裝原版軟體和漢化補丁,這個過程就不多說了,想必沒人不會的。
二、 建立第一個本地FTP伺服器
安裝完成後程序會自動運行,你也可以在菜單中選擇運行。
1、 第一次運行程序,它會彈出設置向導窗口,
將會帶你完成最初的設置,
2、 單擊「下一步」,出現「顯示菜單圖像」的窗口,問你是否在菜單中顯示小圖像,看各人喜歡了;
3、 單擊「下一步」,這個窗口是讓你在本地第一次運行FTP伺服器,只要「下一步」就行了。
4、 接下來要你輸入你的IP地址,
如果你自己有伺服器,有固定的IP,那就請輸入IP地址,如果你只是在自己電腦上建立FTP,而且又是撥號用戶,有的只是動態IP,沒有固定IP,那這一步就省了,什麼也不要填,Serv-U 會自動確定你的IP地址,「下一步」;
5、 在這兒要你輸入你的域名,
如果你有的話,如:ftp.abc.com,沒有的話,就隨便填一個;
6、 「下一步」,詢問你是否允許匿名訪問,
一般說來,匿名訪問是以Anonymous為用戶名稱登錄的,無需密碼,當然如果你想成立一個會員區什麼的,就應該選擇「否」,不讓隨便什麼人都可以登錄,只有許可用戶才行,在此我們填「是」;
7、 「下一步」,問你匿名用戶登錄到你的電腦時的目錄,
你可以自己指定一個硬碟上已存在的目錄,如F:\temp\xyz;
8、 「下一步」,詢問你是否要鎖定該目錄,鎖定後,匿名登錄的用戶將只能認為你所指定的目錄(F:\temp\xyz)是根目錄,也就是說他只能訪問這個目錄下的文件和文件夾,這個目錄之外就不能訪問,對於匿名用戶一般填「是」;
9、 「下一步」,詢問你是否創建命名的帳號,也就是說可以指定用戶以特定的帳號訪問你的FTP,這對於辦會員區可很有用哦,你可以對於每個人都創建一個帳號,每個帳號的許可權不同,就可以不同程序地限制每個人的權利,方法將在後面講到,這里選擇「是」;
10、 「下一步」,請你填入所要建立的帳號的名稱,如:ldr,
11、 「下一步」,請輸入密碼,如:123,
12、 「下一步」,詢問登錄目錄是什麼,這一步與第7步一樣,如:F:\temp
13、 「下一步」,詢問你是否要鎖定該目錄,同第8步,這里選擇「否」;
14、 接下來詢問你這次創建的用戶的管理員許可權,
有幾項選擇:無許可權,組管理員,域管理員,只讀管理員和系統管理員,每項的許可權各不相同;這里選擇「系統管理員」;
15、 最後一步,點擊「完成」就OK了,你有什麼需要修改的,可以點「上一步」,或者進入Serv-U管理員直接修改。
至此,我們建立了一個域ftp://chenshiwen.meibu.com,兩個用戶,一個Anonymous,一個ldr。
三、 既然我們已經建立好FTP伺服器,那麼我們就應該可以用FTP客戶端軟體來嘗試登錄。
怎麼辦呢?其實很簡單,我們不用上網,就可以測試。我們知道,不上網時,本地機的IP地址默認就為127.0.0.1,FTP埠號為21。打開FTP客戶端軟體,我就用FlashFXP來說明,打開快速連接,填入相應內容,
然後連接,
可以看到,我左邊窗格以Anonymous登錄,右邊窗格以ldr登錄,由於是本地機,所以速度奇快,上網後,假如我要讓你登錄到我的電腦上,我只要把我的上網時的IP地址給你,你就可以匿名訪問我的電腦了(注意不要開防火牆),是不是很方便?
四、Serv-U管理員中的各項設置
在設置完成後,將會進入Serv-U管理員的主界面,
左邊窗格中顯示各個欄目,右邊窗格中顯示各個欄目的具體選項,下面就大概講一講設置內容。
1、 在圖11中,我們可以人為地控制Serv-U引擎的運行或停止,記住,在Win 9x/Me 中,我們就要在此選擇「系統服務」,才會運行Serv-U引擎。
2、 「許可」,如果你花美元買了注冊號,就可以在此輸入。
3、 「設置」,這個設置是對於「本地伺服器」來說的。「常規」設置中),
可以限制伺服器的最大速度,可以攔截FXP(站點到站點傳送),也可以限制用戶的數量,這樣不至於你的伺服器被拖跨。「目錄緩存」設置中,
允許你自己確定目錄列表的個數以及超時時間,在Windows 95 和 NT下,目錄列表默認設置為25,當緩存滿了之後,新的請求將替換老的請求。「高級」設置中,
可以讓你自己定義伺服器、Socket、文件的上傳和下載的各項設置。
4、 「活動」,在這里記錄了用戶的活動日誌,已封鎖的IP的活動日誌,以及任務日誌;任務日誌中顯示的就是你開始停止的各項操作記錄,你可以點擊右擊,選擇一此過濾文本,使其只顯示你所想見的內容。
5、 「域」,這里包含了你一開始根據向導所建立的用戶、設置、域等。「域--設置」中所設置的內容其實與第3步差不多,只是它更加具體,可以對於每一個不同域定製。「域--活動」中記載了這個域下所有用戶的活動情況。
6、 「域--組」,我們可以自己建立一些便於管理的組,然後把一類的用戶歸到一個組中。
7、 「域--用戶」中,大家可以看到一開始我們建立的兩個帳號,一個Anonymous,一個ldr。現在就帳號ldr來對其中的細節設置說明一下。
A、「帳號」欄:
對於一些不守規則的人,我們可以選擇「禁用帳號」,雖然有帳號,但可以使用戶一時間無法登錄;你也可以設置讓程序到達某個日期後自動刪除某個帳號;下面幾欄是這個帳號的基本信息,我們都可以在此更改,其中密碼改過後並不顯示,而是統一顯示<<Encrypted>>,特別要注意選項「鎖定用戶於主目錄」,什麼意思呢?大家應該碰到,每次我們登錄到FTP伺服器上後,在根目錄下只顯示「/」,選擇這項選項後,就是這樣,如果不選,會出現什麼情況呢?你可以做一下試驗,在根目錄下將顯示「/f:/temp/」,也就是說顯示了你硬碟中的絕對地址,這在某些情況下是很危險的,有不懷好意的高手,你就麻煩了!
B、「常規」欄:
你可以隱藏屬性為隱藏的文件,可以限制同一IP的登錄個數,是否允許用戶更改密碼(這需要客戶端軟體的支持),最大上傳下載的速度,超時時間以及空閑時間,你也可以限制最大用戶數量,如20,說明同時只能有20個用戶登錄。
C、「目錄訪問」欄
在此你可以控制用戶對於文件目錄的許可權,對文件有讀取、寫入、刪除、追加、執行等操作,對於文件夾有列表、創建、刪除,以及是否繼承子目錄;
如果覺得目錄不夠,你也可以添加可訪問的目錄。
D、「IP訪問」欄
在這里你可以規定某個IP是否可以訪問你的FTP伺服器,你可以拒絕它的訪問,只要填上相應的IP地址,以後由這個IP的訪問通通被攔下。
E、「上傳/下載率」欄
在這里你可以設置上傳和下載之間的比值,控制好上傳和下載之間的數據流量關系。
F、「配額」欄:
這里你可以為每個FTP用戶設置磁碟空間,點擊「計算當前」,可以知道當前目前下的所有空間大小,在「最大」一欄中填入你想要限制的容量。
最後有一點,改過設置後一定要點擊右鍵,選擇「應用」使設置生效才行,否則一切都白做了!!
到此,想必大家對於如何建立屬於自己的FTP有點眉目了吧?看著自己可以隨意限制並監視訪問者的上傳、下載,以及用戶的空間大小,是不是有點飄飄然的感覺?好象自己也是個無所不能的網管了 :-)
不管有沒有伺服器,你都應該下載試一下,體驗一下做網管的感覺。下面介紹另一款專業FTP架設軟體—CesarFTP(簡單、方便、實用)。
FTP站點的測試
1、在瀏覽器中登錄:格式為「ftp://chenshiwen.meibu.com」或「ftp://用戶名:密碼@chenshiwen.meibu.com」。如果匿名用戶被允許登錄,則第一種格式就會使用匿名登錄的方式;如果匿名不被允許,則會彈出選項窗口,供輸入用戶名和密碼。第二種格式可以直接指定用某個用戶名進行登錄。
2、當然你還可以在DOS下登錄或用FTP客戶端軟體登錄,在這里就不一一列舉了。
3、如果「主目錄」下有與用戶同名的「虛擬目錄」或「實際目錄」,則該用戶會直接登錄到其同名目錄中。
2. linux中ftp的配置管理
vsftpd是UNIX類操作系統上運行的伺服器名稱,它的名字代表「very secure FTP daemon」,安全性是其設計與開發的一個重要目標。它可運行在Linux、Solaris等系統中,支持很多其他的FTP 伺服器不支持的特徵:
非常高的安全性需求
帶寬限制
良好的可伸縮性
創建虛擬用戶的可能性
分配虛擬IP地址的可能性
一、vsftpd的啟動
#service vsftpd start
如果允許用戶匿名訪問,需創建用戶ftp和目錄/var/ftp
# mkdir /var/ftp
# useradd –d /var/ftp ftp
二、vsftpd的配置
Vsftpd的配置文件存放在/etc/vsftpd/vsftpd.conf 我們可根據實際數要對如下信息進行配置:
1. 連接選項
☆監聽地址和控制埠
(1) listen_address=ip address
定義主機在哪個IP 地址上監聽FTP請求。即在哪個IP地址上提供FTP服務。
(2) listen_port=port_value
指定FTP伺服器監聽的埠號。默認值為21。
2. 性能與負載控制
☆超時選項
(1) idle_session_timeout=
空閑用戶會話的超時時間,若是超過這段時間沒有數據的傳送或是指令的輸入,則會被迫斷線。默認值是300s
(2) accept_timeout=numerical value
接受建立聯機的超時設定。默認值為60s
☆負載選項
(1) max_clients= numerical value
定義FTP伺服器最大的兵法連接數。當超過此連接數時,伺服器拒絕客戶端連接。默認值為0,表示不限最大連接數。
(2) max_per_ip= numerical value
定義每個IP地址最大的並發連接數目。超過這個數目將會拒絕連接。此選項的設置將會影響到網際快車、迅雷之類的多線程下載軟體。默認值為0,表示不限制。
(3) anon_max_rate=value
設定匿名用戶的最大數據傳輸速度,以B/s為單位。默認無。
(4) local_max_rate=value
設定用戶的最大數據傳輸速度。以B/s為單位。默認無。此選項對所有的用戶都生效。
3. 用戶選項
vsftpd的用戶分為3類:匿名用戶、本地用戶(local user)及虛擬用戶(guest)
☆ 匿名用戶
(1) anonymous_enable=YES|NO
控制是否允許匿名用戶登錄
(2) ftp_username=
匿名用戶使用的系統用戶名。默認情況下,值為ftp
(3) no_anon_password= YES|NO
控制匿名用戶登錄時是否需要密碼。
(4) anon_root=
設定匿名用戶的根目錄,即匿名用戶登錄後,被定位到此目錄下。主配置文件中默認無此項,默認值為/var/ftp/
(5) anon_world_readable_only= YES|NO
控制是否只允許匿名用戶下載可閱讀的文檔。YES,只允許匿名用戶下載可閱讀的文件。NO,允許匿名用戶瀏覽整個伺服器的文件系統。
(6) anon_upload_enable= YES|NO
控制是否允許匿名用戶上傳文件。除了這個參數外,匿名用戶要能上傳文件,還需要兩個條件,write_enable參數為YES;在文件系統上,FTP匿名用戶對某個目錄有寫許可權。
(7) anon_mkdir_wirte_enable= YES|NO
控制是否允許匿名用戶創建新目錄。在文件系統上,FTP匿名用戶必須對新目錄的上層目錄擁有寫許可權。
(8) anon_other_write_enbale= YES|NO
控制匿名用戶是否擁有除了上傳和新建目錄之外的其他許可權。如刪除、更名等。
(9) chown_uploads= YES|NO
是否修改匿名用戶所上傳文件的所有權。YES,匿名用戶上傳得文件所有權改為另一個不同的用戶所有,用戶由chown_username參數指定。
(10) chown_username=whoever
指定擁有匿名用戶上傳文件所有權的用戶。
☆本地用戶
(1) local_enable= YES|NO
控制vsftpd所在的系統的用戶是否可以登錄vsftpd。
(2) local_root=
定義本地用戶的根目錄。當本地用戶登錄時,將被更換到此目錄下。
☆虛擬用戶
(1) guest_enable= YES|NO
啟動此功能將所有匿名登入者都視為guest
(2) guest_username=
定義vsftpd的guest用戶在系統中的用戶名。
4. 安全措施
☆用戶登錄控制
(1) /etc/vsftpd.ftpusers
Vsftpd禁止列在此文件中的用戶登錄FTP伺服器。此機制是默認設置的。
(2) userlist_enable= YES|NO
此選項激活後,vsftpd將讀取userlist_file參數所指定的文件中的用戶列表。
(3) userlist_file=/etc/vsftpd.user_list
指出userlist_enable選項生效後,被讀取的包含用戶列表的文件。默認值是/etc/vsftpd.user_list
(4) userlist_deny= YES|NO
決定禁止還是只允許由userlist_file指定文件中的用戶登錄FTP伺服器。userlist_enable選項啟動後才能生效。默認值為YES,禁止文中的用戶登錄,同時不向這些用戶發出輸入口令的指令。NO,只允許在文中的用戶登錄FTP伺服器。
☆目錄訪問控制
(1) chroot_list_enable= YES|NO
鎖定某些用戶在自己的目錄中,而不可以轉到系統的其他目錄。
(2) chroot_list_file=/etc/vsftpd/chroot_list
指定被鎖定在主目錄的用戶的列表文件。
(3) chroot_local_users= YES|NO
將本地用戶鎖定在主目中。
三、vsftpd伺服器的配置實例:
基於IP的虛擬FTP伺服器配置
假設伺服器有兩個IP地址,192.168.1.199和192.168.1.200。vsftpd是建立在192.168.1.199上的。現在在192.168.1.200上再提供一個虛擬FTP伺服器。
☆創建虛擬FTP伺服器根目錄
# mkdir –p /var/ftp2/pub
確保/var/ftp2和/var/ftp2/pub目錄的所有者和組均為root,掩碼為755
# chmod 755 /var/ftp2 # chmod 755 /var/ftp2/pub
# chown –R root /var/ftp2 # chown –R : root /var/ftp2
☆ 增加虛擬FTP伺服器的匿名用戶帳號ftp2
# useradd –d /var/ftp2 –M ftp2
☆ 創建虛擬FTP伺服器的配置文件
復制原來的vsftpd.conf作為虛擬FTP伺服器的配置文件,並修改相關參數
# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd2.conf
# vi /etc/vsftpd/vsftpd2.conf
添加或修改參數:
Listen=YES
Listen_address=192.168.1.200
ftp_username=ftp2
anon_root=/var/ftp2
並可參考vsftpd的配置部分的說明做其他配置,如:
•允許匿名用戶上傳文件
Write_enable=YES
Anon_world_readable_only=NO
Anon_upload_enable=YES
Anon_mkdir_write_enable=YES
創建匿名用戶上傳文件的目錄,並設置許可權:
# mkdir /var/ftp/incoming # chmod o+w /var/ftp/incoming
•取消寫許可權
Write_enable=NO
Anon_upload_enable=NO
Anon_mkdir_write_enable=NO
Anon_other_write_enable=NO
•限制下載速度為80KB/s
Anon_max_rate=8000
•控制並發數,以及每個IP地址的並發數
Max_clients=100
Max_per_ip=3
☆啟動虛擬FTP伺服器
# /usr/sbin/vsftpd /etc/vsftpd/vsftpd2.comf &
3. linux ftp 怎麼配置
下面是在虛擬機中的linux的ftp的基本配置(redhat AS 4.0為例):
首先要安裝linux下的vsftp軟體包。
rpm -qa|gerp vsftpd //查找vsftpd有沒有安裝
如果沒有安裝就 vsftpd-2.0.1-5.i386.rpm (在第一張光碟)
在linux中有一個非常重要的一點就是要掛載光碟機 mount /media/cdrom
在這里我們就不用源代碼安裝了。用的是rpm安裝
#rpm -ivh vsftpd-2.0.1-5.i386.rpm
這里就安裝好了。
service vsftpd start 啟動vsftpd服務
如果在不設置任何的情況下,可以以匿名的方式訪問該ftp。
注.如果訪問不了的時候請大家要把linux的防火牆也要關閉:
iptables -F 清除防火牆
在安裝好ftp會產生幾個文件:
/etc/vsftpd/vsftpd.conf 主配置文件
/etc/vsftpd.ftpusers 指定哪些用戶不能訪問FTP伺服器
/etc/vsftpd.user_list 文件中指定的用戶是否可以訪問ftp伺服器由vsftpd.conf文件中的userlist_deny的取值來決定。
這幾個文件就是整個ftp控制和禁止用戶的許可權配置。。。
下面我們就來設置一個vsftpd的核心文件
# cd /etc/vsftpd/vsftpd.conf 這就是vsftpd的核心配置文件
anonymous_enable=YES/no 是否允許匿名用戶登錄
anonymous_enable=yes/no 是否允許匿名上傳文件
local_enable= YES/no 是否允許本地用戶登錄
write_enable= YES/no 是否允許本地用戶上傳
guest_enable=yes/no 是否允許虛擬用戶登錄;
local_mask=022 設置本地用戶的文件生成掩碼為022,默認值為077
dirmessage_enable= YES 設置切換到目錄時顯示.message隱含文件的內容
xferlog_enable= YES 激活上傳和下載日誌
connect_from_port_20=YES 啟用FTP數據埠連接
pam_service_name=vsftpd 設置PAM認證服務的配置文件名稱, 該文件存放在/etc/pam.d目錄下
userlist_enable= YES 允許vsftpd.user_list文件中的用戶訪問伺服器
userlist_deny= YES 拒絕vsftpd.user_list文件中的用戶訪問伺服器
listen= YES/no 是否使用獨占啟動方式(這一項比較重要)
tcp_wrappers= YES/no 是否使用tcp_wrappers作為主機訪問控制方式
最主要的就是這些設置了。(這是一般都是默認的不是太懂的不要動)
還有呢!太長了,在追問一下,我給你說!
4. 如何配置ftp伺服器
1、從iis7站長工具包下載ftp服務端。點擊下載微型FTP服務端。
5. 紅帽linux在文本界面怎麼配置ftp
首先是你的伺服器安裝VSFTP,你可以直接登陸伺服器端通過adser命令設置ftp帳戶。具體命令:useradd abc -d /var/www;其中abc為ftp帳號,/var/www是指定的ftp上傳的文件路徑,你可以自己指定ftp的帳號密碼和上傳路徑。
通過passwd命令設置ftp的帳戶的密碼。具體命令:passwd abc
設置完畢就可以通過你設定的ftp帳號和密碼上傳文件了。
6. linux怎麼配置ftp伺服器
一. FTP 說明
linux 系統下常用的FTP 是vsftp, 即Very Security File Transfer Protocol. 還有一個是proftp(Profession ftp)。 我們這里也是簡單的說明下vsftp的配置。
vsftp提供3種遠程的登錄方式:
(1)匿名登錄方式
就是不需要用戶名,密碼。就能登錄到伺服器電腦裡面
(2)本地用戶方式
需要帳戶名和密碼才能登錄。而且,這個帳戶名和密碼,都是在你linux系統裡面,已經有的用戶。
(3)虛擬用戶方式
同樣需要用戶名和密碼才能登錄。但是和上面的區別就是,這個用戶名和密碼,在你linux系統中是沒有的(沒有該用戶帳號)
二. Vsftp的安裝配置
2.1 安裝
vsftp 的安裝包,可以在安裝里找到。 用yum 安裝過程也很簡單。
安裝命令:yum install vsftpd
2.2. 相關命令
2.2.1 啟動與關閉
[root@singledb ~]# service vsftpd start
Starting vsftpd for vsftpd: [ OK ]
[root@singledb ~]# service vsftpd stop
Shutting down vsftpd: [ OK ]
[root@singledb ~]# service vsftpd restart
Shutting down vsftpd: [FAILED]
Starting vsftpd for vsftpd: [ OK ]
[root@singledb ~]# /etc/init.d/vsftpd start
Starting vsftpd for vsftpd: [FAILED]
[root@singledb ~]# /etc/init.d/vsftpd stop
Shutting down vsftpd: [ OK ]
[root@singledb ~]# /etc/init.d/vsftpd restart
Shutting down vsftpd: [FAILED]
Starting vsftpd for vsftpd: [ OK ]
[root@singledb ~]# /etc/init.d/vsftpd status
vsftpd (pid 3931) is running...
[root@singledb ~]#
2.2.2. 其他命令
--查看vsftpd 啟動狀態
[root@singledb ~]# chkconfig --list vsftpd
vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@singledb ~]# chkconfig vsftpd on
[root@singledb ~]# chkconfig --list vsftpd
vsftpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
這里看到,默認情況下從2到5設置為on了。2到5是多用戶級別。 這個對應的是linux不同的運行級別。
我們也可以加level 選項來指定:
[root@singledb ~]# chkconfig --level 0 vsftpd on
[root@singledb ~]# chkconfig --list vsftpd
vsftpd 0:on 1:off 2:on 3:on 4:on 5:on 6:off
我們看到0已經設置為on了。
我們可以使用man chkconfig 來查看幫助:
--level levels
Specifies the run levels an operation should pertain to. It is given as a string of numbers from 0 to 7. For example, --level 35 specifies runlevels 3 and 5.
傳統的init 定義了7個運行級(run level),每一個級別都代表系統應該補充運行的某些特定服務:
(1)0級是完全關閉系統的級別
(2)1級或者S級代表單用戶模式
(3)2-5 級 是多用戶級別
(4)6級 是 重新引導的級別
(1)查看防火牆
我一般都是把系統的防火牆關閉了。 因為開了會有很多限制。
[root@singledb ~]# /etc/init.d/iptables status
Table: nat
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
1 MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53
2 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
3 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67
4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:67
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED
2 ACCEPT all -- 192.168.122.0/24 0.0.0.0/0
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
4 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
You have new mail in /var/spool/mail/root
--添加開放21號埠:
[root@singledb ~]# /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT
[root@singledb ~]# /etc/init.d/iptables status
Table: nat
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
1 MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21
2 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53
3 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
4 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67
5 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:67
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED
2 ACCEPT all -- 192.168.122.0/24 0.0.0.0/0
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
4 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
--保存配置
[root@singledb ~]# /etc/rc.d/init.d/iptables save
Saving firewall rules to /etc/sysconfig/iptables: [ OK ]
--重啟防火牆:
[root@singledb ~]# service iptables {start|stop|restart}
(2)查看關閉selinux
[root@singledb ~]# sestatus
SELinux status: disabled
我這里在安裝操作系統的時候就關閉了selinux,如果沒有關閉,可以修改如下文件來關閉:
[root@singledb ~]# cat /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
[root@singledb ~]#
保存退出並重啟系統reboot
三. FTP配置文件
FTP 安裝好之後,在/etc/vsftpd/目錄下會有如下文件:
[root@singledb ~]# cd /etc/vsftpd/
[root@singledb vsftpd]# ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
[root@singledb vsftpd]#
vsftpd.conf: 主配置文件
ftpusers: 指定哪些用戶不能訪問FTP伺服器
user_list: 指定的用戶是否可以訪問ftp伺服器由vsftpd.conf文件中的userlist_deny的取值來決定。
[root@singledb vsftpd]# cat user_list
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
我們過濾掉#的注釋後,查看一下vsftpd.conf 文件:
[root@singledb ftp]# cat /etc/vsftpd/vsftpd.conf |grep -v '^#';
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=yes
tcp_wrappers=YES
至於這些參數的意思,在注釋里有詳細的說明。
我們可以在vsftpd.conf 文件設置如下參數:
(1)ftpd_banner=welcome to ftp service :設置連接伺服器後的歡迎信息
(2)idle_session_timeout=60 :限制遠程的客戶機連接後,所建立的控制連接,在多長時間沒有做任何的操作就會中斷(秒)
(3)data_connection_timeout=120 :設置客戶機在進行數據傳輸時,設置空閑的數據中斷時間
(4)accept_timeout=60 設置在多長時間後自動建立連接
(5)connect_timeout=60 設置數據連接的最大激活時間,多長時間斷開,為別人所使用;
(6)max_clients=200 指明伺服器總的客戶並發連接數為200
(7)max_per_ip=3 指明每個客戶機的最大連接數為3
(8)local_max_rate=50000(50kbytes/sec) 本地用戶最大傳輸速率限制
(9)anon_max_rate=30000匿名用戶的最大傳輸速率限制
(10)pasv_min_port=埠
(11)pasv-max-prot=埠號 定義最大與最小埠,為0表示任意埠;為客戶端連接指明埠;
(12)listen_address=IP地址 設置ftp服務來監聽的地址,客戶端可以用哪個地址來連接;
(13)listen_port=埠號 設置FTP工作的埠號,默認的為21
(14)chroot_local_user=YES 設置所有的本地用戶可以chroot
(15)chroot_local_user=NO 設置指定用戶能夠chroot
(16)chroot_list_enable=YES
(17)chroot_list_file=/etc/vsftpd/chroot_list(只有/etc/vsftpd/chroot_list中的指定的用戶才能執行 )
(18)local_root=path 無論哪個用戶都能登錄的用戶,定義登錄帳號的主目錄, 若沒有指定,則每一個用戶則進入到個人用戶主目錄;
(19)chroot_local_user=yes/no 是否鎖定本地系統帳號用戶主目錄(所有);鎖定後,用戶只能訪問用戶的主目錄/home/user,不能利用cd命令向上轉;只能向下;
(20)chroot_list_enable=yes/no 鎖定指定文件中用戶的主目錄(部分),文件:/chroot_list_file=path 中指定;
(21)userlist_enable=YES/NO 是否載入用戶列表文件;
(22)userlist_deny=YES 表示上面所載入的用戶是否允許拒絕登錄;
(23)userlist_file=/etc/vsftpd/user_list 列表文件
限制IP 訪問FTP:
#vi /etc/hosts.allow
vsftpd:192.168.5.128:DENY 設置該IP地址不可以訪問ftp服務
FTP 訪問時間限制:
#cp /usr/share/doc/vsftpd-1.1.3/vsftpd.xinetd /etc/xinetd.d/vsftpd
#vi /etc/xinetd.d/vsftpd/
修改 disable = no
access_time = hour:min-hour:min (添加配置訪問的時間限制(註:與vsftpd.conf中listen=NO相對應)
例: access_time = 8:30-11:30 17:30-21:30 表示只有這兩個時間段可以訪問ftp
ftp的配置基本上只有這些了。
默認情況下,ftp根目錄是/var/ftp。 如果要修改這個目錄位置,可以更改/etc/passwd 文件:
[root@singledb ftp]# cat /etc/passwd | grep ftp
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
創建一個用戶來訪問FTP,並指定該用戶的FTP 目錄:
[root@singledb u02]# useradd -d /u02/qsftp qs
[root@singledb u02]# passwd qs
Changing password for user qs.
New UNIX password:
BAD PASSWORD: it is WAY too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
這里指定的是/u02/qsftp 這個目錄,要注意個目錄的許可權。
更改用戶不能telnet,只能ftp:
usermod -s /sbin/nologin username //用戶只能ftp,不能telnet
usermod -s /sbin/bash username //用戶恢復正常
禁止用戶ssh登陸
useradd username -s /bin/false
更改用戶主目錄:
usermod -d /bbb username //把用戶的主目錄定為/bbb
然後用qs這個用戶就可以訪問了。
以上只是一些簡單的設置。 在用戶許可權這塊還有很多內容可以研究。 比如特定用戶的特定許可權。 安全性等。 以後在研究了。
7. linux伺服器中某個文件ftp怎麼設置
配置ftp有三種模式,但是這里字數有限,下面這個是匿名的。詳細的你可以看下最後那個連接
vsftpd服務程序中匿名開放是一種最不安全的驗證模式,任何人都可以無需密碼驗證就登陸到FTP服務端主機,這種模式一般只用來保存不重要的公開文件,尤其是在生產環境中更要注意不放敏感文件,當然也非常推薦用咱們第八章中學習的防火牆管理工具(例如Tcp_wrappers)將vsftpd服務程序的允許訪問主機范圍設置為企業內網,這樣還算能夠保證基本的安全性。
vsftpd服務程序默認已經開啟了匿名訪問模式,咱們需要做的就是進一步允許匿名用戶的上傳、下載文件的許可權,以及讓匿名用戶能夠創建、刪除、更名文件的許可權,這些許可權對於匿名用戶來講非常的危險,咱們只是為了練習Linux系統中vsftpd服務程序的配置能力,十分不推薦在生產環境中使用,匿名用戶的許可權參數及介紹:
參數
作用
anonymous_enable=YES
允許匿名訪問模式。
anon_umask=022
匿名用戶上傳文件的umask值。
anon_upload_enable=YES
允許匿名用戶上傳文件
anon_mkdir_write_enable=YES
允許匿名用戶創建目錄
anon_other_write_enable=YES
允許匿名用戶修改目錄名或刪除目錄
[root@linuxprobe ~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
確認參數填寫正確後保存並退出vsftpd服務程序的主配置文件,還需要重啟vsftpd服務程序來讓新的配置服務參數生效,並且同學們在生產環境中或者紅帽RHCSA、RHCE、RHCA認證考試中也請記得一定要把配置過的服務程序加入到開機啟動項中,以保證下次伺服器重啟後依然能夠為用戶正常提供ftp文件傳輸服務:
[root@linuxprobe ~]# systemctl restart vsftpd
[root@linuxprobe ~]# systemctl enable vsftpd
ln -s '/usr/lib/systemd/system/vsftpd.service' '/etc/systemd/system/multi-user.target.wants/vsftpd.service
這樣咱們就可以在客戶端上面使用ftp命令連接到遠程的FTP伺服器上面了,FTP服務的匿名開放模式的帳號統一為anonymous,密碼為空。匿名模式登陸到FTP伺服器後默認所在位置為/var/ftp目錄,咱們可以切換至裡面的pub目錄中,然後嘗試創建一個新的目錄文件來檢驗是否已經有了寫入許可權:
[root@linuxprobe ~]# ftp 192.168.10.10
Connected to 192.168.10.10 (192.168.10.10).
220 (vsFTPd 3.0.2)
Name (192.168.10.10:root): anonymous
331 Please specify the password.
Password:此處敲擊回車即可
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd pub
250 Directory successfully changed.
ftp> mkdir files
550 Permission denied.
剛剛咱們已經把iptables防火牆策略清空,而且也在vsftpd服務程序的主配置文件中添加了允許匿名用戶創建目錄和寫入文件的許可權,那麼為什麼還會被拒絕呢?建議同學們先不要往下面看,思考後用自己的方法嘗試解決下這個問題,長期這樣您的Linux系統排錯能力就一定會練出來的。
回想起前面操作的細節,咱們FTP服務的匿名開放模式是默認登陸到了/var/ftp目錄中,查看下這個目錄的許可權後才發現原來只有root管理員用戶才有寫入許可權的,怪不得會提示寫入出錯呢,咱們只需要把目錄的所有者身份改成系統帳戶ftp即可,這樣就應該可以了吧~
[root@linuxprobe ~]# ls -ld /var/ftp/pub
drwxr-xr-x. 3 root root 16 Jul 13 14:38 /var/ftp/pub
[root@linuxprobe ~]# chown -Rf ftp /var/ftp/pub
[root@linuxprobe ~]# ls -ld /var/ftp/pub
drwxr-xr-x. 3 ftp root 16 Jul 13 14:38 /var/ftp/pub
[root@linuxprobe ~]# ftp 192.168.10.10
Connected to 192.168.10.10 (192.168.10.10).
220 (vsFTPd 3.0.2)
Name (192.168.10.10:root): anonymous
331 Please specify the password.
Password:此處敲擊回車即可
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd pub
250 Directory successfully changed.
ftp> mkdir files
550 Create directory operation failed.
又報錯了!!此時再次使用ftp命令登入到FTP伺服器主機後依然會提示寫入操作失敗,但細心的同學一定發現報錯信息已經產生了變化,在剛剛沒有寫入許可權的時候提示說許可權拒絕(Permission denied.)所以咱們懷疑是許可權的問題,但現在是提示創建目錄的操作失敗(Create directory operation failed.)那麼咱們同學應該也能馬上意識到是SELinux服務在限制這個操作了吧,查看下所有與ftp相關的SELinux域策略有那些吧:
[root@linuxprobe ~]# getsebool -a | grep ftp
ftp_home_dir --> off
ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
ftpd_connect_db --> off
ftpd_full_access --> off
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
sftpd_anon_write --> off
sftpd_enable_homedirs --> off
sftpd_full_access --> off
sftpd_write_ssh_home --> off
tftp_anon_write --> off
tftp_home_dir --> off
根據策略的名稱和經驗可以猜測出是哪一條規則策略,咱們在設置的時候請記得使用-P參數來讓配置過的策略永久生效,保證在伺服器重啟後依然能夠順利寫入文件,咱們可以分別嘗試下創建目錄文件、對文件進行改名以及刪除目錄文件等等操作。最後,恭喜同學們完成了這個實驗課程,建議您在進行一次實驗課程前還原虛擬機到最初始的狀態,以免多個配置參數之間產生沖突。
[root@linuxprobe ~]# setsebool -P ftpd_full_access=on
[root@linuxprobe ~]# ftp 192.168.10.10
Connected to 192.168.10.10 (192.168.10.10).
220 (vsFTPd 3.0.2)
Name (192.168.10.10:root): anonymous
331 Please specify the password.
Password:此處敲擊回車即可
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd pub
250 Directory successfully changed.
ftp> mkdir files
257 "/pub/files" created
ftp> rename files database
350 Ready for RNTO.
250 Rename successful.
ftp> rmdir database
250 Remove directory operation successful.
ftp> exit
221 Goodbye.
樓主可以看下http://www.linuxprobe.com/chapter-11.html#112_Vsftpd查看下詳情,有圖會比較方便理解
8. linux ftp 怎麼配置
下面是在虛擬機中的linux的ftp的基本配置(redhat AS 4.0為例): 首先要安裝linux下的vsftp軟體包。 rpm -qa|gerp vsftpd //查找vsftpd有沒有安裝 如果沒有安裝就 vsftpd-2.0.1-5.i386.rpm (在第一張光碟) 在linux中有一個非常重要的一點就是要掛載光碟機 mount /media/cdrom 在這里我們就不用源代碼安裝了。用的是rpm安裝 #rpm -ivh vsftpd-2.0.1-5.i386.rpm 這里就安裝好了。 service vsftpd start 啟動vsftpd服務 如果在不設置任何的情況下,可以以匿名的方式訪問該ftp。 注.如果訪問不了的時候請大家要把linux的防火牆也要關閉: iptables -F 清除防火牆 在安裝好ftp會產生幾個文件: /etc/vsftpd/vsftpd.conf 主配置文件 /etc/vsftpd.ftpusers 指定哪些用戶不能訪問FTP伺服器 /etc/vsftpd.user_list 文件中指定的用戶是否可以訪問ftp伺服器由vsftpd.conf文件中的userlist_deny的取值來決定。 這幾個文件就是整個ftp控制和禁止用戶的許可權配置。。。 下面我們就來設置一個vsftpd的核心文件 # cd /etc/vsftpd/vsftpd.conf 這就是vsftpd的核心配置文件 anonymous_enable=YES/no 是否允許匿名用戶登錄 anonymous_enable=yes/no 是否允許匿名上傳文件 local_enable= YES/no 是否允許本地用戶登錄 write_enable= YES/no 是否允許本地用戶上傳 guest_enable=yes/no 是否允許虛擬用戶登錄; local_mask=022 設置本地用戶的文件生成掩碼為022,默認值為077 dirmessage_enable= YES 設置切換到目錄時顯示.message隱含文件的內容 xferlog_enable= YES 激活上傳和下載日誌 connect_from_port_20=YES 啟用FTP數據埠連接 pam_service_name=vsftpd 設置PAM認證服務的配置文件名稱, 該文件存放在/etc/pam.d目錄下 userlist_enable= YES 允許vsftpd.user_list文件中的用戶訪問伺服器 userlist_deny= YES 拒絕vsftpd.user_list文件中的用戶訪問伺服器 listen= YES/no 是否使用獨占啟動方式(這一項比較重要) tcp_wrappers= YES/no 是否使用tcp_wrappers作為主機訪問控制方式 最主要的就是這些設置了。(這是一般都是默認的不是太懂的不要動) 。《Linux就該這么學》里有相關介紹,建議看看。
9. 關於紅帽LINUX的web和ftp服務配置,請對應的說出命令
這是實操題啊!
期末考試你就這樣?
命令可以告訴你,但不告訴你參數,你自己琢磨去吧,學點東西沒壞處。
但每個伺服器配置的指令不一樣,你需要查閱你的教材對應的指令,下面是針對ubuntu或者類似系統的。不一定符合你老師出的題目。
mkdir 創建目錄
chown,修改屬主
chgrp,修改屬組
chmod,修改許可權
可以安裝vsftpd,apt-get install 安裝即可。
5、6、7均需要修改對應的ftp配置文件。比如vsftp為/etc/vsftpd.conf
10. 在紅帽子linux9.0下怎麼搭建FTP伺服器
首先找到主配置文件:/etc/vsftp/vsftp.conf
vsftpd伺服器的配置文件為/etc/vsftpd.conf,其配置選項比較多,在此我只選擇幾個常用的配置選項介紹。
1.禁止匿名用戶訪問。
anonymous_enable=YES
2.允許本地用戶登錄並允許其上傳文件。
local_enable=YES
write_enable=YES
接下來只要啟動VSFTP伺服器就可以了。運行命令如下:
service vsdtpd start
這樣我們就可以通過客戶機訪問FTP伺服器了。。。
如果userlist_deny=YES,/etc/vsftpd.user_list中列出的用戶名就不允許登錄ftp伺服器
我們只要在/etc目錄下創建vsftpd.user_list文件
以下創建一個用戶ftpuser,不允許從本地登錄,只能從FTP server 上登陸的。。並創建該用戶的密碼。
[root@localhost root]# useradd –g ftp –s /sbin/nologin ftpuser
[root@localhost root]# passwd ftpuser
Changing password for user ftpuser.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.