ftp
ftp实现的目标 1.促进文件的共享(计算机程序或数据)
2.鼓励间接或者隐式的使用远程计算机
3.向用户屏蔽不同主机中各种文件存储系统的细节
4.可靠和高效的传输数据
缺点:
1.密码和文件内容都使用明文传输,可能产生不希望发生的窃听。
2.因为必须开放一个随机的端口以建立连接,当防火墙存在时,客户端很难过滤处于主动模式下的FTP流量。这个问题通过使用被动模式的FTP得到了很大解决。
3.服务器可能会被告知连接一个第三方计算机的保留端口。
FTP虽然可以被终端用户直接使用,但是它是设计成被FTP客户端程序所控制。
运行FTP服务的许多站点都开放匿名服务,在这种设置下,用户不需要帐号就可以登录服务器,默认情况下,匿名用户的用户名是:“anonymous”。这个帐号不需要密码,虽然通常要求输入用户的邮件地址作为认证密码,但这只是一些细节或者此邮件地址根本不被确定,而是依赖于FTP服务器的配置情况。
文件传输协议 C/S
server windows (iis server-u)
linux wu-ftp vsftp
client 浏览器
cmd (主机支持TCP/IP)
cuteftp leapftp 专业ftp客户端
ftp 应用层协议 TCP 21/20 连接控制/传递数据
注
网络协议
应用层DNS, FTP, ENRP,HTTP, IMAP, IIRC, NNTP, POP3, SIP, SNMP, SSH, Telnet, BitTorrent, DHCP...
传输层DCCP, SCTP, TCP, RTP, UDP, IL, RUDP, ...
网络层IPv4, IPv6...
数据链路层以太网, Wi-Fi , 令牌环, MPLS, PPP...
物理层RS-232, EIA-422, RS-449, EIA-485, 10BASE2 10BASE-T...
工作模式 1 主动模式
2 被动模式
yum list vsftp*
yum info vsftp // 查询相关信息
yum install -y vsftp
rpm -qc vsftp (查询哪些可配置)
vim /etc/vsftp/vsftp.conf
chkconfig vsftp on
service vsftp start
netstat -tupln |grep ftp
useradd user1 vsftp 127.0.0.1
echo “123” |passwd --stdin user1
anonymous 匿名
匿名登录 邮箱地址可做密码
cmd 登录ftp
dir
!dir /查询自己
put 上传
get 下载一个
mget 下载多个
cd 远程切换
lcd 本地切换
被动控制
vim /etc/vsftp/vsftp.conf
pasv_min_port
ftps
ftp+ssl
yum list all |grep wireshark
tshark -ni eth0 -R “tcp dstport eq 21” //-R 条件 tshark 抓包
1.CA
2 ftp 钥匙 请求文件 证书
1 CA
openCA的配置
cd /etc/pki
vim /tls/openssl.cnf
45行 dir =/etc/pki/CA
88行-90行 改为 =/match/option
cd CA
mkdir crl certs newcerts
touch index.txt serial
echo “01” >serial
ll
创建CA私钥
openssl genrsa 1024 >private/cakey.pem
openssl req –new –x509 -key private/cakey.pem -days 3650
// 钥匙 请求文件
chmod 600 private/cakey.pem
2 ftp设置
mkdir /etc/vsftpd/certs
cd /etc/vsftpd/cert
ll
openssl genrsa 1024 >vsftpd.key 钥匙
openssl req –new -key vsftpd.key –out vsftpd.csr 请求文件
openssl ca -in vsftpd,csr -out vsftpd.cert
chmod 600 *
3 ftp服务器+证书
man 5 vsftp.conf // 查询vsftp.conf的编辑
vim /etc/vsftpd/vsftpd.conf
添加 force_local_logins_ssl=YES
force_local_data_ssl=YES
ssl_enable=YES
ssl_tlsv1=YES
ssl_sslv2=YES
ssl_sslv3=YES
rsa_cert_file=/etc/vsftpd/certs/vsftpd.cert
rsa_private_file=/etc/vsftpd/certs/vsftpd.key
重启服务
service vsftpd restart
抓包 wireshark
yum list all |grep wireshark
有 tshark工具
tshark –ni eth0 -R “tcp.dstport eq 21”
history
如果有13行
!13 tshark … 抓包 检测