FTP服务
2015-06-08 11:56
561 查看
一、简介
FTP:File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文件传输协议”。用于Ineternet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议传输文件。在FTP的使用当中,用户经常遇到两个概念:“下载”(Download)和“上传”(Upload)。
“下载”文件就是从远程主机拷贝文件至自己的计算机上。
“上传”文件就是将文件从自己计算机中拷贝至远程主机上。
支持FTP协议的服务器就是FTP服务器。
二、工作模式
FTP连接及传输模式
控制连接:TCP 21,用于发送FTP命令信息
数据连接:TCP 20,用于上传、下载数据
数据连接的建立类型:
主动模式:服务端从20端口主动向客户端发起连接
被动模式:服务端在指定范围内某个端口被动等待客户端连接
三、相关配置
第12行:控制匿名登录
anonymous_enable=YES
第15行:允许本地帐号登录
local_enable=YES
第18行:控制可写权限
write_enable=YES
第22行:控制本地文件的权限掩码
local_umask=022
第27行:控制是否允许匿名上传(与26行同时开启或关闭)
anon_upload_enable=YES
第31行:控制是否允许匿名写及创建目录的权限
aanon_mkdir_write_enable=YES
第35行:控制上传或下载的日志记录
dirmessage_enable=YES
第42行:启用FTP数据端口连接请求
connect_from_port_20=YES
第56行:控制日志的保存路径
xferlog_file=/var/log/xferlog
第59行:设置指令超时的时间,默认为600秒
idle_session_timeout=600
第62行:设置数据连接的超时时间,默认为120秒
data_connection_timeout=120
第91行:控制登录FTP的用户是否被限制在家目录下;
chroot_list_enable=YES
四、vsftp下的匿名用户、本地用户及虚拟用户的配置
1)匿名用户
vim /etc/vsftpd/vsftpd.conf
write_enable=YES #允许所有用户可以写入文件
anonymous_enable=YES #启用匿名用户
anon_umask=022 #匿名用户上传文件的权限掩码
anon_upload_enable=YES #匿名用户可以上传文件
anon_mkdir_write_enable=YES #匿名用户可以在服务端创建目录
anon_other_write_enable=YES #开放其他写入权限(比如删除目录)
anon_root=/var/ftp #匿名用户的FTP根目录
--------------------------------------------------------
chown ftp /var/ftp/pub #更改目录的属主,使匿名用户有权限在pub目录中创建文件
2)本地用户
vim /etc/vsftpd/vsftpd.conf
local_enable=YES #启用本地用户
write_enable=YES #所有用户可以写入
local_umask=022 #本地用户所上传文件的权限掩码
chroot_local_user=YES #是否将用户禁锢在主目录
3)虚拟用户
1、建立虚拟FTP用户的账号数据库文件
[root@localhost ~]# vim /etc/vsftpd/vusers.list
zhangsan
123
lisi
123
[root@localhost ~]# cd /etc/vsftpd/
[root@localhost ~]# db_load -T -t hash -f vusers.list vusers.db
[root@localhost ~]# chmod 600 /etc/vsftpd/vusers.*
2、创建FTP根目录及虚拟用户映射的系统用户
[root@localhost ~]# useradd -d /var/ftproot -s /sbin/nologin virtual
[root@localhost ~]# chmod 755 /var/ftproot/
3、支持虚拟用户的PAM认证文件
[root@localhost ~]# vim /etc/pam.d/vsftp.vu
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers
4、在vsftpd.conf文件中添加支持配置
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
write_enable=YES
guest_enable=YES #启用虚拟用户
guest_username=virtual #虚拟用户映射的本地用户
pam_service_name=vsftpd.vu #虚拟用户认证文件
5.为个别虚拟用户建立独立的配置文件
在vsftpd.conf文件中添加用户配置目录支持
user_config_dir=/etc/vsftpd/vusers_dir
为用户zhangsan、lisi建立独立的配置目录及文件
[root@localhost ~]# mkdir /etc/vsftpd/vusers_dir/
[root@localhost ~]# cd /etc/vsftpd/vusers_dir/
[root@localhost ~]# vim zhangsan
anon_upload_enable=YES
anon_mkdir_write_enable=YES
[root@localhost ~]# touch lisi
[root@localhost ~]# service vsftpd restart
FTP:File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文件传输协议”。用于Ineternet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议传输文件。在FTP的使用当中,用户经常遇到两个概念:“下载”(Download)和“上传”(Upload)。
“下载”文件就是从远程主机拷贝文件至自己的计算机上。
“上传”文件就是将文件从自己计算机中拷贝至远程主机上。
支持FTP协议的服务器就是FTP服务器。
二、工作模式
FTP连接及传输模式
控制连接:TCP 21,用于发送FTP命令信息
数据连接:TCP 20,用于上传、下载数据
数据连接的建立类型:
主动模式:服务端从20端口主动向客户端发起连接
被动模式:服务端在指定范围内某个端口被动等待客户端连接
三、相关配置
第12行:控制匿名登录
anonymous_enable=YES
第15行:允许本地帐号登录
local_enable=YES
第18行:控制可写权限
write_enable=YES
第22行:控制本地文件的权限掩码
local_umask=022
第27行:控制是否允许匿名上传(与26行同时开启或关闭)
anon_upload_enable=YES
第31行:控制是否允许匿名写及创建目录的权限
aanon_mkdir_write_enable=YES
第35行:控制上传或下载的日志记录
dirmessage_enable=YES
第42行:启用FTP数据端口连接请求
connect_from_port_20=YES
第56行:控制日志的保存路径
xferlog_file=/var/log/xferlog
第59行:设置指令超时的时间,默认为600秒
idle_session_timeout=600
第62行:设置数据连接的超时时间,默认为120秒
data_connection_timeout=120
第91行:控制登录FTP的用户是否被限制在家目录下;
chroot_list_enable=YES
四、vsftp下的匿名用户、本地用户及虚拟用户的配置
1)匿名用户
vim /etc/vsftpd/vsftpd.conf
write_enable=YES #允许所有用户可以写入文件
anonymous_enable=YES #启用匿名用户
anon_umask=022 #匿名用户上传文件的权限掩码
anon_upload_enable=YES #匿名用户可以上传文件
anon_mkdir_write_enable=YES #匿名用户可以在服务端创建目录
anon_other_write_enable=YES #开放其他写入权限(比如删除目录)
anon_root=/var/ftp #匿名用户的FTP根目录
--------------------------------------------------------
chown ftp /var/ftp/pub #更改目录的属主,使匿名用户有权限在pub目录中创建文件
2)本地用户
vim /etc/vsftpd/vsftpd.conf
local_enable=YES #启用本地用户
write_enable=YES #所有用户可以写入
local_umask=022 #本地用户所上传文件的权限掩码
chroot_local_user=YES #是否将用户禁锢在主目录
3)虚拟用户
1、建立虚拟FTP用户的账号数据库文件
[root@localhost ~]# vim /etc/vsftpd/vusers.list
zhangsan
123
lisi
123
[root@localhost ~]# cd /etc/vsftpd/
[root@localhost ~]# db_load -T -t hash -f vusers.list vusers.db
[root@localhost ~]# chmod 600 /etc/vsftpd/vusers.*
2、创建FTP根目录及虚拟用户映射的系统用户
[root@localhost ~]# useradd -d /var/ftproot -s /sbin/nologin virtual
[root@localhost ~]# chmod 755 /var/ftproot/
3、支持虚拟用户的PAM认证文件
[root@localhost ~]# vim /etc/pam.d/vsftp.vu
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers
4、在vsftpd.conf文件中添加支持配置
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
write_enable=YES
guest_enable=YES #启用虚拟用户
guest_username=virtual #虚拟用户映射的本地用户
pam_service_name=vsftpd.vu #虚拟用户认证文件
5.为个别虚拟用户建立独立的配置文件
在vsftpd.conf文件中添加用户配置目录支持
user_config_dir=/etc/vsftpd/vusers_dir
为用户zhangsan、lisi建立独立的配置目录及文件
[root@localhost ~]# mkdir /etc/vsftpd/vusers_dir/
[root@localhost ~]# cd /etc/vsftpd/vusers_dir/
[root@localhost ~]# vim zhangsan
anon_upload_enable=YES
anon_mkdir_write_enable=YES
[root@localhost ~]# touch lisi
[root@localhost ~]# service vsftpd restart
相关文章推荐
- 用vsftp快速搭建ftp服务器
- 实现FTP整站上传的批处理代码
- 批处理向FTP上传具有指定属性的文件(增量备份)
- 使用 iisftpdr.vbs 创建 FTP 虚拟目录的方法
- Delphi解析FTP地址的方法
- IIS里FTP多用户设置方法,终于不用Serv-U了
- FTP 服务器关于权限的问题
- IIS FTP PASV模式下更改端口范围的方法
- FTP 常用命令 使用说明
- 通过批处理修改FTP账号和密码
- FTP下载服务器 TYPSoft FTP Server V1.11 简体中文版 下载
- FTP 分类账户设置经验谈
- 批处理bat下载FTP服务器上某个目录下的文件
- php建立Ftp连接的方法
- FTP服务器端软件Serv-U FTP Server 6.4.0.5&0.4 Final 汉化版 下载
- ftp突然直接连接不上了的解决方法
- ftp自动上传脚本分享
- FTP服务器的防火墙通用设置规则介绍
- FTP 服务器的部署和维护心得
- C# FTP,GetResponse(),远程服务器返回错误