歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> SUSE下配置ftp服務器

SUSE下配置ftp服務器

日期:2017/2/28 16:57:42   编辑:Linux教程

這兩天在SUSE上安裝和配置FTP時,遇到不少問題,這裡做一下總結:

一、安裝

SUSE的圖形用戶界面做的很不錯,所以安裝過程也比較簡單。

1、打開Yast,Software→Software Management;

2、剛開始使用Suse的軟件管理器非常的不習慣,找不到所需的信息在什麼地方,可是用了一段時間之後,就感覺它的分類方式更加方便,也為用戶提供了更多的信息。在Filter→Package Groups,在下面的樹形列表中Productivity→Networking→Ftp,也可以展開Ftp節點,選擇其中的Servers節點;

3、在左側的軟件包列表中選擇vsftpd,然後點擊下方的Accept按鈕,會提示插入光盤;

4、插入所需的光盤後,系統會自動開始安裝,安裝完畢,可以在下面的File List選項頁中查看vsftpd相關的所有文件。

二、啟動服務

安裝完成後,vsftpd是作為一個獨立的服務啟動,不接受xinetd的管理。系統會自動在Service列表中添加名稱vsftpd的服務。啟動服務的步驟如下:

1、Yast→System→System Services(Run level);

2、在服務列表中選擇vsftpd,點擊下方的Enable按鈕,啟動服務,Finish。

注意,在啟動vsftpd時可能會不能啟動,有時是因為它所依賴的服務沒有啟動,如syslog,這時選中syslog,點擊Enable按鈕。如果還是不能啟動,可以重新啟動xinetd服務,然後再啟動vsftpd服務。

三、遇到的問題

1、只允許匿名用戶登錄

現象:ftp連接過程中,提示輸入用戶名,輸入本機已有用戶名angel,得到提示:530 This FTP server is anonymous only,登錄失敗。

原因:安裝vsftpd後,其默認為匿名FTP服務器,只允許匿名用戶登錄。

解決方法:vsftpd有三種服務器方式:匿名方式、本地方式和虛擬用戶方式,此處需要修改vsftpd的配置將其設為本地方式。vsftpd的配置文件位於/etc/目錄下,名稱為vsftpd.conf。關於該配置文件在網上已經有很多高手做了詳細的分析和講解,並且該文件內部的注釋也比較詳細,這裡就不再一一講解了。下面只說明幾處需要修改的地方:

將local_enable=YES前的#去掉,使其可用,表示允許本地用戶登錄;增加listen_port=21配置項,設置監聽端口為21;該步驟可選,不允許匿名用戶登錄,將anonymous_enable=YES的值改為NO,根據實際需要設置。

重啟vsftpd服務:service vsftpd restart。啟動後,在進行測試,使用本地用戶angel及其密碼登錄,成功。注意:以上測試是在本機(或使用SSH登錄後)進行。

2、其他機器不能連接該服務器

現象:本機測試通過後,在其他機器(Windows或RedHat)上使用ftp 192.168.1.8連接該服務器,得到Connection closed by remote host或Connection timed out提示信息,連接失敗。

原因:Suse的防火牆阻止了外來機器對FTP所用的端口的訪問。

解決方法:放開防火牆對FTP所使用的20和21端口的限制,步驟如下:

i> Yast→Security and Users→Firewall;ii> 在左側的列表中選擇Allowed Services,令人感到以外的是,即使安裝FTP服務器,在Servces to Allow列表中也沒有FTP服務可供選擇,但是SSH、HTTP、HTTPS、Samba等都赫然在列,所以要使用高級設置。點擊右下方法的Advanced按鈕,打開高級設置對話框;iii> 在TCP Ports中輸入20 21,注意兩個端口號之間使用空格分開,OK;iv> Next→Accept,重新測試,連接成功,使用Suse系統中已有的angel及其密碼登錄,成功。

注意,雖然這裡有些問題是在Suse下遇到,但是在其他操作系統中的vsftpd的配置中依然適用。

OpenSUSE 自帶了下列 FTP 服務器端程序,自行選擇一個:

* pure-ftpd

* vsftpd

* ftpd (包含在 krb5-apps-servers 軟件包中)

vsftpd

特性

* 可以與 xinetd 結合使用

* 安全第一的設計原則

* 小,輕量級軟件

安裝

* 從 YAST/軟件管理 搜索安裝 vsftpd。(安裝盤上有)

設置

vsftpd 有兩種模式,獨立模式和 xinetd 模式。

獨立模式需要你在開機後手動以 root 執行 vsftpd 命令啟動 FTP 服務器,xinetd 模式則不一直運行FTP後台,只有有用戶向你的 FTP 服務器發出 ftp 請求時立即啟動 FTP 服務器後台程序。後者需要機器啟動時打開 xinetd 服務,在 SUSE/SLED 系列是默認的設置。先確定你要選擇哪種模式,然後進行之後的設置。

xinetd 模式

* 在 xinetd 中打開,可以手動編輯 /etc/xinetd.d/vsftpd 文件把 disabled yes 改成 disabled no,或者使用命令來實現

chkconfig vsftpd on* 啟動 xinetd (如果未運行)。

/etc/init.d/xinetd start* 確定 xinetd 在機器啟動時運行

chkconfig xinetd on* root權限編輯文件 /etc/vsftpd.conf,確定 listenYES 前面加了 #。如果沒有,加上保存。

獨立模式

* root權限編輯文件 /etc/vsftpd.conf,確定 listenYES 前面沒有 #。如果有,去掉保存。

檢查運行狀況和防火牆設置

* 檢查 FTP 服務器是否在正常運行,默認配置文件是允許匿名用戶只讀的,/srv/ftp/ 作為對外 FTP 的主目錄。

* 如果必要,調整防火牆設置。如果是用默認的SuSEFirewall2,在 YaST-系統-/etc/sysconfig 編輯器,network-SuSEfirewall2 把 ftp 添加到 FW_SERVICES_EXT_TCP,比如你還要打開 ssh 那麼

FW_SERVICES_EXT_TCP"ftp ssh"* 如果你需要被動模式 FTP 和 nat,在 YaST-系統-/etc/sysconfig 編輯器,network-SuSEfirewall2

FW_LOAD_MODULES"ip_conntrack_ftp ip_nat_ftp"

重啟之後,vsftpd 將會按照你選擇的模式運行。

簡明配置

配置要修改文件 /etc/vsftpd.conf.

* 啟用向服務器的寫權限,去掉下面一行前面的#

write_enableYES* 允許本地用戶登錄,去掉下面一行前面的#

local_enableYES* 默認,一個用戶不能訪問自己主目錄之外的目錄,要禁用去掉下面一行前面的#

chroot_local_userNO* 禁用匿名用戶登錄

anonymous_enableNO

配置文件

* /etc/logrotate.d/vsftpd

* /etc/pam.d/vsftpd

* /etc/vsftpd.conf

* /etc/vsftpd.chroot_list

: 此文件包含對服務器上所有FTP內容有權限的用戶名。對其他用戶來說,他們在服務器上的主目錄對他們顯示為根目錄。

* /etc/shells

: 在允許本地用戶登錄之前,系統默認檢查是否有有效的用戶 shell。以防 PAM 認證不可用的情況。

* /etc/ftpusers

: 此文件包含*禁止*FTP登錄的用戶名,通常有 "root", "uucp", "news" 之類,因為這些用戶權限太高,登錄 FTP 誤操作危險性大。

1. 以root身份登錄系統

2. 到java.sun.com去下載JDK1.5.0 for LINUX的rpm. 應該是個jdk-1_5_x-rc-linux-i586-rpm.bin的文件

3.通過chmod +x jdk-1_5_x-rc-linux-i586-rpm.bin命令使其獲得可執行權限

4.通過 rpm –ivh jdk-1_5_x-rc-linux-i586-rpm.bin來進行安裝

5.安裝完畢,JDK安裝在/usr/java/目錄下

6.設置環境變量(寫入/etc/profile中)

export JAVA_HOME = /usr/java/jdk1.5

export PATH = $PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin

export CLASSPATH=.:/usr/java/jdk1.5/lib:/usr/java/jdk1.5/jre/lib:$CLASSPATH

okay了鍵入 java -version 如果出現相關JDK版本信息,證明成功.

為了開發方便,俺又下了個ECLIPSE做IDE,這樣以後在LINUX也可以做JAVA開發了,真好

ECLIPSE的安裝就簡單多了,下來(一個zip壓縮包)後直接unzip到你想要的目錄即可,我將其解壓到/opt下了。

Copyright © Linux教程網 All Rights Reserved