Linux 学习笔记_12_文件共享服务_2_FTP应用--vsftpd
生活随笔
收集整理的這篇文章主要介紹了
Linux 学习笔记_12_文件共享服务_2_FTP应用--vsftpd
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Wu-FTP:古老,配置復雜
Proftp:功能強大
vsftp: 安全,高速,穩定【系統默認的FTP軟件】
【默認啟動后即支持用戶宿主目錄訪問及匿名訪問】
配置文件:/etc/vsftp/vsftp.conf
一、匿名訪問
1、 匿名FTP用戶名:ftp、anonymous
此時進入偽用戶宿主目錄/var/ftp
2、編輯/etc/vsftp/vsftp.conf文件內容
anonymous_enable=YES?// 允許匿名訪問
xferlog_enable=YES// 激活上傳和下載記錄的日志
xferlog_std_format=YES
xferlog_file=/var/log/xferlog
ftpd_banner=Welcome....// 顯示提示信息,默認此時顯示vsftp的版本信息
【寫在文件最后即可】
anon_max_tate=100000// 限制匿名用戶的最大傳輸速率為100K/s【不精確值】
3、連接FTP服務器,常用命令
ftp FTP地址
ftp>
ls – 查看目錄文件
cp - 切換目錄(FTP)
bin -二進制傳輸
lcd -切換下載目錄(本地)
get -下載單個文件
mget – 下載多個文件
put -上傳文件
mput -上傳多個文件
prompt - 關閉交互模式
bye -退出
open FTP地址 - 連接FTP服務器
user -輸入FTP服務器的用戶名和密碼
3、【使用FTP客戶端的命令可以實現自動化的上傳和下載功能】
1)書寫腳本auto.ftp:
open 192.168.16.155
user ftp xiaofang@163.com
bin?
prompt
lcd /ftp.bak
mget *
bye
2)執行腳本
ftp -n < auto.ftp或 ftp -n > /dev/null
二、用戶訪問
1、 普通用戶默認即支持上傳和下載
* 若啟用SELinux允許用戶上傳文件到宿主目錄,則執行命令
setsebool -P ftp_home_dir 1/on
setsebool -P allow_ftpd_full_access 1/on
* 或編輯/etc/selinux/config關閉SELinux
2、編輯/etc/vsftp/vsftp.conf文件內容
local_enable=YES// 允許用戶登錄,必須開啟
write_enable=YES
local_umask=022
* local_max_rate=200000//限制用戶傳輸速率為200000KB/s
三、用戶訪問限制[最好啟用]
1、限制指定的用戶不能訪問,而其他用戶都可訪問
userlist_enable=YES
userlist_deny=YES
userlist_file=/etc/vsftpd.user_list
2、限制指定的用戶可以訪問,而其他用戶不能訪問
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list
【書寫/etc/vsftpd.user_list文件時注意:每個用戶占用一行】
3、設置chroot
chroot作用:在FTP服務器上,用戶將自己的宿主目錄當成根目錄來訪問,這樣pwd顯示的結果為/
編輯/etc/ftpd/vsftpd.conf可以
1)設置所有用戶執行chroot
chroot_local_user=YES
2)設置指定用戶不執行chroot,即該用戶可以訪問自己宿主目錄之外的目錄
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
【書寫/etc/vsftpd/chroot_list時注意,每個用戶占一行】
四、其他設置選項
idle_session_timeout=600 // 用戶會話空閑10分鐘之后被掛斷
max_clients=50 // 服務器總的并發連接數為50
max_per_id=3 // 每個客戶機的最大連接數為3
listen_port=10011 // 指定非標準端口為10011【1024以上】,默認端口為21
// 可以屏蔽一般性掃描
訪問時使用:ftp 192.168.139.1 10011
【附:】
nmap 端口掃描工具,默認只是掃描知名端口和周知端口
nmap 主機地址
如: nmap 192.168.139.1
指定掃描范圍:nmap -p1-65535 192.168.139.1
Proftp:功能強大
vsftp: 安全,高速,穩定【系統默認的FTP軟件】
VSFTP服務器配置
啟動:/etc/rc.d/init.d/vsftpd start【默認啟動后即支持用戶宿主目錄訪問及匿名訪問】
配置文件:/etc/vsftp/vsftp.conf
一、匿名訪問
1、 匿名FTP用戶名:ftp、anonymous
此時進入偽用戶宿主目錄/var/ftp
2、編輯/etc/vsftp/vsftp.conf文件內容
anonymous_enable=YES?// 允許匿名訪問
xferlog_enable=YES// 激活上傳和下載記錄的日志
xferlog_std_format=YES
xferlog_file=/var/log/xferlog
ftpd_banner=Welcome....// 顯示提示信息,默認此時顯示vsftp的版本信息
【寫在文件最后即可】
anon_max_tate=100000// 限制匿名用戶的最大傳輸速率為100K/s【不精確值】
3、連接FTP服務器,常用命令
ftp FTP地址
ftp>
ls – 查看目錄文件
cp - 切換目錄(FTP)
bin -二進制傳輸
lcd -切換下載目錄(本地)
get -下載單個文件
mget – 下載多個文件
put -上傳文件
mput -上傳多個文件
prompt - 關閉交互模式
bye -退出
open FTP地址 - 連接FTP服務器
user -輸入FTP服務器的用戶名和密碼
3、【使用FTP客戶端的命令可以實現自動化的上傳和下載功能】
1)書寫腳本auto.ftp:
open 192.168.16.155
user ftp xiaofang@163.com
bin?
prompt
lcd /ftp.bak
mget *
bye
2)執行腳本
ftp -n < auto.ftp或 ftp -n > /dev/null
二、用戶訪問
1、 普通用戶默認即支持上傳和下載
* 若啟用SELinux允許用戶上傳文件到宿主目錄,則執行命令
setsebool -P ftp_home_dir 1/on
setsebool -P allow_ftpd_full_access 1/on
* 或編輯/etc/selinux/config關閉SELinux
2、編輯/etc/vsftp/vsftp.conf文件內容
local_enable=YES// 允許用戶登錄,必須開啟
write_enable=YES
local_umask=022
* local_max_rate=200000//限制用戶傳輸速率為200000KB/s
三、用戶訪問限制[最好啟用]
1、限制指定的用戶不能訪問,而其他用戶都可訪問
userlist_enable=YES
userlist_deny=YES
userlist_file=/etc/vsftpd.user_list
2、限制指定的用戶可以訪問,而其他用戶不能訪問
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list
【書寫/etc/vsftpd.user_list文件時注意:每個用戶占用一行】
3、設置chroot
chroot作用:在FTP服務器上,用戶將自己的宿主目錄當成根目錄來訪問,這樣pwd顯示的結果為/
編輯/etc/ftpd/vsftpd.conf可以
1)設置所有用戶執行chroot
chroot_local_user=YES
2)設置指定用戶不執行chroot,即該用戶可以訪問自己宿主目錄之外的目錄
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
【書寫/etc/vsftpd/chroot_list時注意,每個用戶占一行】
四、其他設置選項
idle_session_timeout=600 // 用戶會話空閑10分鐘之后被掛斷
max_clients=50 // 服務器總的并發連接數為50
max_per_id=3 // 每個客戶機的最大連接數為3
listen_port=10011 // 指定非標準端口為10011【1024以上】,默認端口為21
// 可以屏蔽一般性掃描
訪問時使用:ftp 192.168.139.1 10011
【附:】
nmap 端口掃描工具,默認只是掃描知名端口和周知端口
nmap 主機地址
如: nmap 192.168.139.1
指定掃描范圍:nmap -p1-65535 192.168.139.1
總結
以上是生活随笔為你收集整理的Linux 学习笔记_12_文件共享服务_2_FTP应用--vsftpd的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [翻译]为什么你不要收缩数据库文件
- 下一篇: iOS 瀑布流布局实现详解