linux下的FTP安装及调优
前言:
在之前交换平台的开发中,FTP的各种操作算是核心功能点。
在FTP的开发中,遇到了不少坑。
如FTP需要设置被动模式,否则10M以上的包可能会上传失败。
如FTP需要设置囚牢模式,否则访问的文件夹可能会调到根目录去,不在配置的目录中,可能导致访问错误、权限不够等问题。
以下为正确的打开方法,以后linux下安装FTP,轻轻松松。
同事们找你优化FTP,也能得心应手。
1.1 FTP安装
我的本机环境是centOs7.
可以使用uname -a查看你的系统信息
uname -a
得到如下信息
>Linux localhost.localdomain 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Linux下我们选择vsftp
yum install -y vsftpd
(非必要)FTP客户端安装,可以在服务器上使用客户端测试
yum install -y ftp
(非必要)FTP 工具
yum install -y lftp
重启FTP
service vsftpd restart
自启动
chkconfig vsftpd on
1.2 设置访问模式
编辑配置文件
vim /etc/vsftpd/vsftpd.conf
设置囚牢模式
#囚牢模式
chroot_local_user=YSE#是否将所有用户限制在主目录,YES为启用 NO禁用.
> (该项默认值是NO,即在安装vsftpd后不做配置的话,ftp用户是可以向上切换到要目录之外的)
注意事项:
在CentOS7下配置chroot_local_user=yes ,配置完成后发现无法访问,远程主机关闭连接。
解决方案如下:
方法1:加一条配置
vim /etc/vsftpd/vsftpd.conf
allow_writeable_chroot=YES
方法2、重新给权限
chmod 755 /home/ftp_yaoshen
1.3 创建FTP 账号
1、添加linux用户
useradd -s /sbin/nologin ftp_yaoshen
2、重置密码
passwd ftp_yaoshen
设置密码yaomaomao
3、重启FTP
service vsftpd restart
4、如果无权限,可能是没有赋予执行权限,
cd /etc/init.d
chmod +x vsftpd
赋权成功后再次执行。
5、用/sbin/nologin 方式添加用户,centos7下可能会登陆不上,解决方案:
usermod -s /bin/bash ftp_coperate
1.4 FTP参数调优
编辑配置文件
vi /etc/vsfptd/vsfptd.conf
在conf文件中添加如下参数:
max_clients=10240 #最大连接数,不限制改为0
max_per_ip=1000 #单IP最大连接数,不限制改为0
需要重启ftp
service vsftpd restart
注:有需要限制上传速率的可以设置
anon_max_rate=50000 #限制匿名用户50KB
local_max_rate=200000 #限制本地用户200KB
1.5 FTP客户端访问调优
1.5.1 JAVA客户端
引用API org.apache.commons.net.ftp.FTPClient
//设置被动模式(FTP客户端上传、下载容易失败)
ftpClient.enterLocalPassiveMode();
// 在操作FTP文件时,改变到文件当前目录
ftpClient.changeWorkingDirectory(new String(remoteFolder.getBytes("GBK"), FTP.DEFAULT_CONTROL_ENCODING));
我的公众号:
linux下的FTP安装及调优的更多相关文章
- linux下jvm优化、tomcat调优
系统环境:jdk1.8,apache-tomcat-8.5.35 一.jvm优化 进入 bin/catalina.sh,修改JAVA_OPTS配置: JAVA_OPTS="-server - ...
- Linux下部署FTP服务器
Linux下部署FTP服务器 下载安装包 在这里介绍的是离线部署FTP,首先下载对应的rpm包,下载链接为: 下载vsftpd服务 下载FTP客户端 安装ftp服务器 关闭防火墙 service ip ...
- linux 下搭建 ftp
最近为了方便目标板与PC机上LINUX之间的通讯,就在LINUX搭建了FTP,工作不难,写个总结.主要经过以下几个步骤: 1.检查是否安装了vsftpd服务器 可以用rpm -q vsftpd命令来查 ...
- 如何在linux下开启FTP服务
如何在linux下开启FTP服务 1. 首先服务器要安装ftp软件,查看是否已经安装ftp软件下: #which vsftpd 如果看到有vsftpd的目录说明服务器已经安装了ftp软件 2. ...
- Linux下nginx编译安装教程和编译参数详解
这篇文章主要介绍了Linux下nginx编译安装教程和编译参数详解,需要的朋友可以参考下 一.必要软件准备1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码代码如下: # y ...
- linux下源码安装netcat
linux下源码安装netcat http://blog.chinaunix.net/uid-20783755-id-4211230.html 1,下载netcat源码,netcat-0.7.1-13 ...
- ArcGIS 10.1 for Server安装教程系列—— Linux下的单机安装
http://www.oschina.net/question/565065_81231 因为Linux具有稳定,功能强大等特性,因此常常被用来做为企业内部的服务器,我们的很多用户也是将Ar ...
- Linux 下编译并安装配置 Qt 4.53全过程
最近准备做 Nokia 的 Symbian,Maemo 下触摸屏开发.考虑到程序的跨平台可移植性,最终选择使用 Qt 开发.相对来说,国内关于 Qt 相关文档并不算很多.作者将 Linux 下编译并安 ...
- linux下vsftpd的安装及配置使用详细步骤(推荐)
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点. vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BS ...
随机推荐
- LigerUI Dialog 滚动条问题
LigerUI 使用Dialog时,自动显示滚动条无法隐藏.设置css 取消滚动条,不影响页面滚动条 .l-dialog-content { overflow: hidden;}
- 用 jQuery.getJSON() 跨域请求 JSON 数据
$.getJSON()可以理解为特殊形式的$.ajax(),手册里的说明好复杂,这里只记录一下用到的跨域请求. 先说在同一域名下,js发送数据到php,php返回JSON数据: $.getJSON(' ...
- face='Webdings' 的字体对照表
刚才研究动网论坛代码,发现一个页面提示标记 i 感觉很神奇,看了半天才明白原来是一种叫“Webdings”的字体,其实很简单,只需要<font face='webdings' size=&quo ...
- SYN2102型 NTP网络时间服务器
SYN2102型 NTP网络时间服务器 ntp主时钟服务器ntp时钟服务器厂商使用说明视频链接: http://www.syn029.com/h-pd-57-0_310_1_-1.html 请将 ...
- ThreadLocal使用原理、注意问题、使用场景
想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理.首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码 ...
- 02-MySQL的安装和管理
# mysql的安装和基本管理 # 01 数据库管理软件分类 ''' 分两大类: 关系型:如sqllite,db2,oracle,access,sql server,MySQL,注意:sql语句通用 ...
- 10分钟实现Typora(markdown)编辑器
本章主要内容: 介绍我们将在接下来的几章中构建的应用程序 配置我们的CSS样式表,使其看起来更像一个本机应用程序 回顾在Electron中主进程和渲染器进程之间的关系 为我们的主进程和渲染器进程实现基 ...
- Go语言之从0到1实现一个简单的Redis连接池
Go语言之从0到1实现一个简单的Redis连接池 前言 最近学习了一些Go语言开发相关内容,但是苦于手头没有可以练手的项目,学的时候理解不清楚,学过容易忘. 结合之前组内分享时学到的Redis相关知识 ...
- Java8新特性——lambda表达式.(案例:词频统计)
需求:读入一个文本文件,确定所有单词的使用频率并从高到低排序,打印出所有单词及其频率的排序列表 先用传统方法解: package cn._1.wordfrequency; import java.ut ...
- CentOS7搭建LNMP环境
以前写的过时了,重新发一篇新的. 安装PHP 下载官网:https://www.php.net/downloads.php 为了方便,我存了现成的 百度网盘:https://pan.baidu.com ...