热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

体积小巧的vsftpd与pureftpdDocker镜像在Unraid系统中的详细配置指南:支持TLS加密及IPv6协议

本文详细介绍了如何在Unraid系统中配置体积小巧的vsftpd和Pure-FTPdDocker镜像,以支持TLS加密和IPv6协议。通过这些配置,用户可以实现安全、高效的文件传输服务,适用于各种网络环境。配置过程包括镜像的选择、环境变量的设置以及必要的安全措施,确保了系统的稳定性和数据的安全性。

体积很小的vsftpd_pure-ftpd_docker_在unraid中的配置_支持TLS和ipv6

转载注明来源: 本文链接 来自osnosn的博客,写于 2021-06-02.

当需要传个大量的文件给朋友的时候,可以建个ftp服务。

家里的宽带已经有公网ipv6了。

把文件放家里,共享出去,让朋友方便的时候自己下载。

如果你用的不是unraid。但能装docker。此文也能参考。


配置环境



  • unraid 6.9.2。


安装 docker 镜像 bfren/ftps



  • 是vsftpd-3.0.5,只支持 tls-1.2。不完美。

  • 镜像包 7.4MB,安装完占用 18.7MB。

  • 在 unraid 的 APPS 中搜索 ftps tls。能搜到一款。


  • 点击 Install 安装。

  • 配置

    • Container Path 1:/files 映射到 /mnt/user/appdata/bfren_ftps/files

    • Container Path 2:/ssl 留空。

    • Container Variable 6:FTPS_USER 自己设置一个。

    • Container Variable 7:FTPS_PASS 自己设置一个。

    • Container Variable 8:FTPS_EXTERNAL_IP 写两个冒号 "::"。

    • 其他默认。

    • 再根据自己需要,添加映射别的目录。



  • 只支持到 TLS-1.2。

  • 如果你有公网IPv4的话,在你的路由器上,设置 IPv4 的端口映射。


解决 IPv6 的访问



  • 在 docker 管理界面,找到这个 bfren/ftps ,编辑它。

    点击 右上角 的 BASIC VIEW 变为 ADVANCED VIEW


  • Network Type: 选择 Custom: br0

    指定一个内网的 IPv4 地址,比如 192.168.1.22。使用一个内网中,没有使用的IP,避开unraid,路由器的IP。

    高级视图编辑中,Extra Parameters:加入参数。增加在后面,原有的参数保留,不删除。多个参数之间,用空格隔开。

    --sysctl net.ipv6.conf.all.disable_ipv6=0 --sysctl net.ipv6.conf.eth0.use_tempaddr=2

    这样,这个docker就会获得一个内网的ipv6,和一个eui64的公网ipv6。


  • IPv4 就是你指定的 192.168.1.22

    还要把这个 IPv6 找出来。




  • 启动这个docker。

    • 进入这个docker的终端。

      修改 /etc/bf/init.d/13-vsftpd-conf,在文件的末尾加上一行,

      sed -i 's/^listen=YES/listen=NO/g;s/^#listen_ipv6=YES/listen_ipv6=YES/g' /etc/vsftpd/vsftpd.conf; echo "listen_port=2100" >> /etc/vsftpd/vsftpd.conf;



  • 重启这个docker。

  • 用ipv6访问,ftp的端口是2100。

  • 这时候,ipv4的支持就有问题了。能登陆,不能列目录,不能上传/下载。


安装 docker 镜像 crazymax/pure-ftpd



  • 是pure-ftpd-1.0.50,支持 tls-1.3。推荐用这个

  • 镜像包 19.4MB,安装完占用 63.1MB。

  • 在 unraid 的 APPS 中搜索 ftps tls。能搜到一款。


  • 点击 Install 安装。

  • 配置

    • Appdata:/data 映射到 /mnt/user/appdata/crazymax-pure-ftpd/

    • FTP Folder:/home 映射到 /mnt/user/crazymax-pure-ftpd/

    • 其他默认。

    • 再根据自己需要,添加映射别的目录。



  • 根据 【github上的说明】

    创建 用户pureftpd-dhparams.pem,pureftpd.pem,pureftpd.flags


  • 重启docker,就有TLS支持,并且能登陆了。支持TLS-1.3。

  • 默认不支持 ASCII 方式传输,只支持 binary 方式。记得修改客户端的配置。否则文本类的文件会上传/下载失败




  • 如果你有公网IPv4的话,在你的路由器上,设置 IPv4 的端口映射。


解决 IPv6 的访问



  • 在 docker 管理界面,找到这个 crazymax/pure-ftpd ,编辑它。

    点击 右上角 的 BASIC VIEW 变为 ADVANCED VIEW

  • Network Type: 选择 Custom: br0

    指定一个内网的 IPv4 地址,比如 192.168.1.22。使用一个内网中,没有使用的IP,避开unraid,路由器的IP。

    高级视图编辑中,Extra Parameters:加入参数。增加在后面,原有的参数保留,不删除。多个参数之间,用空格隔开。

    --sysctl net.ipv6.conf.all.disable_ipv6=0 --sysctl net.ipv6.conf.eth0.use_tempaddr=2

    这样,这个docker就会获得一个内网的ipv6,和一个eui64的公网ipv6。

  • IPv4 就是你指定的 192.168.1.22

    还要把这个 IPv6 找出来。

  • 启动这个docker。

    • 进入这个docker的终端。

      修改 /etc/cont-init.d/01-config.sh

      注释掉两行 FLAGS ="$FLAGS --bind 0.0.0.0,2100" , FLAGS ="$FLAGS --ipv4only"

      增加一行FLAGS ="$FLAGS --bind 2100"




  • 重启这个docker。

  • 同时支持ipv4和ipv6访问,ftp的端口是2100。



转载注明来源: 本文链接 https://www.cnblogs.com/osnosn/p/16341795.html

来自 osnosn的博客 https://www.cnblogs.com/osnosn/
.



推荐阅读
  • Android LED 数字字体的应用与实现
    本文介绍了一种适用于 Android 应用的 LED 数字字体(digital font),并详细描述了其在 UI 设计中的应用场景及其实现方法。这种字体常用于视频、广告倒计时等场景,能够增强视觉效果。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 本文介绍如何在现有网络中部署基于Linux系统的透明防火墙(网桥模式),以实现灵活的时间段控制、流量限制等功能。通过详细的步骤和配置说明,确保内部网络的安全性和稳定性。 ... [详细]
  • 深入解析TCP/IP五层协议
    本文详细介绍了TCP/IP五层协议模型,包括物理层、数据链路层、网络层、传输层和应用层。每层的功能及其相互关系将被逐一解释,帮助读者理解互联网通信的原理。此外,还特别讨论了UDP和TCP协议的特点以及三次握手、四次挥手的过程。 ... [详细]
  • 科研单位信息系统中的DevOps实践与优化
    本文探讨了某科研单位通过引入云原生平台实现DevOps开发和运维一体化,显著提升了项目交付效率和产品质量。详细介绍了如何在实际项目中应用DevOps理念,解决了传统开发模式下的诸多痛点。 ... [详细]
  • 本文详细介绍了网络存储技术的基本概念、分类及应用场景。通过分析直连式存储(DAS)、网络附加存储(NAS)和存储区域网络(SAN)的特点,帮助读者理解不同存储方式的优势与局限性。 ... [详细]
  • 本文介绍了一种适用于小型创业公司的小规模每日数据备份及健康检查的自动化解决方案。通过简单的Shell脚本实现本地数据库的每日全量备份,并将备份文件上传至中心备份服务器。同时,编写了自动检测脚本来确保备份的完整性和及时性,一旦发现异常,会通过邮件和短信通知相关人员。 ... [详细]
  • 本文详细介绍了 org.apache.commons.io.IOCase 类中的 checkCompareTo() 方法,通过多个代码示例展示其在不同场景下的使用方法。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 本文详细介绍了 com.facebook.drawee.view.SimpleDraweeView 中的 setScaleType 方法,提供了多个实际代码示例,并解释了其在不同场景下的应用。 ... [详细]
  • 本文详细介绍了如何准备和安装 Eclipse 开发环境及其相关插件,包括 JDK、Tomcat、Struts 等组件的安装步骤及配置方法。 ... [详细]
  • 如何将本地Docker镜像推送到阿里云容器镜像服务
    本文详细介绍将本地Docker镜像上传至阿里云容器镜像服务的步骤,包括登录、查看镜像列表、推送镜像以及确认上传结果。通过本文,您将掌握如何高效地管理Docker镜像并将其存储在阿里云的镜像仓库中。 ... [详细]
  • 深入解析Serverless架构模式
    本文将详细介绍Serverless架构模式的核心概念、工作原理及其优势。通过对比传统架构,探讨Serverless如何简化应用开发与运维流程,并介绍当前主流的Serverless平台。 ... [详细]
author-avatar
四只猪1984
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有