码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 群晖外网访问终极解决方法:IPV6+阿里云ddns+ddnsto


    写在前面的话

    受够了群晖的quickconnet的小水管了,急需一个新的解决方法,这是后发现移动没有公网IP,只有ipv6(公网的),时候有小伙伴要问,要是没有ipv6就没办法访问群晖了吗?
    不,当然不是,这时候就轮到ddnsto出马了,这就是解决没有公网ipv4的解决方法,顺便说一下,因为我需要更改群晖的默认端口,所以就算是群晖洗白了,quickconnet也是无法使用的,所以这个方法也是省了洗白的这一步。但是不洗白有没有影响这个就不知道了。
    还有使用这个方法的是需要花钱的,想着白嫖的看到这句话的时候就可以略过了!!!!

    群晖外网访问终极解决方法:IPV6+阿里云ddns+ddnsto

    • 写在前面的话
    • 一、软硬件清单
    • 二、实现阿里云ddns
      • 1.购买域名,如果这步不会的话,麻烦去问度娘
      • 2.获取accessKeyId和accessSecret
      • 3.环境安装,阿里云ddns需要用到python环境,所以需要安装Python环境,由于群晖7.1.1自带Python,所以Python不需要安装,只需要安装Python-pip,群晖需要开启ssh,打开家目录
      • 4.开启ssh
      • 5.打开家目录
      • 6. 使用ssh软件连接群晖,我这里使用的是putty,使用其他的也可以。
      • 7. 输入账户名和密码,密码不显示
      • 8. pip3 安装、配置。群晖默认不支持 apt-get 之类的命令,使用 wget 下载 get-pip.py 安装 pip。
    • 三、设置定时任务
    • 四、ddnsto的安装
      • 1.从ddnsto官网[下载](https://fw.koolcenter.com/binary/ddnsto/synology/)合适自己的ddnsto的安装包,我的是

    一、软硬件清单

    1. 首先需要一台已经安装好系统的黑群晖或者白群晖
    2. 需要在阿里云注册的一个域名
    3. 需要阿里云的RAM账号
    4. 群晖系统为7.1.1
    5. Python3、python3-pip

    二、实现阿里云ddns

    1.购买域名,如果这步不会的话,麻烦去问度娘

    2.获取accessKeyId和accessSecret

    可以在阿里云控制台个人中心直接获取,但是一般建议使用RAM角色来进行权限控制,这样这个accessKey和accessSecret就只能操作域名,不能操作其他的资源,相对会比较安全。关于RAM用户

    3.环境安装,阿里云ddns需要用到python环境,所以需要安装Python环境,由于群晖7.1.1自带Python,所以Python不需要安装,只需要安装Python-pip,群晖需要开启ssh,打开家目录

    4.开启ssh

    在这里插入图片描述

    5.打开家目录

    在这里插入图片描述

    6. 使用ssh软件连接群晖,我这里使用的是putty,使用其他的也可以。

    在这里插入图片描述

    7. 输入账户名和密码,密码不显示

    在这里插入图片描述

    8. pip3 安装、配置。群晖默认不支持 apt-get 之类的命令,使用 wget 下载 get-pip.py 安装 pip。

    wget -O /tmp/get-pip.py 'https://bootstrap.pypa.io/get-pip.py'
    
    python3 /tmp/get-pip.py
    # 权限不够的话,加上 --user
    # python3 /tmp/get-pip.py --user
    
    rm /tmp/get-pip.py
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    安装之后提示 pip3 的安装目录(一般是 /homes/USERNAME/.local/bin)不在系统的环境变量里。
    在这里插入图片描述

    要先跳到安装目录里,我这里的是这个

    cd .local/bin
    ./pip3 -V
    ./pip3 list
    
    • 1
    • 2
    • 3

    配置环境变量
    所以我手动把 pip3 目录/var/services/homes/admin/.local/bin加入环境变量。

    nano ~/.bash_profile
    
    # 写入以下内容
    export PATH=$PATH:/var/services/homes/admin/.local/bin
    # 保存、退出
    
    # 运行以下命令使生效
    source ~/.bash_profile
    
    # 最后可以检查一下
    echo $PATH
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    更改源

    pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
    pip3 config list
    
    • 1
    • 2

    pip3 卸载

    python3 -m pip uninstall pip
    
    • 1

    安装阿里云SDK和其他第三方库

    pip3 install --index-url https://mirrors.aliyun.com/pypi/simple aliyun-python-sdk-core-v3
    pip3 install --index-url https://mirrors.aliyun.com/pypi/simple aliyun-python-sdk-domain
    pip3 install --index-url https://mirrors.aliyun.com/pypi/simple aliyun-python-sdk-alidns
    pip3 install --index-url https://mirrors.aliyun.com/pypi/simple requests
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    下载程序主体
    Gitee下载
    GitHub下载
    为作者求Star
    将 aliddns.py文件下载下来。
    然后将其放在用户文件夹内,具体怎么放请自行百度
    在用户文件夹内创建一个名为alidns的文件夹,将下载好的aliddns.py放在里面。
    修改配置文件
    进入aliddns文件夹,使用Vi进行编辑aliddns.py,或者是nano,这个需要手动安装。
    在这里插入图片描述
    Vi编辑保存是esc-:wq
    nano是Ctrl+x+y保存文件,然后修改aliddns.py的权限
    cd进去alidns文件夹内,输入:

    sudo chmod -R 775 alidns.py
    
    
    • 1
    • 2

    输入下面代码进行验证

    python3 aliddns.py
    
    • 1

    在这里插入图片描述
    运行成功的图

    三、设置定时任务

    切换root用户,输入sudo -i
    在这里插入图片描述
    切换到root用户之后,我们就可以使用文本编辑工具(vim或者nano)来编辑crontab的计划任务了。

    vim /etc/crontab
    MAILTO=""PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
    #minute hour    mday    month   wday    who command0 0 * * * echo "hello synology"
    
    #例如:每隔一分钟往tmp目录写入一个以时间戳命名的文件
    */1 * * * *  root touch /tmp/$(date +\%Y\%m\%d\%H\%M\%S)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述
    最后 restart 一下 crontab 服务就可以了,以下是 DSM 6+ 重启 crontab 的方式:

    synoservice --restart crond
    
    • 1

    如果是 DSM 7+ 系统则运行 synosystemctl restart crond 命令来重启 crontab

    四、ddnsto的安装

    1.从ddnsto官网下载合适自己的ddnsto的安装包,我的是

    在这里插入图片描述
    然后我就偷个懒不写了,ddnsto官网有教程

  • 相关阅读:
    曾仕强讲道德经系列视频合集百度网盘资源
    java基于Springboot+vue的实验室设备申请预约管理系统 elelmentui 前后端分离
    Vue条件渲染与列表渲染
    【附源码】Python计算机毕业设计汽车租赁管理系统
    数据结构(C语言版)严蔚敏->排序
    什么是JavaSE,写给第一次接触Java的人
    Agile Management 2
    软件测试零基础入门好学吗?
    家政服务小程序,家政系统开发
    uni-app使用echarts数据不更新
  • 原文地址:https://blog.csdn.net/weixin_42523454/article/details/128095589
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号