欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

共享服务-FTP基础(一)

程序员文章站 2023-04-03 23:02:26
介绍:文件传输协议FTP 两种模式:服务器角度 主动(PORT style):服务器主动连接 命令(控制):客户端:随机port  服务器:tcp21 数据:客户端:随机port  服务器:tcp20 被动(PASV style):客户端主动连接 命令(控制):客户端:随机port  服务器: ......

 

介绍:文件传输协议ftp

两种模式:服务器角度

主动(port style):服务器主动连接

命令(控制):客户端:随机port --- 服务器:tcp21

数据:客户端:随机port ---服务器:tcp20

被动(pasv style):客户端主动连接

命令(控制):客户端:随机port --- 服务器:tcp21

数据:客户端:随机port ---服务器:随机port

ftp软件

ftp服务器:

wu-ftpd,proftpd,pureftpd,servu,iis

vsftpd:very secure ftp daemon,centos默认ftp服务器

高速,稳定,下载速度是wu-ftp的两倍

ftp.redhat.com数据:单机最多可支持15000个并发

客户端软件:

ftp,lftp,lftpget,wget,curl

ftp -a ftpserver port -a主动模式 –p 被动模式

lftp –u username ftpserver

lftp username@ftpserver

lftpget ftp://ftpserver/pub/file

gftp: gui centos5 最新版2.0.19 (11/30/2008)

filezilla,cuteftp,flashfxp,leapftp

ie

ftp状态码

状态码:

1xx:信息 125:数据连接打开

2xx:成功类状态 200:命令ok 230:登录成功

3xx:补充类 331:用户名ok

4xx:客户端错误 425:不能打开数据连接

5xx:服务器错误 530:不能登录

用户认证

匿名用户:ftp,anonymous,对应linux用户ftp

系统用户:linux用户,用户/etc/passwd,密码/etc/shadow

虚拟用户:特定服务的专用用户,独立的用户/密码文件

nsswitch:network service switch名称解析框架

pam:pluggable authentication module 用户认证

/lib64/security /etc/pam.d/ /etc/pam.conf

vsftpd服务:

用户认证配置文件:/etc/pam.d/vsftpd

服务脚本: /usr/lib/systemd/system/vsftpd.service

/etc/rc.d/init.d/vsftpd

配置文件:/etc/vsftpd/vsftpd.conf

vsftpd服务配置

命令端口

listen_port=21

主动模式端口

connect_from_port_20=yes 主动模式端口为20

ftp_data_port=20 (默认) 指定主动模式的端口

被动模式端口范围

linux 客户端默认使用被动模式

windows 客户端默认使用主动模式

pasv_min_port=6000 0为随机分配

pasv_max_port=6010

使用当地时间

use_localtime=yes 使用当地时间(默认为no,使用gmt)

匿名用户:配置

anonymous_enable=yes 支持匿名用户(默认)

no_anon_password=yes(默认no) 匿名用户略过口令检查

anon_world_readable_only (默认yes)只能下载全部读的文件

anon_upload_enable=yes 匿名上传,注意:文件系统权限

anon_mkdir_write_enable=yes 匿名建目录

anon_umask=077 指定匿名上传文件的umask

anon_other_write_enable=yes 可删除和修改上传的文件

指定上传文件的默认的所有者和权限

chown_uploads=yes(默认no)

chown_username=wang

chown_upload_mode=0644

linux系统用户:配置(备注:用户根有写权限是不行的)

guest_enable=yes 所有系统用户都映射成guest用户

guest_username=ftp 配合上面选项才生效,指定guest用户

local_enable=yes 是否允许linux用户登录

write_enable=yes 允许linux用户上传文件

local_umask=022 指定系统用户上传文件的默认权限

local_root=/ftproot guest用户登录所在目录

禁锢所有系统用户在家目录中

chroot_local_user=yes(默认no,不禁锢)禁锢系统用户

禁锢或不禁锢特定的系统用户在家目录中,与上面设置功能相反

chroot_list_enable=yes

chroot_list_file=/etc/vsftpd/chroot_list

当chroot_local_user=yes时,则chroot_list中用户不禁锢

当chroot_local_user=no时,则chroot_list中用户禁锢

wu-ftp日志:默认启用

xferlog_enable=yes (默认) 启用记录上传下载日志

xferlog_std_format=yes (默认) 使用wu-ftp日志格式

xferlog_file=/var/log/xferlog (默认)可自动生成

vsftpd日志:默认不启用

dual_log_enable=yes 使用vsftpd日志格式,默认不启用

vsftpd_log_file=/var/log/vsftpd.log(默认)可自动生成

登录提示信息

ftpd_banner=“welcome to mage ftp server"

banner_file=/etc/vsftpd/ftpbanner.txt 优先上面项生效

目录访问提示信息

dirmessage_enable=yes (默认)

message_file=.message(默认) 信息存放在指定目录下.message