V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
通过以下 Referral 链接购买 DigitalOcean 主机,你将可以帮助 V2EX 持续发展
DigitalOcean - SSD Cloud Servers
Roboo
V2EX  ›  VPS

有人在 Azure 上成功部署了 ftp 碼?

  •  
  •   Roboo · 2014-05-22 20:04:45 +08:00 · 1528 次点击
    这是一个创建于 3837 天前的主题,其中的信息可能已经有所发展或是发生改变。
    一开始是端口总起不来,后来删了又新建了一个才打开
    问题是能连接上,用户也能通过认证但就是提示如下错误 #被动模式#

    命令: TYPE I
    响应: 200 Switching to Binary mode.
    命令: PASV
    响应: 227 Entering Passive Mode (10,207,186,14,90,190).
    状态: 服务器发回了不可路由的地址。使用服务器地址代替。
    命令: LIST
    错误: 连接超时
    错误: 读取目录列表失败

    如果是#主动模式#的话提示是这样的

    响应: 227 Entering Passive Mode (10,207,186,14,89,239).
    状态: 服务器发回了不可路由的地址。被动模式失败。
    命令: PORT 192,168,2,4,7,11
    响应: 500 Illegal PORT command.
    错误: 读取目录列表失败

    不知道是什么原因
    服务端是vsftpd 3.02
    系统ubuntu 14.04
    19 条回复    2014-05-23 21:05:29 +08:00
    Roboo
        1
    Roboo  
    OP
       2014-05-22 20:07:51 +08:00
    以下为帐号 提供各位测试 #我用filezilla@windows 和andftp@android 都不行
    host:roboous.chinacloudapp.cn
    port:21
    username:ftpuser
    passwd:ftpuser
    fyhqy
        2
    fyhqy  
       2014-05-22 20:10:31 +08:00
    ssh登录
    查看vsftp的进程可以看到使用的是那个端口.
    然后在控制面板里面添加端口号.\ps 他的后台和系统的iptables 不搭界
    不知道为什么Azure的这个安全规则是谁自定的,没办法一下指定端口范围.只能一个个的去添加.
    不知道是我火星还是没找到捷径
    wzxjohn
        3
    wzxjohn  
       2014-05-22 20:11:06 +08:00
    你的20和21端口都在端点里面添加了么?
    wzxjohn
        4
    wzxjohn  
       2014-05-22 20:12:39 +08:00
    @fyhqy 捷径是有的,但是只有一次。。。在你创建的时候可以批量增加,之后似乎只能一个一个加,除非你用命令行工具。
    alex321
        5
    alex321  
       2014-05-22 20:26:23 +08:00
    成功部署 n 天了,需要打开对应的端点。并且设置 20、21 例外。
    ooh
        6
    ooh  
       2014-05-22 21:14:12 +08:00
    sftp,不要去折腾vsftp了,我反正没用顺过
    Roboo
        7
    Roboo  
    OP
       2014-05-22 21:14:43 +08:00
    @wzxjohn 在端点那里就是不行的情况下我才删除重新装的

    @alex321 是在vsftpd里设置端口例外?

    @fyhqy 20口貌似没起来 但是被动模式应该没影响吧

    我发现标题起错了,应该改成Azure上搭建ftp服务器无法使用怎么办? 哈哈
    wzxjohn
        8
    wzxjohn  
       2014-05-22 22:03:42 +08:00   ❤️ 1
    @Roboo 我似乎说错了。仔细想了一下主动被动的流程,被动是肯定成功不了的。因为被动模式的话你要连接服务器的>1024的随机端口。但是你不可能在端点里添加所有可能的被动端口,所以注定失败。所以你只能用主动模式。
    根据你的日志,你使用了路由器上网,你的IP是内网IP 192.168.2.4,这也就是为什么主动模式无法成功的原因,因为服务器连接不到你提供的端口,所以主动模式也失败了。

    在Azure上唯一可行的办法只有你弄个外网IP了。除此之外似乎真的不行了。。。
    Roboo
        9
    Roboo  
    OP
       2014-05-22 22:13:25 +08:00 via Android
    @wzxjohn 试用版跟客服要外网IP会给分配吗?
    我觉得可能性不大。。。。
    csx162
        10
    csx162  
       2014-05-22 22:13:33 +08:00
    现在还能注册Azure么?
    wzxjohn
        11
    wzxjohn  
       2014-05-22 22:14:57 +08:00
    @Roboo 外网IP都是给的啊,所有的Azure都是有外网IP的。只是开的端口数量是有限制的。
    wzxjohn
        12
    wzxjohn  
       2014-05-22 22:15:19 +08:00   ❤️ 1
    @csx162 我这还有几个码,不知道能不能用,扔出去好了。
    11138
        13
    11138  
       2014-05-22 22:17:37 +08:00   ❤️ 1
    被动模式可以设置端口的范围,然后开放这些端口。

    pasv_enable=YES
    pasv_min_port=port number
    pasv_max_port=port number
    Roboo
        14
    Roboo  
    OP
       2014-05-22 22:26:44 +08:00 via Android
    @wzxjohn 额 不对 外网IP有,但是虚拟机是分配的内网IP,如果虚拟机分配到外网IP才不会有这事儿
    @11138 这个靠谱 明天试一下 我只设置了最大,没设置最小,如果两个设置相同的即指定端口没准可以
    wzxjohn
        15
    wzxjohn  
       2014-05-22 22:34:27 +08:00
    @Roboo 一样会有的。。。只要外层有防火墙,分给你啥都没用=。=
    @11138 vsftpd没有具体用过,不太熟悉,@Roboo 可以参考这个试一下。
    csx162
        16
    csx162  
       2014-05-22 22:51:13 +08:00
    @wzxjohn 谢谢,来一枚试试
    cs-x@扣扣.com
    Tink
        17
    Tink  
       2014-05-22 23:59:27 +08:00 via iPhone
    Vsftp的配置文件简直反人类
    Droog
        18
    Droog  
       2014-05-23 11:28:12 +08:00
    apache ftpserver部署成功。
    被动模式可以启动,上传、下载、列表无问题。
    Roboo
        19
    Roboo  
    OP
       2014-05-23 21:05:29 +08:00
    azure这个端口真是坑爹
    现在已经搞定了
    端口开启的情况下,添加如下四行即可

    pasv_promiscuous=YES
    pasv_enable=YES
    pasv_min_port=port number
    pasv_max_port=port number

    多谢各位
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   930 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 22:14 · PVG 06:14 · LAX 14:14 · JFK 17:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.