日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux下java写ftp服务器端,在Linux下部署网站(java环境部署)第五章 FTP服务器搭建...

發布時間:2025/4/17 linux 194 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux下java写ftp服务器端,在Linux下部署网站(java环境部署)第五章 FTP服务器搭建... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第五章 FTP服務器搭建

1.看看是否已經安裝FTP服務器

service vsftpd start

ftp localhost

如果不認識ftp命令是因為沒有安裝ftp的client包,需要拿安裝光盤去裝一下。首先將安裝盤(或者iso鏡像)裝入,進入安裝盤的Package目錄下。然后找到以ftp開頭的包,使用命令安裝即可。(注意:命令不要生搬硬套,你的ftpclient包版本可能和我不同,有可能輸入和我相同的名稱找不到)

如果不認識ftp命令是因為沒有安裝ftp的client包,需要拿安裝光盤去裝一下。首先將安裝盤(或者iso鏡像)裝入,進入安裝盤的Package目錄下。然后找到以ftp開頭的包,使用命令安裝即可。(注意:命令不要生搬硬套,你的ftpclient包版本可能和我不同,有可能輸入和我相同的名稱找不到)

ls -l ftp*

rpm -ivh ftp-0.17-54.el6.x86_64.rpm

這時再敲ftp命令就沒問題了!

如果想停止這個服務,輸入以下命令:

service vsftpd stop

2.從windows登錄FTP服務器

想要從Windows上登錄,就要先獲取到這臺Linux服務器的ip,使用以下命令:

ifconfig

ping 自己的ip

結果顯示能夠ping通。如果在確認網絡確實連接正確,ping的ip地址也正確,但是ftp就是上不去或者壓根ping不通,這有可能是由于Linux的防火墻造成的。

解決方法有兩種,一種是關閉Linux防火墻,輸入以下命令查看防火墻狀態:

service iptables status

setup

使用方向鍵切換到防火墻設置,按回車進入:

現在我們按下空格鍵,這樣就能禁用防火墻,然后按下 tab鍵,這樣OK按鈕就會被選中,然后按下回車鍵,使我們的修改生效:

提示警告的界面中,我們依舊選中是按鈕,回車:

現在運行這個命令,查看一下防火墻的狀態:

service iptables status

第二種方法是打開ftp使用的端口。ftp連接端口有2個 21 和 20 端口,我現在添加對應的規則。

iptables -A INPUT -p tcp --dport 21 -j ACCEPT

iptables -A INPUT -p tcp --dport 20 -j ACCEPT

iptables -A OUTPUT -p tcp --sport 21 -j ACCEPT

iptables -A OUTPUT -p tcp --sport 20 -j ACCEPT

好,這樣就添加完了,我們用瀏覽器訪問一下ftp,出現超時。所以我剛才說 ftp 是比較特殊的端口,它還有一些端口是 數據傳輸端口,例如目錄列表, 上傳 ,下載 文件都要用到這些端口。而這些端口是 任意 端口。。。 這個 任意 真的比較特殊。

如果不指定一個端口范圍, iptables 很難對任意端口開放的,如果iptables允許任意端口訪問,那和不設置防火墻沒什么區別,所以不現實的。那么我們的解決辦法就是 指定這個數據傳輸端口的一個范圍。下面我們修改一下ftp配置文件。

vi /etc/vsftpd.conf

在配置文件的最下面 加入

pasv_min_port=30001

pasv_max_port=31000

然后保存退出。這兩句話的意思告訴vsftpd, 要傳輸數據的端口范圍就在30001到31000 這個范圍內傳送。這樣我們使用 iptables 就好辦多了,我們就打開 30001到31000 這些端口。

iptables -A INPUT -p tcp --dport 30001:31000 -j ACCEPT

iptables -A OUTPUT -p tcp --sport 30001:31000 -j ACCEPT

service iptables save

最后進行保存, 然后我們再用瀏覽器范圍下 ftp。可以正常訪問

不過建議在操作前先關閉防火墻。使用一下命令也可:

service iptables stop

這樣的結果就算連上了:

這說明ftp默認是允許匿名登陸的,用以下命令打開配置文件可以看到:

cd /etc/vsftpd

vi vsftpd.conf

這時在windows的控制臺登錄,用戶名為anonymous,密碼為空。

匿名登錄成功。使用ls看看有哪些目錄:

我們看到的pub就是一個目錄。如果是默認安裝vsftpd的話,以下是一些文件的位置約定:

/usr/sbin/vsftpd ????????---- VSFTPD的主程序

/etc/rc.d/init.d/vsftpd ---- 啟動腳本

/etc/vsftpd/vsftpd.conf ---- 主配置文件

/etc/pam.d/vsftpd ???????---- PAM認證文件

/etc/vsftpd.ftpusers ????---- 禁止使用VSFTPD的用戶列表文件

/etc/vsftpd.user_list ???---- 禁止或允許使用VSFTPD的用戶列表文件

/var/ftp ??????????????????---- 匿名用戶主目錄

/var/ftp/pub ?????????????---- 匿名用戶的下載目錄

這么說來,我們看到的pub就是/var/ftp/pub這個目錄。

如果要更改默認下載目錄,修改/etc/vsftpd/vsftpd.conf,加入如下三行:

local_root=/

chroot_local_user=YES

anon_root=/

local_root表示使用本地用戶登錄到ftp時的默認目錄

anon_root表示匿名用戶登錄到ftp時的默認目錄

修改vsftpd.conf配置文件:

chroot_local_user = YES

chroot_list_file=/etc/vsftpd.chroot_list

退出,然后編輯/etc/vsftpd.chroot_list,在這里面輸入用戶名字,一行寫一個用戶名。最后你再重新啟動一下vsftpd服務。就可以了

3.允許root用戶上傳

輸入以下命令,編輯文件,解除對root上傳的限制:

cd /etc/vsftpd

vi user_list

編輯這個文件,將里面的root刪掉。

cd /etc/vsftpd

vi ftpusers

然后使用以下命令重啟服務:

service vsftpd restart

在windows下可以使用FlashFXP

來登錄。

如果登錄時出現這樣的錯誤:

在Linux上運行以下命令查看一下:

sestatus -b | grep ftp

接下來把ftp_home_dir改成on:

setsebool -P ?ftp_home_dir ?on

然后重啟ftp:

修改/etc/selinux/config文件,設置SELINUX= disabled:

vi /etc/selinux/config

使用reboot命令重新啟動。再打開ftp服務,這時就可以了!

上傳Oracle安裝包試一下:

4.設置FTP開機自啟

chkconfig vsftpd on

chkconfig --list | grep vsftpd

總結

以上是生活随笔為你收集整理的linux下java写ftp服务器端,在Linux下部署网站(java环境部署)第五章 FTP服务器搭建...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。