(适用于redhat)
前几天在公司的服务器上开了ftp,因为是个纯菜鸟,过程中遇到了一些难题,搞得自己郁闷了好久。所以在这里把过程写下来避免初学者进入误区。废话少说,进入正题
yum install vsftpd \\安装ftp
service vsftpd start \\启动ftp服务
chkconfig --level 235 vsftpd on \\设为开机启动
systemctl enable mysqld.service \\fedora中设为开机启动
接下来编辑配置文件
vi /etc/vsftpd.conf
在最后一行添加 local_root=/home/ftp \\文件默认上传到该路径
配置文件这里不做其他修改,使用默认即可,端口也用默认值
service vsftpd restart \\重启ftp使修改生效
chmod 777 /home/ftp \\给所有用户添加读写权限
以上的命令都要用root执行。到这里服务器端的配置就完成了,下面来说一下客户端(windows)怎么和我们刚搭好的ftp服务器间进行上传下载文件
打开cmd
输入 ftp ,前缀变成ftp> 即可
open 192.168.2...(ftp服务器的ip地址)
然后输入用户名密码登陆(这里默认不允许用root登陆,应使用其他账户)
提示230 loggin successful说明登陆成功
这时可以执行命令lcd 路径(如D:\ftp) 指定文件下载到本地目录 以后get时可以缺省
下载文件:get 服务器资源路径(如/home/test.txt) 本地目录(如D:\ftpdown\test.txt)
上传文件:put 本地资源路径 \\这里默认上传到之前配置的 local_root=/home/ftp
这样就基本上就包括了ftp的所有内容。
但是还有一个需要特别注意的地方,这是一个很简单但是困扰了我很久的问题,如下:
如果传输的是非二进制文件,比如文本文件,那么按照上面的方法完全没有问题
但是如果传输的是可执行文件,比如可执行的jar文件exe文件等一定要在传递之前
输入命令binary(使用二进制传输模式)否则会使文件在传输过程中发生损坏!切记!
这里有个报错425 failed to establish connection的解决办法的帖子
http://blog.sina.com.cn/s/blog_4da051a60101c8ny.html
内容如下
先到CMD或者linux终端用命令行模式ftp命令测试一下,
如果能登录,不能使用ls或者dir命令。
那就说明,主要问题在端口被防火墙控住。
提示语句:
200 PORT command successful. Consider using PASV.
425 Failed to establish connection.
这时候,可以在ftp下使用命令:quote PASV
试试用以被动模式连接。
一般DOS命令行下都是默认以PORT主动模式连接。
即,端口21监听,处理控制信息,再以端口20连接客户端进行数据传送。
而,经常的,通过外网的NAT的,基本端口20的数据连接都会被禁止掉。
所以,如果想对外网开放ftp,最好使用PASV模式。
PASV被动模式是指,以端口21监听,有连接请求时,随机开放一个比较大的端口号来处理数据传输。
vsftp中,通过编辑 /etc/vsftp.conf 实现启用PASV连接。
sudo vi /etc/vsftp.conf
在配置文件中添加下面语句:
pasv_enable=YES
pasv_min_port=6000
pasv_max_port=7000
也即,启动PASV连接模式,开放6000-7000端口号作为数据传送端口。
此外,如果是对外网开放,必须在路由器的转发规则中,开放21端口。
为了保险,可以将6000-7000端口也写入到iptables中白名单中。
命令:
sudo iptables -A INPUT -p tcp --dport 6000:7000 -j ACCEPT
在ubuntu中一般可以不用,因为ubuntu虽然有iptables,但默认是没有规则的,
也即,不会设置端口限制,但其他版本就最好加上哈。
此外,如果带有selinux的,最好也关闭。
ubuntu是默认没安装selinux。
像redhat、centOS之类的,
修改/etc/selinux/config文件中的SELINUX="" 为disabled ,然后重启。
这样设定后,一般就可以搞定了。
如果还不行,可以通过一下思路:
1、防火墙(本机、客户机)
2、FTP目录的权限
3、客户机是否是IPv6网络
4、客户机的网关限制了外网ftp
分享到:
相关推荐
Linux 搭建 FTP 服务器实现匿名上传 ...搭建 FTP 服务器实现匿名上传的功能需要安装 vsftpd 服务器包、创建供匿名用户下载的目录、配置 vsftpd 服务器使其允许匿名用户上传文件,最后重启 vsftpd 服务器以使配置生效。
Linux FTP服务器的搭建。Linux 平台下DNS服务器的搭建。
Linux FTP服务器搭建
linux 搭建 ftp 服务器
linux FTP服务器搭建,适合新手。
最近学习了Linux下FTP服务器的配置,所以总结了一下,希望对大家有所帮助,因知识有限,若有错误请大家谅解!
Linux搭建ftp服务器
其中,FTP作为其中共享手段存在已久,我们今天就来看看怎么搭建简单的FTP服务器吧。 FTP 是文件传输协议(File Transfer Protocol)的缩写。顾名思义,FTP用于计算机之间通过网络进行文件传输。你可以通过FTP在...
FTP 服务器是一种文件传输协议服务器,允许用户通过网络上传和下载文件。使用 Linux 系统搭建 FTP 服务器可以提高文件传输的效率和安全性。 四、搭建 SMB 服务器 SMB 服务器是一种服务器消息块服务器,允许用户...
LinuxFTP服务器配置实验报告整理.pdf
linux下搭建ftp服务器实验报告知识.pdf
Linux FTP 服务器上传文件夹时提示 550 错误问题解决方法 Linux FTP 服务器上传文件夹时提示 550 错误问题解决方法是指在 Linux 操作系统中,使用 FTP 服务器上传文件夹时,遇到 550 错误的问题解决方法。该问题是...
linux下搭建ftp服务器实验报告借鉴.pdf
本文件详细介绍了fedora10下ftp服务器的搭建以及文件上传,附带截图
开题报告(基于Linux系统云服务器的搭建与设计).docx开题报告(基于Linux系统云服务器的搭建与设计).docx开题报告(基于Linux系统云服务器的搭建与设计).docx开题报告(基于Linux系统云服务器的搭建与设计).docx开题报告...
如何搭建linux ftp,详细的配置方按!已经错误的排除
linux dhcp ftp 服务器搭建
在Red Hat9中配置ftp服务器,实现文件的上传与下载。