FTP或SFTP服务器与客户端映射

1.windows 下常用ftp服务器

FTP服务器(file transfer protocol server)是在互联网上提供文件存储和访问服务的计算机,他们依照ftp协议提供服务。简单地说,支持FTP协议的服务器就是FTP服务器。

FTP是仅基于TCP的服务,不支持UDP。

FTP服务器有2个端口,一个数据端口20和一个命令(控制)端口21 (端口可以修改)。
其中:21端口是用来连接的,20端口用于传输数据。
在进行数据传输时,客户端首先连接FTP服务器的21端口,给用户的认证,认证成功后,要传输文件时,服务器会开一个端口为20来进行传输文件。端口20才是真正传输所用到的端口,端口21只用于FTP的登录认证。我们平时下载文件时,会遇到下载99%时,文件下载无法完成的情况。其实是因为文件下载完毕后,还要在21端口再次进行用户认证,而下载文件的时间过长,客户机和服务器的21端口的连接会被服务器认为是超时连接而中断掉;解决方法是:设置21端口的响应时间。

FTP有主动模式和被动模式,主动模式时的数据端口随机分配,被动模式下才是上述所说中的20端口,这个端口可以修改。

对应有防护墙等网络权限限制的,FTP需要用被动模式,固定数据端口。

因此申请权限时需要申请两个端口。

以Serv-U和Xlight FTP服务器为例
1.1 Serv-U Server
修改默认FTP端口:
在这里插入图片描述
修被动模式时的数据端口:
在这里插入图片描述增加FTP访问用户和密码以及FTP目录:
在这里插入图片描述

1.2 Xlight FTP Server

同样使用Xlight FTP时,也需要注意时候主动还是被动模式,默认端口均可修改。Xlight FTP支持使用不同端口启动多个FTP服务或者SFTP。

在这里插入图片描述

协议的话支持两种:
FTP表示是FTP服务器,默认端口是21,被动模式至少需要两个网络端口,同Serv-U类似。
SSH2表示是SFTP服务器,默认端口是22,可修改,SFTP服务器的话远程访问权限网络端口只需要一个。

在这里插入图片描述

Xlight FTP 配置PASV 端口范围如下:
在这里插入图片描述

ftp目录可以挂载到linux下(类似mount),使用sshfs或者curlftpfs,以curlftpfs为例:
(1)安装 curlftpfs
apt-get install curlftpfs
(2)用curlftpfs命令挂载
curlftpfs -o codepage=utf8 ftp://username:password@127.0.0.1:21 /home/xxxx/workspace/ftp
codepage: 编码方式,一般用utf8,你也可以用gb2312
username: FTP用户名
password: FTP密码
127.0.0.1: FTP地址
端口:21 (默认21,可修改)

需要注意的是,你的FTP用户名如果含有【@】这类的特殊字符的话,请用【%40】来代替【@】。

挂载完毕后,挂载完毕后,我们只要进入 /home/xxxx/workspace/ftp 目录,就可以看到我们FTP服务器的文件了。

(3)卸载挂载

fusermount -u /home/xxxx/workspace/ftp或 umount /home/xxxx/workspace/ftp

(4)开机自动挂载

但是,挂载完毕后,我们每次重启系统,挂载点都会消失,因为这需要我们加入到开机自动挂载去,运行以下命令便可以了,记得里面的数据要替换过来。
echo “curlftpfs -o codepage=utf8 ftp://username:password@127.0.0.1:21 /home/xxxx/workspace/ftp” >> /etc/fstab

2.windows 下常用sftp服务器

2.1 Xlight FTP Server
使用Xlight FTP 配置sftp时和配置ftp类似,创建SFTP服务器是选择SSH协议,默认端口为22端口
在这里插入图片描述
和FTP一样配置用户和密码,还有SFTP根目录:
在这里插入图片描述
配置完启动即可。

验证SFTP服务器连通性:
使用XFTP测试SFTP连通是否正常,
在这里插入图片描述

登录登录后可看到SFTP根目录及其下文件,如下图所示:
在这里插入图片描述

使用ubuntu18.0.4系统自带的sftp命令测试,可用-P 指定sftp端口。

sftp -P 2100 admin@192.168.1.105
admin@192.168.1.105's password: 
Connected to 192.168.1.105.
sftp> ls

在这里插入图片描述
为了方面应用程序读写sftp文件数据,可以使用下面命令将sftp挂载到linux的文件目录(类似mount):
sshfs admin@192.168.1.105:/ /home/xxxx/workspace/sftp

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值