FTP
一.FTP簡介和原理
FTP即文件傳輸協(xié)議, CS架構(gòu), Linux下搭建ftp服務(wù)器需要安裝vsftpd服務(wù)
測試示例
web01(192.168.5.131)安裝vsftpd服務(wù)端, web02(192.168.5.132)安裝ftp客戶端
-
vsftpd安裝
yum -y install vsftpd
- 安裝后開啟服務(wù),
service vsftpd start
, 默認(rèn)監(jiān)聽21端口 - 關(guān)閉防火墻:
chkconfig --level 2345 iptables off
和service iptables stop
- 關(guān)閉selinux: 修改
/etc/selinux/config
, 修改為SELINUX=disabled, reboot
-
ftp客戶端安裝
yum -y install ftp
- 連接web01, 服務(wù)端需要關(guān)閉防火墻和selinux, 格式為 ftp 服務(wù)端
ftp web01
[root@web02 ~]# ftp web01
Connected to web01 (192.168.5.131).
220 (vsFTPd 2.2.2)
Name (web01:root): uar
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
- ftp默認(rèn)登錄方式
- 匿名用戶 anonymous或ftp
- 本地用戶 使用Linux系統(tǒng)用戶和密碼
- ftp默認(rèn)使是明文傳輸, Linux可以使用命令
tcpdump -i eth0 -nnX port 21
抓包, 當(dāng)客戶端連接上后, 輸入的用戶名和密碼就會被抓包工具抓到, 看到明文的r用戶名和密碼, 所以默認(rèn)禁止使用root登陸到ftp服務(wù)端
- ftp默認(rèn)使是明文傳輸, Linux可以使用命令
- 虛擬用戶 管理員自定義的模擬用戶
二. FTP配置文件
- 主配置文件: /etc/vsftpd/vsftpd.conf
- listen_address=192.168.5.132 設(shè)置監(jiān)聽的ip地址
- listen_port=21 設(shè)置監(jiān)聽端口
- download_enable=YES 能否下載
- max_clients=1 顯示并發(fā)客戶端連接數(shù)
- max_per_ip=0 顯示同一ip地址的并發(fā)連接數(shù)
- 用戶訪問權(quán)限控制文件(黑名單):
- /etc/ftpusers
- user_list
四. 客戶端使用
- 使用ftp命令登陸
ftp web01
ftp交互模式指令如下- help 幫助
- get 下載
- mget 下載一批文件
- put 上傳
- mput 上傳一批文件
- quit 退出
- 在windows資源管理器地址欄輸入
ftp://uar@192.168.5.131
也可以連接到web01這臺主機(jī)上 - 在windows下使用其他軟件, 如winscp, 新建連接, 選擇ftp協(xié)議, 端口21, 輸入主機(jī)地址, 用戶名, 密碼就可以登錄
五. 匿名用戶訪問
[root@web02 ~]# ftp web01
Connected to web01 (192.168.5.131).
220 (vsFTPd 2.2.2)
匿名用戶登錄, 默認(rèn)使用ftp用戶, 登陸后默認(rèn)家目錄為/var/ftp/目錄下
Name (web01:root): ftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/"
ftp> ls
227 Entering Passive Mode (192,168,5,131,135,215).
150 Here comes the directory listing.
drwxr-xr-x 2 0 0 4096 Mar 22 2017 pub
226 Directory send OK.
ftp>
/var/ftp
目錄權(quán)限為
drwxr-xr-x. 3 root root 4096 1月 21 18:47 /var/ftp/
, 所以匿名用戶(ftp)對該目錄沒有編輯權(quán)限, 也就是不能增刪改目錄中的文件, 所以也就不能上傳文件;
建議更改/var/ftp/pub目錄的所有者為ftp用戶, 從而將文件上傳到pub目錄下