找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 7513|回复: 31

新人贡献~关于远程IPV6 的FTP解析问题的解决方案 解决了!!

[复制链接]
发表于 2021-5-13 15:06 | 显示全部楼层 |阅读模式
本帖最后由 Janice91 于 2021-5-13 15:12 编辑

大家好 ,关于openwrt的FTP ipv6设置。我想有一部分是没找到最好的合适方案的 因为我找了很多相关的资料都没有找到合适的文章   本人也是刚好遇到这个问题 刚好解决了 所以回馈给大家 让大家尽量少走一点坑!!!

IPv6基本是都普及给大家的




【在这里我们先要确认下 自己的的ipv6地址】


一旦重启路由器ipv6的地址就会变 每次还要重新手动输入新的ipv6地址到FTP服务器里面,非常不方便


营运商默认给大家装的宽带默认是路由模式的



第一步:首先大家进去光猫里面 把路由模式改成桥接模式(每个营运商和每个地区的光猫超级管理员账户密码都不一样,方法自行百度)

注意事项:拨号那里必须选择IPV4&IPV6 两个模式。其他保持默认就可以了





第二部:软路由正常创建pppoe拨号 正常情况拨号上去就能正常上网了。这里就不多做介绍了!

              然后选择。  网络-接口-添加新接口



              防火墙设置:









第三部:操作到这里 就能正常获取到营运商给你门的ipv6地址了(注意事项:部分固件默认会把ipv6功能关的)



开启方法 :网络- dhcp/dns - 禁止解析IPV6解析DNS记录。 这里要把他关了  



LAN的ipv6设置如下





##########################################################################################

##########################################################################################






好了,这里重点了   我在这里说下。 默认情况下openwrt的FTP  ipv4和ipv6只能用一个 不能同时开启

想要双用必须改端口!!



ipv6的动态解析 绑定ddns 这里我也不说太多了。自行百度解决!  如果不行我可以出一个详细的

语音视频教程给大家 所有我有时间。给大家远程调试一下 交流交流



默认情况下FTP的ipv6的地址是::1的。  这里很关键!!!!!!!!!!!



我门首先要把ipv4的启动关了。    然后把ipv6的地址修改成::0   



这里很关键因为IPv6的地址格式问题  需要要改成::0才能自动更新到本路由器实时的的ipv6地址



这个时候就可以通过我们绑定的ipv6解析。 直接用域名访问了 而且ftp的ipv6地址会随着自己更新的地址自动更新到FTP里面



到最后,教程不是写的十分完整 只是针对给需要用到的朋友 因为网上这方面的资料和文章不多



遇到什么问题的可以评论留言 会及时回复 帮助有需要的朋友们



如果最后还是不行 就出视频教程!!!  方案可以很多 主要看大家的网络环境 !
ipv4的解析也可以和ipv6共存 互不影响









本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 3恩山币 +4 收起 理由
ssit*** + 2 很好,支持!
liao*** + 1 :: 和::0,看起来都一样,不折腾不知道,luc.
浪人*** + 1 几亿网民,我们俩竟然神奇的在恩山相遇了!来,1分也是分!

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
发表于 2021-5-13 19:54 | 显示全部楼层
打破零回复 多谢分享
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-5-14 16:57 | 显示全部楼层
本帖最后由 sasalemma 于 2021-5-14 20:46 编辑

呃,老铁,实际上不用这么麻烦的,我之前说两份配置的意思不是需要两个conf。

另外非原版的固件才有AAAA禁用解析,但凡原版的op没有这么脑残的设定。

=====================================================

若是需要自己把玩理解vsftpd的话,有兴趣可以看下以下的文字。基本ssh操作,就是说把玩vsftpd实际上就是把玩下conf,其他的一启动就没有别的事情了。luci界面可以说万年不用一下。

在openwrt中的vsftpd,现在一般最新版是3.0.3,luci界面是附加的,和luci-uhttpd一样,官方vsftpd中,只是有执行文件,没有其他了。

官方固件中,安装vsftp,ssh中直接用 opkg update && opkg install vsftpd-tls (建议安装tls版本,需要openssl支持)

tls版本,并启用数据和登录ssl加密,要不数据在wan口出到外网,实际上是裸奔形式。当然个人不注重数据完整性(不单是安全性问题)的情况,无视这个。

openwrt官方编译的vsftpd-tls版本,基本文件需求就3个

/usr/sbin/vsftpd —— 主程序、执行程序
/etc/vsftpd.conf —— 配置文件
/etc/init.d/vsftpd —— 服务启动项

还有一个附加的配置文件夹 /etc/vsftpd。

默认情况下,安装完之后,没有luci界面(界面是别人写的,实际上一个轻量级又安全的ftp是不需要界面的)

只有在op主界面——系统——启动项,有一个vsftp的启动项。

直接点启动的话,是直接运行/usr/sbin/vsftp,如果vsftpd.conf没有修改名字的话,但实际上是 /usr/sbin/vsftp(空格)/etc/vsftpd.conf

毕竟年代久远,vsftpd的启动项是非常简陋,还是旧版的启动,vi或则nano打开/etc/init.d/vsftpd 会看到类似的

#!/bin/sh /etc/rc.common
# Copyright (C) 2006-2011 OpenWrt.org

START=50

start() {
        mkdir -m 0755 -p /var/run/vsftpd
        service_start /usr/sbin/vsftpd
}

stop() {
        service_stop /usr/sbin/vsftpd
}

这样。vsftp中  /var/run/vsftpd 这个文件必须有,虽然运行时并不需要写入什么,但如果没有就会有200返回错误。

然后说重点:/etc/vsftpd.conf,说这个前先说说其他的,是关于监听端口的问题。

========================================

监听端口的理解,比如某个web程序,nginx 或者 IIS 又或则 uhttpd,监听端口就意味这个在哪里提供服务

ssh进入op后,netstat(空格)-ln,就能看见各种服务监听的端口了,http,ftp是tcp服务,所以在tcp里找,比如80。

A1:

比如默认情况下的ipv4,监听 0.0.0.0:80 ,这个在路由器系统里面,是指全端口监听。

全端口就意味这个,无论你 LAN 口设置为 192.168.1.1 还是 192.168.2.1 还是 10.10.10.1,只要打开 LAN 口端口设置的 IP + 80端口,就能访问到web页面。

但不止是这样,因为全端口,为什么 WAN 口不行,只是因为防火墙而已,把防火墙的 WAN 口打开 80 端口。WAN口的IP + 80端口也是可以访问到web页面的。

当然监听服务,可以直接在配置里修改监听的IP地址,比如 uhttpd 的监听, 如果你修改了 "list listen_http       0.0.0.0:80" 为 "list listen_http       192.168.1.1:80"

如果 LAN 口的 IP 地址需要为 10.10.10.1,那么你就不能进入web设置页面了



A2:

IPV6的监听和IPV4是一样的,只是写法不一样,全网口监听是 ":::80",ipv6的写法是双冒号表示全网口,再一个冒号接端口。

大部分时候和 IPV4的特性一样,也可以开放WAN口端口进行访问。

IPV6和IPV4正常情况下是孤岛,就是各自的监听各管各的,所以实际上不存在你说的会产生端口冲突,因为本来链路是不在一起的。

所以 像 uhttpd 的配置中 ipv4和ipv6 是分别监听 0.0.0.0:80 和 :::80

但有特殊例子,vsftpd 算一个。

====================================================

默认情况下 vsftpd.conf 里只有 IPV4的 监听

listen=YES —— 监听 ipv4
#listen_ipv6=YES —— 监听 ipv6
listen_port=21 —— 监听端口
pasv_enable=YES —— 被动模式
pasv_min_port=2100—— 被动模式的最小端口
pasv_max_port=2200 —— 被动模式的最大端口


监听ipv6默认是没有的,但可能你搜索很多解决方案都是"双配置",什么鬼的,或者加上 listen_ipv6=YES

比如把上面的配置注销掉 listen_ipv6=YES,变成


listen=YES —— 监听 ipv4
listen_ipv6=YES —— 监听 ipv6
listen_port=21 —— 监听端口
pasv_enable=YES —— 被动模式
pasv_min_port=2100—— 被动模式的最小端口
pasv_max_port=2200 —— 被动模式的最大端口


注定不会成功的,会出现 500错误,并提示two copie 什么鬼,所以说这么多,请你理解下,写成指监听ipv6就行了,就是双配置了。

listen=NO —— “不”监听 ipv4
listen_ipv6=YES —— 监听 ipv6
listen_port=21 —— 监听端口
pasv_enable=YES —— 被动模式
pasv_min_port=2100—— 被动模式的最小端口
pasv_max_port=2200 —— 被动模式的最大端口


启动后你会发现,vsftpd只是监听了 ":::21",只有监听了ipv6全网口对不对?!放心啦,实际上就是双监听了,就是特殊情况。

你访问 192.168.1.1 的21端口,也是可以访问到 FTP 的。

然后结合上面说的全网口监听,实际上压根不用管你wan口ipv4还是ipv6的变动,ddns能把网址转换成目前的wan口地址即可,即WAN口的连通性

因为监听是没有指定网口,所以都是可以提供服务,如果不行,只有一个问题:防火墙 !!!

然后为什么还建议开启 被动模式,被动模式和主动模式,主要在于被动模式,服务端的端口可以自定义,主动模式的端口,比如外网的手机端,是无法开启自定义端口还能联通的。

只是为了网络的连通性,建议开启被动模式,还要配置好被动端口的防火墙(对,也是防火墙)

============================================


说到防火墙,实际上就不要命令操作了,毕竟界面操作超级简单。

web设置页面——网络——防火墙——通信规则。在通信规则里面添加规则,如下:



只要开放 wan区域到 此设备 即可,FTP是TCP应用可以只选TCP,端口是单个就填单个,是一段的就用 2100-2200。

高级里面可以只开放ipv6或者ipv4+ipv6



保存规则后确认保存应用,就生效了。这时就可以从wan口访问op上的vsftpd服务了。

没有那么多烦恼的。

========================================

再关于 WAN 口 和 LAN 口的 ipv6问题

各个省市不一样,分两种,一种是没有DHCPv6-PD的,只有wan口放了一个全球单播地址,就是只有wan口有地址,另一个是有DHCPv6-PD,俗称前缀。

无论是那种,WAN口那个IPV6地址(非wan口拨号时ipv4那个FE80的链路地址)都是可联通,而且无论是打算用LAN口的PD分配的 "前缀::1"地址或 WAN口的 ipv6地址做ddns。

防火墙都需要开启 WAN 区域到此设备的端口,这样访问才会联通。

而上面也说了,监听,很多软件监听为了方便都是全网口监听的,只是WAN这边一般有防火墙的防护,所以通过WAN无论是ipv4还是ipv6都无法访问,只是墙没开。


另外,确实 vsftpd还有一个高级玩法,就是虚拟IP监听,说白了和nginx,uhttpd的多服务器一样,可能你修改ip是为了这个。

比如 ipv4 监听 0.0.0.0:21,但还是可以设置一个 ::0:22这样的第二个vsftpd服务器。

但我上面也说,在2.1版后可能是,只监听ipv6实际上就是双栈了。不用那么折腾。


=========================================================

关于官方op,非第三方,你新建一个pppoe的拨号,若有hdcpv6-pd,也会自动生成一个 pd端口,然后lan按照你的配置,开启




就能给分配pd前缀到路由和lan下设备了。注意红框,官方固件会自动生成一个虚拟的pd端口,不用像第三方固件那么麻烦。




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

armbian的vxftpd有配置方法吗,还有docker的openwrt 如何开启ipv6  详情 回复 发表于 2022-2-6 14:05
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-5-15 15:47 | 显示全部楼层
sasalemma 发表于 2021-5-14 16:57
呃,老铁,实际上不用这么麻烦的,我之前说两份配置的意思不是需要两个conf。

另外非原版的固件才有AAAA ...

哈哈,你这个算是砸场子的么……这个教程针不戳

点评

高手,哈哈哈 大概能理解。就是不会操作  详情 回复 发表于 2022-2-6 14:08
高手,哈哈哈 大概能理解。就是不会操作  详情 回复 发表于 2022-2-6 14:08
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-5-15 19:28 | 显示全部楼层
dgyangxf 发表于 2021-5-15 15:47
哈哈,你这个算是砸场子的么……这个教程针不戳



没有,之前发过帖子,时间不对没有回复。

也因为之前自己也很纠结过这个问题,当时认为只能二选一,后来实践出真知而已。

监听ipv6的vsftpd,ipv4接入是以4to6方式的,开启日志就能看到比如 192.168.1.1的服务端,192.168.1.107的客户端,日志显示客户端ip为  ::ffff:192.168.1.107。

应该说类似于 socat 方式。变相监听了 ipv4的 端口。

==== 基本运行相关 ======
background=YES —— 运行模式 standalone 一个说法
listen=NO —— 监听ipv4
listen_ipv6=YES —— 监听ipv6
listen_port=21 —— 监听端口
pasv_enable=YES —— 被动模式
pasv_min_port=2100 —— 被动模式最小端口
pasv_max_port=2200 —— 被动模式最大端口
max_clients=10 —— 最大客户端连接数
max_per_ip=100 —— 每个ip最大连接数

==== 用户相关 ======
anonymous_enable=NO —— 允许匿名用户
local_enable=YES —— 允许本地用户
write_enable=YES —— 允许可写入
local_umask=022 —— 上传文件属性掩码(反过来的掩码,和smb类似的)
check_shell=NO —— 一般没有特别意义,检查用户的shell,就是/sbin/false 这个还是可以操作shell
chroot_local_user=YES —— 限制本地用户浏览上级目录
chroot_list_enable=NO —— 是否开启限制所有用户浏览上级目录
chroot_list_file=/etc/vsftpd/chroot.list —— 限制的用户列表,文件可以自定义路径
allow_writeable_chroot=YES —— 本级目录可写,就是登录时的根目录
#dirmessage_enable=YES —— !!
#ftpd_banner=Welcome to blah FTP service. —— 这些你懂的,一般关闭会好些,外网减少别人知道你是ftp。
session_support=NO —— 这个忘记了。

userlist_enable=YES —— 访问用户列表开启
userlist_deny=NO —— 这个和上一个搭配起作用的。
userlist_file=/etc/vsftpd/vsftpd_users
user_config_dir=/etc/vsftpd/vsftpd_users_config —— 这个可以用来定义虚拟用户的根目录和其他某个用户的自定义配置。文件夹形式,自定义用户,比如 A,就建立一个A文件,里面写 chroot_root=其他根路径。



====== 日志相关 =======
dual_log_enable=YES —— 双日志开启
syslog_enable=NO —— 写入系统日志,就是op系统日志
vsftpd_log_file=/etc/vsftpd/vsftpd.log —— 日志文件路径
xferlog_enable=YES —— xfer格式日志
xferlog_file=/etc/vsftpd/vsftpd_xfer.log —— xfer格式日志文件路径
xferlog_std_format=YES —— 格式


还有一个

log_ftp_protocol=YES —— 开启日志后开启这个,会记录从握手到传输断开所有操作,一般用于debug查故障,影响性能的选项。

==== 剩下就是ssl ====

ssl_enable=YES —— 启用 ssl tls
allow_anon_ssl=NO —— 匿名用户使用 ssl
force_local_data_ssl=YES —— 强制数据传输用ssl方式
force_local_logins_ssl=YES —— 强制登陆使用ssl方式
ssl_tlsv1=YES —— 一般都支持tls ,安全性更好
ssl_sslv2=NO —— 默认为no
ssl_sslv3=NO —— 默认不启动和上面一样,除非你不需要tls
require_ssl_reuse=NO —— 某些情况下握手不成功,需要改成NO
#seccomp_sandbox=NO —— 这个对op系统无效似乎,因为是沙盒的。
ssl_ciphers=HIGH —— 这个加密方式,还是强度忘了。
#debug_ssl=YES —— 如果需要debug ssl就开。
rsa_cert_file= 证书文件路径
rsa_private_key_file= 证书私钥路径


证书可以自己用openssl生成,也可以像申请web页面的ssl证书一样,域名证书,那个ssl也是可以的。

如果是以域名方式接入,建议用域名ssl证书。


点评

你这个看到头晕了师兄!哈哈  详情 回复 发表于 2021-10-15 01:39
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-5-16 01:26 | 显示全部楼层
sasalemma 发表于 2021-5-15 19:28
没有,之前发过帖子,时间不对没有回复。

也因为之前自己也很纠结过这个问题,当时认为只能二选一 ...

配置文件这些自己翻译一下基本就能明白,我之前设置好了windows资源管理器无法访问,一度以为是防火墙的问题,今天才发现是windows10系统默认没有开启被动模式访问...
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-9-30 21:21 | 显示全部楼层
楼主 我按照你的 设置 也发现开了ipv6 用ipv4 的本地ip 连接ftp 就连不上了   就是还是 v4 和v6 只能用一个  这下面回复的太乱了  我看不懂   接下来要干什么才能v4 和 v6  ftp都能用

点评

那里设置不行了? 可以把你设置发出来看看吗  详情 回复 发表于 2021-10-15 01:36
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2021-10-15 01:36 | 显示全部楼层
张金多 发表于 2021-9-30 21:21
楼主 我按照你的 设置 也发现开了ipv6 用ipv4 的本地ip 连接ftp 就连不上了   就是还是 v4 和v6 只能用一个 ...

那里设置不行了? 可以把你设置发出来看看吗
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2021-10-15 01:39 | 显示全部楼层
sasalemma 发表于 2021-5-15 19:28
没有,之前发过帖子,时间不对没有回复。

也因为之前自己也很纠结过这个问题,当时认为只能二选一 ...

你这个看到头晕了师兄!哈哈
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-11-8 23:58 来自手机 | 显示全部楼层
按照楼主方法,还是不可以。ipv6可以访问路由器,FTP登录不了

点评

我和你相同的问题,兄弟,使用ipv6地址和阿里云解析的域名都可以访问路由器,ipv4 ftp也可以上,但是ipv6的ftp登不上去,不知道你解决了没有,可否告知下方法,谢谢了。  详情 回复 发表于 2021-11-20 23:23
截图发出来看看  详情 回复 发表于 2021-11-14 04:18
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2021-11-14 04:18 | 显示全部楼层
si001 发表于 2021-11-8 23:58
按照楼主方法,还是不可以。ipv6可以访问路由器,FTP登录不了

截图发出来看看
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-11-16 20:48 来自手机 | 显示全部楼层
请问,问题出在哪里?谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-11-20 23:23 | 显示全部楼层
si001 发表于 2021-11-8 23:58
按照楼主方法,还是不可以。ipv6可以访问路由器,FTP登录不了

我和你相同的问题,兄弟,使用ipv6地址和阿里云解析的域名都可以访问路由器,ipv4 ftp也可以上,但是ipv6的ftp登不上去,不知道你解决了没有,可否告知下方法,谢谢了。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-11-21 20:24 | 显示全部楼层
感谢博主,按照说明已经实现了ipv6 ddns转发到域名的ftp访问,但是直接如何设置ipv4呢,想着内网使用ipv4 ftp速度上更快点,麻烦再出个教程,谢谢啦
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-2-3 22:28 来自手机 | 显示全部楼层
楼主威武,我现在都用ipv6访问,省了映射端口,真的方便啊
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-25 19:04

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表