當前位置:首頁 » 操作系統 » linuxftpd

linuxftpd

發布時間: 2024-06-10 06:21:25

1. linux下如何開啟ftp伺服器

1. 首先伺服器要安裝ftp軟體,查看是否已經安裝ftp軟體下:
#which vsftpd
如果看到有vsftpd的目錄說明伺服器已經安裝了ftp軟體

2. 查看ftp 伺服器狀態
#service vsftpd status

3. 啟動ftp伺服器
#service vsftpd start

4. 重啟ftp伺服器
#service vsftpd restart

5. 查看服務有沒有啟動
#netstat -an | grep 21
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
如果看到以上信息,證明ftp服務已經開啟。

6.如果需要開啟root用戶的ftp許可權要修改以下兩個文件
#vi /etc/vsftpd.ftpusers中注釋掉root
#vi /etc/vsftpd.user_list中也注釋掉root
然後重新啟動ftp服務。

7. vsftpd 500 OOPS: cannot change directory
登陸報錯:
C:\>ftp 192.168.0.101
Connected to 192.168.0.101.
220 (vsFTPd 2.0.5)
User (192.168.0.101:(none)): frank
331 Please specify the password.
Password:
500 OOPS: cannot change directory:/home/frank
Login failed.
ftp> ls
500 OOPS: child died
Connection closed by remote host.
解決方法:
setsebool ftpd_disable_trans 1
service vsftpd restart
就OK了!

這是SELinux的設和培置命令,在不熟悉SELnux前,把SELinux關掉悄棚寬也可以的。

8. 永久開啟,即os重啟後自動開啟ftp服務
方法一:
cd /etc/xinetd.d ,編輯ftp服務的配置文件gssftp的設啟亮置:
vi /etc/xinetd.d/gssftp ,將 修改兩項內容:

(a) server_args = -l –a 去掉-a 改為server_args = -l
(b) disable=yes改為disable=no
(c) 保存退出。

方法二:
(a) system-config-services , 進入圖形界面的System services查看是否有 vsftpd項,如果沒有轉到2.,保存後退出

(b) 用redhat第三張盤 安裝此服務(開始--刪除/增加程序),200K左右

(c) #setup
此時能看到vsftpd項,此時選中此services項,保存後退出.

2. linux中怎麼安裝vsftpd

vsftpd是Linux下比較著名的FTP伺服器,搭建FTP伺服器當然首選這個。
本文介紹了在CentOS 6.4下安裝vsftpd、配置虛擬用戶登錄FTP的過程。
正文:
一:安裝vsftpd
查看是否已經安裝vsftpd
rpm -qa | grep vsftpd

如果沒有,就安裝,並設置開機啟動
yum -y install vsftpd
chkconfig vsftpd on

二:基於虛擬用戶的配置
所謂虛擬用戶就是沒有使用真實的帳戶,只是通過映射到真實帳戶和設置許可權的目的。虛擬用戶不能登錄CentOS系統。
修改配置文件
打開/etc/vsftpd/vsftpd.conf,做如下配置
anonymous_enable=NO //設定不允許匿名訪問
local_enable=YES //設定本地用戶可以訪問。註:如使用虛擬宿主用戶,在該項目設定為NO的情況下所有虛擬用戶將無法訪問
chroot_list_enable=YES //使用戶不能離開主目錄
ascii_upload_enable=YES
ascii_download_enable=YES //設定支持ASCII模式的上傳和下載功能
pam_service_name=vsftpd //PAM認證文件名。PAM將根據/etc/pam.d/vsftpd進行認證

以下這些是關於vsftpd虛擬用戶支持的重要配置項,默認vsftpd.conf中不包含這些設定項目,需要自己手動添加
guest_enable=YES //設定啟用虛擬用戶功能
guest_username=ftp //指定虛擬用戶的宿主用戶,CentOS中已經有內置的ftp用戶了
user_config_dir=/etc/vsftpd/vuser_conf //設定虛擬用戶個人vsftp的CentOS FTP服務文件存放路徑。存放虛擬用戶個性的CentOS FTP服務文件(配置文件名=虛擬用戶名

進行認證
首先,安裝Berkeley DB工具,很多人找不到db_load的問題就是沒有安裝這個包。
yum install db4 db4-utils

然後,創建用戶密碼文本/etc/vsftpd/vuser_passwd.txt ,注意奇行是用戶名,偶行是密碼
test
123456

接著,生成虛擬用戶認證的db文件
db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db

隨後,編輯認證文件/etc/pam.d/vsftpd,全部注釋掉原來語句,再增加以下兩句:
auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd
account required pam_userdb.so db=/etc/vsftpd/vuser_passwd

最後,創建虛擬用戶配置文件
mkdir /etc/vsftpd/vuser_conf/
vi /etc/vsftpd/vuser_conf/test //文件名等於vuser_passwd.txt裡面的賬戶名,否則下面設置無效

內容如下
local_root=/ftp/www //虛擬用戶根目錄,根據實際情況修改
write_enable=YES //可寫
anon_umask=022 //掩碼
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

設置Selinux
setsebool -P ftp_home_dir=1 //設置ftp可以使用home目錄
sersebool -P allow_ftpd_full_access=1 //設置ftp用戶可以有所有許可權

設置FTP根目錄許可權
mkdir /ftp/www //創建目錄
chmod R 755 /ftp
chmod R 777 /ftp/www

最新的vsftpd要求對主目錄不能有寫的許可權所以ftp為755,主目錄下面的子目錄再設置777許可權
設置防火牆
打開/etc/sysconfig/iptables
在「-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT」,下添加:
-A INPUT -m state --state NEW -m tcp -p -dport 21 -j ACCEPT

然後保存,並關閉該文件,在終端內運行下面的命令,刷新防火牆配置:
service iptables restart

OK,運行「service vsftpd start」,你就可以訪問你的FTP伺服器了。

熱點內容
如保編程 發布:2024-11-26 19:29:58 瀏覽:812
我的世界手機版寶可夢生存多人伺服器 發布:2024-11-26 19:29:52 瀏覽:730
卡盟伺服器的象徵什麼意思 發布:2024-11-26 19:28:15 瀏覽:390
游戲平板安卓2000以下哪個好 發布:2024-11-26 19:21:12 瀏覽:547
php重命名文件夾 發布:2024-11-26 19:06:01 瀏覽:19
阿里雲ecs伺服器無法連接公網ip 發布:2024-11-26 19:01:32 瀏覽:43
java寫helloworld 發布:2024-11-26 19:00:56 瀏覽:90
c語言遞歸排列 發布:2024-11-26 18:50:55 瀏覽:449
密碼鎖為什麼不建議用南孚 發布:2024-11-26 18:45:00 瀏覽:154
榮耀20s安卓版本在哪裡看 發布:2024-11-26 18:26:03 瀏覽:686