linux ftp服务器的搭建及文件的上传\下载

(适用于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的解决办法的帖子
[url]http://blog.sina.com.cn/s/blog_4da051a60101c8ny.html[/url]

内容如下
先到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
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值