linux FTP服务

简介: FTP服务器主程序:/usr/sbin/vsftpd用户控制列表文件    /etc/vsftpd/ftpusers    /etc/vsftpd/user_list主配置文件    /etc/vsftpd/vsftpd.

FTP服务器

主程序:/usr/sbin/vsftpd

用户控制列表文件

    /etc/vsftpd/ftpusers

    /etc/vsftpd/user_list

主配置文件

    /etc/vsftpd/vsftpd.conf

 

常用的全局配置项

   listen=YES  是否以独立的方式监听服务

   listen_address=192.168.134.2  设置监听的IP地址

   listen_port=21    设置监听FTP服务的端口

   write_enable=YES  是否启用写入权限

   download_enable=YEs  是否允许下载文件

   userlist_enable=YES  是否启用user_list列表文件

   userlist_deny=YES  是否禁用user_list中的用户

   max_clients=0    限制并发客户端连接数

   max_per_ip=0  限制同一IP地址的并发连接数


常用的匿名FTP配置项

   anonymous_enable=YES  启用匿名访问

   anon_umask=022   匿名用户所上传文件的权限掩码

   anon_root=/var/ftp 匿名用户的FTP根目录

   anon_upload_enable=YES  允许上传文件

   anon_mkdir_write_enable=YES  允许创建目录

   anon_other_write_enable=YES  允许其他写入权

   anon_max_rate=0  限制最大传输速率(字节/秒)


常用的本地用户FTP配置项

    local_enable=YES  是否启用本地系统用户

    local_umask=022   本地用户所上传文件的权限掩码

    local_root=/var/ftp  设置本地用户的FTP根目录

    chroot_local_user=YES   是否将用户禁锢在主目录

    local_max_rate=0  限制最大传输速率(字节/秒)

 


匿名用户访问

1、准备匿名FTP访问的目录

    使用匿名用户FTP对该目录有写入权限

    chown ftp /var/ftp/pub/

    ls -ld /var/ftp/pub/

2、开放匿名用户配置,并启动服务

    vim /etc/vsftpd/vsftpd.conf

    anonymous_enable=YES

    local_enable=NO

    write_enable=YES

    anon_umask=022

    anon_upload_enable=YES

    anon_mkdir_write_enbale=YES

    dirmessage_enable=YES


本地用户访问


service vsftpd start

netstat -anpt | grep "vaftpd"


grep -v "^#" vsftpd.conf.bak > vsftpd.conf


service vsftpd reload




其他常用配置

      vim /etc/vsftpd/vsftpd.conf

1、修改vsftpd服务的监听地址、端口

      listen=YES

      listen_address=192.168.1.2

      listen_port=2121

2、允许使用FTP服务器的被动模式

      pasv_enable=YES

      pasv_min_port=24500

      pasv_max_port=24600

3、限制FTP连接的并发数、传输速率

      max_clients=20

      max_per_ip=2

      anon_max_rate=50000

      local_max_rate=200000   //单位KB/S





500 OOPS: cannot change directory

500 OOPS: priv_sock_get_cmd


     setsebool ftp_home_dir on

setsebool -P ftp_home_dir on


ftp操作命令

lrzsz

rz  上传文件

sz  下载


ls

pwd   查询linux主机所在目录

lpwd   查询本机所在目录

cd   切换目录(FTP)

bin  二进制传输

lcd  切换下载目录(本地)

get  下载单个文件

mput  下载多个

put  上传单个

mput  上传多个

pronpt  关闭交互模式

bye   退出

quit  断开FTP连接

open  连接ftp服务器

user  输入ftp服务器用户名和密码


nmap   端口扫描工具


listen_address=ip address

指定侦听IP

listen_port=port_value

指定侦听端口,默认21

anonymous_enable=YES

是否允许使用匿名帐户

local_enable=YES

是否允许本地用户登录

nopriv_user=ftp

指定vsftpd服务的运行帐户,不指定时使用ftp

write_enable=YES

是否允许写入

anon_upload_enable=YES

匿名用户是否可上传文件

anon_mkdir_write_enable=YES

匿名用户是否建立目录

dirmessage_enable=YES

进入每个目录是显示欢迎信息,在每个目录下建立.message文件在里面写欢迎信息

xferlog_enable=YES

上传/下载文件时记录日志

connect_from_port_20=YES

是否使用20端口传输数据(是否使用主动模式)

chown_uploads=YES、chown_username=whoever

修改匿名用户上传文件的拥有者

xferlog_file=/var/log/vsftpd.log

日志文件

xferlog_std_format=YES

使用标准文件日志

idle_session_timeout=600

会话超时,客户端连接到ftp但未操作

data_connection_timeout=120

数据传输超时

async_abor_enable=YES

是否允许客户端使用sync等命令

ascii_upload_enable=YES、ascii_download_enable=YES

是否允许上传/下载二进制文件

chroot_local_user=YES

限制所有的本地用户在自家目录

chroot_list_enable=YES、chroot_list_file=/etc/vsftpd/chroot_list

指定不能离开家目录的用户,将用户名一个一行写在/etc/vsftpd/chroot_list文件里,使用此方法时必须chroot_local_user=NO

ls_recurse_enable=YES

是否允许使用ls -R等命令

listen=YES

开启ipv4监听

listen_ipv6=YES

开启ipv6监听

pam_service_name=vsftpd

使用pam模块控制,vsftpd文件在/etc/pam.d目录下

userlist_enable=YES

此选项被激活后,vsftpd将读取userlist_file参数所指定的文件中的用户列表。当列表中的用户登录FTP服务器时,该用户在提示输入密码之前就被禁止了。即该用户名输入后,vsftpd查到该用户名在列表中,vsftpd就直接禁止掉该用户,不会再进行询问密码等后续步聚

userlist_deny=YES

决定禁止还是只允许由userlist_file指定文件中的用户登录FTP服务器。此选项在userlist_enable 选项启动后才生效。YES,默认值,禁止文件中的用户登录,同时也不向这些用户发出输入密码的提示。NO,只允许在文件中的用户登录FTP服务器

tcp_wrappers=YES

是否允许tcp_wrappers管理

local_root=/home/ftp

所有用户的根目录,,对匿名用户无效

anon_max_rate

匿名用户的最大传输速度,单位是Byts/s

local_max_rate

本地用户的最大传输速度,单位是Byts/s

download_enable= YES

是否允许下载


目录
相关文章
|
6天前
|
Linux
|
3天前
|
Linux 持续交付 Apache
在Linux中通过ansible自动化部署apache服务
【7月更文挑战第11天】Linux中用Ansible自动化部署Apache服务:1. 确保Ansible已安装;2. 在`/etc/ansible/hosts`配置目标主机,如\[webservers\] server1 server2;3. 编写Playbook `apache_deploy.yml`更新系统并安装、启动Apache;4. 执行`ansible-playbook apache_deploy.yml`。适用于快速部署至多台服务器,减少配置错误和成本。
|
1月前
|
关系型数据库 MySQL Linux
Linux下怎么快速部署MySQL服务,并使用
Linux下怎么快速部署MySQL服务,并使用
37 5
|
22天前
|
网络协议 Linux 开发工具
配置Linux固定IP地址,为什么要固定IP,因为他是通DHCP服务获取的,DHCP服务每次重启都会重新获取一次ip,VMware编辑中有一个虚拟网络编辑器
配置Linux固定IP地址,为什么要固定IP,因为他是通DHCP服务获取的,DHCP服务每次重启都会重新获取一次ip,VMware编辑中有一个虚拟网络编辑器
|
22天前
|
运维 监控 大数据
部署-Linux01,后端开发,运维开发,大数据开发,测试开发,后端软件,大数据系统,运维监控,测试程序,网页服务都要在Linux中进行部署
部署-Linux01,后端开发,运维开发,大数据开发,测试开发,后端软件,大数据系统,运维监控,测试程序,网页服务都要在Linux中进行部署
|
23天前
|
负载均衡 Java Linux
黑马头条01,环境搭建,今日头条的介绍,今日头条的功能架构图,技术栈的说明,服务层,nacos(奶靠丝)安装,安装在Linux服务器上环境准备,
黑马头条01,环境搭建,今日头条的介绍,今日头条的功能架构图,技术栈的说明,服务层,nacos(奶靠丝)安装,安装在Linux服务器上环境准备,
|
1月前
|
Linux Ubuntu
蓝易云 - Linux学习之Ubuntu20使用systemd管理OpenResty服务
这就是在Ubuntu 20使用systemd管理OpenResty服务的基本方法。
52 3
|
2月前
|
Linux 编译器 调度
xenomai内核解析--双核系统调用(二)--应用如何区分xenomai/linux系统调用或服务
本文介绍了如何将POSIX应用程序编译为在Xenomai实时内核上运行的程序。
105 1
xenomai内核解析--双核系统调用(二)--应用如何区分xenomai/linux系统调用或服务
|
1月前
|
监控 Linux 数据处理
探索Linux命令needs-restarting:了解哪些服务需要重启
`needs-restarting`是Linux中用于检测因文件更新需重启的服务的工具。它对比服务状态与文件修改时间,快速识别需重启的服务,提供详细输出和可配置选项。命令参数如`--all`检查所有服务,`--service`针对特定服务,`--verbose`显示详细信息。使用时注意权限,谨慎重启,定期检查,并与其他系统管理工具结合使用。修改配置后,应运行此命令确保更新生效。
|
2月前
|
Ubuntu Linux Shell
minio服务端以Linux服务形式安装
minio服务端以Linux服务形式安装
445 8