电影中心 精品软件 联系我们

 找回密码
 立即注册
搜索
Close
查看: 1424|回复: 0

简单五步设置群晖NAS绑定自有域名实现外网访问

[复制链接]
  • dsu_paulsign:ta_mind

    2026-4-28 04:25
  • dsu_paulsign:classn_01: 5 dsu_paulsign:classn_02

    dsu_paulsign:classn_12: 1 dsu_paulsign:classn_02

    [LV.2]偶尔看看I

    发表于 2019-9-17 20:24:15 | 显示全部楼层 |阅读模式

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

    ×
    1.注册阿里云账号。
    & z/ d6 {& o' E2.注册一个域名。
    9 M; r; p( K; Y6 v: K* r1 ]* v! E1 _5 O+ m0 ]& Y7 G9 o  e
    如果域名不在阿里云解析托管,需要先转过去,具体方法是联系域名提供商修改域名的DNS服务器,修改方式参考这里:https://help.aliyun.com/knowledge_detail/39844.html0 Q- }1 u! T+ ]9 B5 e; L
    然后去控制台找到云解析,将域名添加进去;
    % \9 J& G# x6 @0 A5 t% |9 o9 q, B8 n+ S2 K* b. o
    ( j! U4 |  x, i7 j1 R5 v) N* a
    3.到阿里云控制中心找到access key和secret并保存下来(强烈建议遵循阿里云安全最佳实践的说明 ,使用RAM子用户的AccessKey);  [! N1 f* e& }6 J/ H2 U/ ?

    ; O# n/ D! H% H- ?9 h2 M% z! `3 ^9 ~- c" [0 X$ F1 ]3 _" L
    4.到群晖控制中心找到任务计划新增一个计划。
    8 L7 u9 E0 G4 U/ l6 G' z  ?: J3 B新增->计划的任务->用户自定义脚本
    / O0 `$ G" b7 L( } 20190117191716771.jpg 7 m# g: {/ f! X2 i5 W5 I, t* E
    5 r# S' F, e5 Q+ `1 u% l
    设置10分钟定时: f7 J; H$ N4 z' H( M

    ' Y. p0 S" S# Z$ M* |* W 20190117191614507.jpg
    9 Y) v7 p; Y2 z
    4 P8 ^) r7 e! `5 _) c) b0 E, g% X4 ~复制以下内容,根据自己的情况修改中文部分并添加到任务设置自定义脚本
    4 A" E: q4 Y' A
    / x1 B" n0 `- B5 T
    1. #!/bin/sh* `2 ~# B3 G: N4 H% @9 E
    2. aliddns_name="你的域名前缀"' {" d1 U& i" a* n* T
    3. aliddns_domain="你的域名"
      . k3 w) k. k0 ~7 j
    4. aliddns_ak="你的AccessKeyId"
      ' J2 s9 a) x7 _3 K+ C9 @
    5. aliddns_sk="你的AccessKeySecret"
      5 p, L& w; u/ e% w& ]" h8 [

    6. 3 V: `" T' }! M4 ?# M; F3 ^) m* q
    7. aliddns_curl="curl -s whatismyip.akamai.com"- x5 \7 K$ Z* X! \! I/ M. r
    8. aliddns_dns="8.8.8.8"
      # t0 q1 i. r- ^7 ~* Y
    9. aliddns_ttl="600"* f4 Y# N5 C1 y) S' |
    10. # A- a) _* q' r6 N: {5 L4 @
    11. ip=`$aliddns_curl 2>&1`
      * A4 j" A* M: B5 S% L0 g5 C1 p
    12. 9 c: N/ ~' n' l$ q! ^! K$ ~2 y
    13. current_ip=`nslookup $aliddns_name.$aliddns_domain $aliddns_dns 2>&1`
      ( H+ ?% `  Q/ M

    14. , Q! g! G* d' C
    15. if [ "$?" -eq "0" ]' n! W4 L" z5 F5 i
    16. then
        m. P  V1 K9 t, p4 `
    17.     current_ip=`echo "$current_ip" | grep 'Address 1' | tail -n1 | awk '{print $NF}'`
      5 L2 S* a/ [; F$ m2 |  ~+ U$ f
    18.     if [ "$ip" = "$current_ip" ]: ^0 u, T" m  J% F
    19.     then5 q6 x3 ~0 {4 b- J8 |
    20.         exit 0: D# ]3 g- |# [! P+ `6 K0 V
    21.     fi 7 p1 E( w6 Q7 K. b5 X3 F5 w
    22. fi8 F$ I# c) Q( c3 g. t! W
    23. 4 f7 f! C7 R: @  s
    24. timestamp=`date -u "+%Y-%m-%dT%H%%3A%M%%3A%SZ"`7 r& e* s: y( U+ z. f+ d0 V7 {

    25. , c9 c& W: h1 y+ x
    26. urlencode() {$ W+ [; `  H  ?2 [
    27.     # urlencode <string>
      : |/ m/ w4 G6 Q% a
    28.     out=""* G/ o1 [8 Z3 Z$ \( ]
    29.     while read -n1 c
      $ ?1 c* \0 A$ q0 e
    30.     do
      % @) Q/ a/ g+ n
    31.         case $c in0 N+ J+ B1 I* w' {6 P8 H: O
    32.             [a-zA-Z0-9._-]) out="$out$c" ;;
      ' v% V( |1 q6 a! p
    33.             *) out="$out`printf '%%%02X' "'$c"`" ;;; W+ L* ?! Z  W9 ?1 S6 ?6 d* R* D
    34.         esac
      / y6 U$ K3 t' `2 w! f
    35.     done) _# V1 E- ]" b$ g; l  O
    36.     echo -n $out
      7 V" @' m8 [' g" r( p/ j+ r
    37. }  X" B1 u) {3 C9 g% P
    38. enc() {
      % N6 u- D* l+ I& Z* q0 X& d
    39.     echo -n "$1" | urlencode" m4 F/ x5 @8 a  l
    40. }) B" b  q7 H. y4 Z
    41. send_request() {+ c" v2 d- P0 R  a
    42.     local args="AccessKeyId=$aliddns_ak&Action=$1&Format=json&$2&Version=2015-01-09"5 `9 C* A" ?& u0 e
    43.     local hash=$(echo -n "GET&%2F&$(enc "$args")" | openssl dgst -sha1 -hmac "$aliddns_sk&" -binary | openssl base64)( H5 ]0 e) [2 U# e" d7 W
    44.     curl -s "http://alidns.aliyuncs.com/?$args&Signature=$(enc "$hash")"; X% q! K0 |/ ]% m8 B
    45. }
      9 i9 Q* C! I! V: o7 m. A. K' i1 J
    46. get_recordid() {1 j3 L) B' \: S* S9 I5 t/ n
    47.     grep -Eo '"RecordId":"[0-9]+"' | cut -d':' -f2 | tr -d '"'
      , X7 P. R8 p7 `+ G) o2 q
    48. }$ ]* X, q: @' P
    49. query_recordid() {# t% V$ q: ]( t& K" c7 |
    50.     send_request "DescribeSubDomainRecords" "SignatureMethod=HMAC-SHA1&SignatureNonce=$timestamp&SignatureVersion=1.0&SubDomain=$aliddns_name.$aliddns_domain&Timestamp=$timestamp"
      6 B, L( V& D' Z, c
    51. }
      7 Y4 z2 D0 o  a  Y; l' F. I4 [
    52. update_record() {, p3 n" s7 u8 R8 d8 |3 O7 V% }$ C
    53.     send_request "UpdateDomainRecord" "RR=$aliddns_name&RecordId=$1&SignatureMethod=HMAC-SHA1&SignatureNonce=$timestamp&SignatureVersion=1.0&TTL=$aliddns_ttl&Timestamp=$timestamp&Type=A&Value=$ip"6 Q" q; g* \4 x3 t
    54. }* a! p" i$ ?$ F+ h* U: Z0 `
    55. add_record() {
      ; O# ~& \: l2 X" p
    56.     send_request "AddDomainRecord&DomainName=$aliddns_domain" "RR=$aliddns_name&SignatureMethod=HMAC-SHA1&SignatureNonce=$timestamp&SignatureVersion=1.0&TTL=$aliddns_ttl&Timestamp=$timestamp&Type=A&Value=$ip": y8 B& l: b" ~% v
    57. }. A. T1 G3 B7 U( y
    58. if [ "$aliddns_record_id" = "" ]
      $ A9 c$ g/ B! d& e& J
    59. then
      ! c+ g8 T. [7 c' a$ L, i# d
    60.     aliddns_record_id=`query_recordid | get_recordid`9 f# i. e9 R* k6 P" C
    61. fi6 h  L* ~* r2 p% b
    62. if [ "$aliddns_record_id" = "" ]
      ; O; l- ~2 I2 \7 O% f, B: b
    63. then
      $ e) O! I, n+ Y! Y: I
    64.     aliddns_record_id=`add_record | get_recordid`* o+ K( E' D9 N- {
    65.     echo "added record $aliddns_record_id"
      & E* _$ P1 m8 M7 ~! b% F4 k
    66. else
      # E, H% U( f5 X
    67.     update_record $aliddns_record_id( t1 \9 j; Q' K1 v/ h% J1 X
    68.     echo "updated record $aliddns_record_id"
      + {" @0 d8 F( ?1 {! t% L
    69. fi
    复制代码

    + |. q' @5 ^9 G: o! F9 ]/ G) V' V 20190117191932194.jpg # h: t. S; {& S  o4 L, z' w9 P

      q) q* ^7 r2 F; c. g4 d5.设置好端口转发。  I0 o9 g/ }# R. A$ e: _
    1 ~- g/ o& ]; W: t, T
    如何设置群晖端口转发请自行百度。
    6 E( p5 U/ S) M6 u0 [' i! F
    - _0 b- R/ j/ C: g3 v. o0 E  W
    4 D. L, a: A2 ?# L! Y8 j: E
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|小黑屋|手机版|Archiver|帮助|古城IT技术联盟 ( 鲁ICP备06030014号 )

    GMT+8, 2026-5-23 05:11 , Processed in 0.050160 second(s), 13 queries , Gzip On, Redis On.

    52occ.com Team 古城IT社区自优化Ver.

    © 2006-2026 LonHowe.com

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