找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 3056|回复: 6

[新人报到]OpenWRT扫码开启访客网络

[复制链接]
发表于 2024-4-20 14:43 | 显示全部楼层 |阅读模式
本帖最后由 HeiSha_ 于 2024-4-20 20:13 编辑

   1. 前提:不想访客亲友访问到内网设备。

   2. 配置访客网络(备注:以下所有操作均在SSH中操作):
  • 修改/etc/config/wireless,添加以下内容:
  1. config wifi-iface 'wifinet4'
  2.         option device 'radio0'
  3.         option mode 'ap'
  4.         option ssid 'HelloWorld'
  5.         option encryption 'psk-mixed'
  6.         option key 'G5idIGSHUZ'
  7.         option network 'guest'
  8.         option disabled '0'
复制代码
以上代码添加一个名为"HelloWorld"的2.4GWiFi热点,需注意config wifi-iface 'wifinet4'中的'wifinet4'不要和现用的WiFi热点重名,如果已有该名称,可更改为'wifinet5'等对应:网线-->无线;

  • 修改/etc/config/network,添加以下内容:
  1. config interface 'guest'
  2.         option proto 'static'
  3.         option ipaddr '172.17.1.1'
  4.         option netmask '255.255.255.0'
复制代码
以上代码添加guest接口,并指定内网IP段: '172.17.1.1',对应:网络-->接口;

  • 修改/etc/config/dhcp,添加以下内容:
  1. config dhcp 'guest'
  2.         option interface 'guest'
  3.         option start '100'
  4.         option limit '150'
  5.         option leasetime '12h'
复制代码

  • 修改/etc/config/firewall,添加以下内容:
  1. config zone
  2.         option name 'guest'
  3.         option input 'ACCEPT'
  4.         option output 'ACCEPT'
  5.         option forward 'ACCEPT'
  6.         list network 'guest'

  7. config rule
  8.         option name 'Allow-Guest-DNS'
  9.         option src 'guest'
  10.         option src_port '53'
  11.         option target 'ACCEPT'

  12. config rule
  13.         option name 'Allow-Guest-DHCP'
  14.         option src 'guest'
  15.         option src_port '67-68'
  16.         option target 'ACCEPT'

  17. config rule
  18.         option name 'Deny-Guest-ssh'
  19.         option src 'guest'
  20.         option dest_port '22 80 443'
  21.         option target 'DROP'

  22. config rule
  23.         option name 'Deny-Guest-lan'
  24.         option src 'guest'
  25.         option dest 'lan'
  26.         option target 'DROP'

  27. config forwarding
  28.         option src 'guest'
  29.         option dest 'wan'
复制代码
以上代码添加防火墙配置,对应:网络-->防火墙-->常规设置-->区域,网络-->防火墙-->通信规则。


通过以上操作,我们就建立了访客WiFi热点,并创捷了访客网络,并为访客网络创建了防火墙规则,以限制访客访问内网设备,但又达到访问互联网的需求。


   3. 创建扫码查看WiFi密码脚本,并做到一定时间后能自动关闭访客WiFi的需求,且开启状态时扫码延长开启有效期、每次开启访客WiFi时重设密码
  • 安装at命令,用于定时关闭访客WiFi
  1. opkg update
  2. opkg install at
  3. /etc/init.d/atd enable
复制代码
  • /www/cgi-bin目录下创建文件wifion
  • /www/cgi-bin/wifion添加以下内容:
  1. #!/bin/sh
  2. DISABLE_SSID="HelloWorld"    #修改为访客WiFi SSID
  3. DISABLE_PERIOD=5             #自动关闭访客WiFi时间,单位:小时

  4. echo "Content-type: text/html; charset=utf-8"
  5. echo ""

  6. echo '<html lang="en">'
  7. echo '<head>'
  8. echo '    <meta charset="UTF-8">'
  9. echo '    <meta name="viewport" content="width=device-width, initial-scale=1.0">'
  10. echo '    <title>My WiFi</title>'
  11. echo '    <style>'
  12. echo '          html, body {'
  13. echo '              height: 100%;'
  14. echo '              margin: 0;'
  15. echo '              padding: 0;'
  16. echo '          }'
  17. echo '          .container {'
  18. echo '              display: flex;'
  19. echo '              align-items: center; /* 垂直居中 */'
  20. echo '              justify-content: center; /* 水平居中 */'
  21. echo '              height: 100%;'
  22. echo '              background: linear-gradient(to bottom, #03AEE2 65%, #33FCFF 100%);'
  23. echo '              flex-direction: column; /* 子元素垂直排列 */'
  24. echo '          }'
  25. echo '          .container img {'
  26. echo '              max-width: 100%;'
  27. echo '              max-height: 80vh; /* 图片最大高度为视窗高度的 80% */'
  28. echo '              -webkit-filter: drop-shadow(10px 10px 10px rgba(0,0,0,.5));'
  29. echo '              filter: drop-shadow(10px 10px 10px rgba(0,0,0,.5));'
  30. echo '          }'
  31. echo '          .text {'
  32. echo '              text-align: center; /* 文本居中对齐 */'
  33. echo '          }'
  34. echo '          .text p {'
  35. echo '              font-family: Helvetica, 'Hiragino Sans GB', 'Microsoft Yahei', '微软雅黑', Arial, sans-serif;'
  36. echo '              font-size: 18px;'
  37. echo '              color: white; /* 将字体颜色改为白色 */'
  38. echo '              text-shadow: 0em .08em .15em hsla(220, 100%, 30%, .6);'
  39. echo '          }'
  40. echo '          .text p span {'
  41. echo '              color: #D8E70B;'
  42. echo '              text-decoration: underline; /* 文字下划线 */'
  43. echo '          }'
  44. echo '          .button {'
  45. echo '              box-shadow: 0px 1px 0px 0px #f0f7fa;'
  46. echo '              background: linear-gradient(to bottom, #45BCE0 5%, #019ad2 100%);'
  47. echo '              background-color: #33bdef;'
  48. echo '              border-radius: 4px;'
  49. echo '              border: 1px solid #057fd0;'
  50. echo '              display: inline-block;'
  51. echo '              cursor: pointer;'
  52. echo '              color: #ffffff;'
  53. echo '              padding: 5px 10px 3px 10px;'
  54. echo '              text-decoration: none;/'
  55. echo '              text-shadow: 0px -1px 0px #5b6178;'
  56. echo '              font-family: Helvetica, 'Hiragino Sans GB', 'Microsoft Yahei', '微软雅黑', Arial, sans-serif;'
  57. echo '          }'
  58. echo '          .button:hover {'
  59. echo '              background: linear-gradient(to bottom, #019ad2 5%, #45BCE0 100%);'
  60. echo '              background-color: #019ad2;'
  61. echo '          }'
  62. echo '          .myButton:active {'
  63. echo '              position: relative;'
  64. echo '              top: 1px;'
  65. echo '          }'
  66. echo '    </style>'
  67. echo '</head>'
  68. echo '<body>'
  69. echo '    <div class="container">'
  70. echo '        <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAMAAACahl6sAAAC7lBMVEUAAAD/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////jtXoAAAA+XRSTlMAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdX2BiZWZnaGlqa2xtbm9wcXN0dXZ3eHl6e3x9fn+AgYKDhIWGh4iJiouMjY6PkJGSk5SVlpeZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f68eH41AAAAAWJLR0T5TGRX8AAAC49JREFUGBntwX1804WBB+Bv0pQWgdZ6irwUhlBBbjLefAOKOnQwT5wwPJxustNTj8kcnts5T8c4N4uoKOAbyBiT8t5BWwRaWqC05aXQF9r0LU3St5A26XsT0ib5/nce2yG0+b3lrelneR6EhYWFhYWFhYWFhYWFhYX9I1HfNmXu0lVJW5KTD6akHDuWknIwOfnzpFVL5k65VY3BICLhsV9vTz9dom+w2OmB3dKgLzmd/qfXFyWoEaJGPZaUml/d7KQszuaqM6lJPxyFkBI1LymjtLGXivU2lGYkzYtCKIhe/JdcXRd90KXL/cviaAyou9ZkltvoBw5Dznt3YWCoH91TbKEfWYr3PKpGkKkf3FHSQb/rKktbqkHwzEwu62KAdJUlz0RQxLySbWFAteT97hYEWuJerZMB59KnPoQA0rxwro1B0nb+3zUIjBFrLl1hEPVoP4qD/43ZXu1ikLmqt4+Gf43cpueAqNsxEv7zT59Uc8AYv7od/hHziY4DSrd5BHyn/pXWzQHmrnpNDR89mGdjCLBfWARfxKdYGSJasifCW5p3a+kbR2dzs7n+G+bm5k4HfVP7Rw28ck+Bg16xNVZfyE5Nfn/10/Nn3znxjrhv3DHxztnzn37tg+TU7AvVjTZ6xVEwG8pFf2qiYra6ouPbn39gNESNnvPCn48X1dmomOnTaCj0aImTirgaS46snRsD2WIT1x4pMbmoiLPkESih2WymEqaCXc+NhRfiV+wuuEwlzJs0kC3hXA9l66o4tjoePhj/nxkV3ZSt5+wkyLSyhnJ1aff9IAI+0yzar+2mXMaVkGNEagfluaLdtzACfhKxaL/2CuVpPzQckqYWuymLOfe5SPhV5M+yGiiLu/guSHjWQDlsJRvjEQDjNpfYKIf+GYhRrbNQhrbClyIQIOqnc1opg/VzNQTFZtoprTFzHgJqXnotpTmyYiBgfBGl1e/+DgJuwt56SisaB49mVlGSKT0BQTF+j4mSdPfDgyVGSjEfSkDQTEkzU4rxR+jnlUZK6My9B0F1b04HJTS+hj6SWijOWboCQfdvpU6Ks76LG2xspzjje1EYAEM/rKW49o9xnc0dFNWVNwXKRE9d8ur63amZ2bn5eYWFefm52Zmpu9b/8smp0VBm4sluiurcgv+n2tZNUdWvqyBb3CN/TM25ZLS66YHbaijJOfSHBTdDvhdqKMq2U4WrVDttFNP+9e2QRzPnvYyiOgclXakrylh3vwbyjDrSQTG2nWr8ny/tFGNYCTlU931ysqqTCnRWndx0rwpyvGKgmCtf4hv/0UIRvRcmQdqw5QdKWumFTu3Bn9wEaZPyeyiibSUwopIizBs1kDJk+dGaHnqtp+brpyIhRbPZTBEVw7HeRWHViyAlcVeZjT5y1KTMh5THdRTmWoezFOQsmABxw1bnW+kXbRdevwni4gucFHQGdRTSsTcKohK+qnTRb5yVX02CqOh9HRRSh3YKMP0XRE0/WEc/Mx2ZDlFvmCigDb30zPgkxMw/ZmYAWE4lQswSIz3rQSs9qrwPIqYdtzJArBnfhYiZVfSoBUZ6UjgOwsbuMTGAzOljIGx8ET0xIo/9uXJiISh6k5EBZtgYDUGxp13sLxdvOdmXM3soBD1R4mLAuUqXQdDQbCf76n0TUaXsw3k8CkLG7LMyKFqzvwMhUcec7OPSEGC5mTfo/XoIhKzWM2j0r0LIkCO9vIF5Gb6xto3XsR/UQMDIox0Moq5TYyBAc9DO67StxVW/bOA1zR+qIODn1Qyy6hUQoPrYwmvqV+Hv7j52mVe15D8EAVE7Wxl0rV9购物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" alt="Your Image">'

  71. echo '        <div class="text">'

  72. # 获取 wifinet4 的配置
  73. wifinet4=$(uci show wireless | grep "$DISABLE_SSID" | cut -f 1-2 -d'.')

  74. # 检查 wifinet4 是否存在
  75. if [ -n "$wifinet4" ]; then
  76.     # 获取 wifinet4 的状态
  77.     disabled=$(uci -q get $wifinet4.disabled)
  78.    
  79.     # 检查 wifinet4 是否为禁用状态
  80.     if [ "$disabled" -eq 1 ]; then
  81.         random_password=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 10 ; echo '')
  82.         uci -q set $wifinet4.disabled=0
  83.         uci -q set $wifinet4.key="$random_password"
  84.         uci commit wireless
  85.         wifi reload
  86.         current_password=$random_password
  87.     else
  88.         current_password=$(uci get $wifinet4.key)
  89.     fi

  90.     # 删除任务
  91.     atq | cut -f 1 | xargs -n 1 atrm

  92.     # 获取x个小时后的时间,并格式化为所需的字符串形式
  93.     current_time=$(date +%s)
  94.     two_hours_in_seconds=$(($DISABLE_PERIOD * 3600))
  95.     expiration_time=$((current_time + two_hours_in_seconds))
  96.     expiration_time_formatted=$(date -d "@$expiration_time" "+%Y-%m-%d %H:%M")

  97.     # 调度一个任务,在x个小时后禁用该 SSID
  98.     at now + $DISABLE_PERIOD hours <<EOF
  99.     # 在任务注释中添加标识
  100.     # SSID_HelloWorld
  101.     uci -q set $wifinet4.disabled=1
  102.     uci commit wireless
  103.     wifi reload
  104. EOF

  105.     echo "            <p>WiFi网络名称:<span class='ssid'>HelloWorld</span></p>"
  106.     echo "            <p>WiFi密码:<span class='password' id='password'>$current_password</span> <button class="button" onclick="copyPassword()">复制密码</button></p>"
  107.     echo "            <p>该网络将为您开启<span class='time'>$DISABLE_PERIOD小时</span>至 $expiration_time_formatted</p>"
  108.     echo "            <p>如需延时使用,请再次扫码</p>"
  109.     echo "            <p>您的登录信息已记录,请遵守国家规定,文明上网!</p>"
  110.     echo "            <div id="copyMessage" style="display: none;">密码已复制</div>"
  111. else
  112.     echo "            <p>SSID '$DISABLE_SSID' not found in configuration.</p>"
  113. fi

  114. echo "        </div>"
  115. echo "    </div>"
  116. echo "    <script>"
  117. echo "        function copyPassword() {"
  118. echo "            var passwordElement = document.getElementById('password');"
  119. echo "            var tempInput = document.createElement('input');"
  120. echo "            tempInput.value = passwordElement.textContent;"
  121. echo "            document.body.appendChild(tempInput);"
  122. echo "            tempInput.select();"
  123. echo "            tempInput.setSelectionRange(0, 99999);"
  124. echo "            document.execCommand('copy');"
  125. echo "            document.body.removeChild(tempInput);"
  126. echo "            document.getElementById('copyMessage').style.display = 'block';"
  127. echo "            document.getElementById('copyMessage').style.color = '#FFFFFF';"
  128. echo "            setTimeout(function() {"
  129. echo "                document.getElementById('copyMessage').style.display = 'none';"
  130. echo "            }, 1500);"
  131. echo "        }"
  132. echo "    </script>"
  133. echo "</body>"
  134. echo "</html>"
复制代码




  • 修改/www/cgi-bin/wifion的执行权限
  1. chmod +x /www/cgi-bin/wifion
复制代码
  • 游客,如果您要查看本帖隐藏内容请回复


注意,该脚本会使用at命令,会在每次执行时删除所有at任务并创建新任务,如果你本来就在使用at命令创建一次性任务,那么请不要使用该脚本。当然你可以修改成使用cron任务。
你需要将DISABLE_SSID改为/etc/config/wireless中你创建的WiFi热点名称,DISABLE_PERIOD改为需要该WiFi热点自动关闭的时间

  • 以上所有步骤操作完成后,重启下路由器吧
  1. reboot
复制代码



   4. 访问 http://你的路由器IP/cgi-bin/wifion 看下是否成功,如图:



   5. 端口转发中添加端口转发规则,相信这是最基础的OpenWRT操作了
  • 修改/etc/config/firewall,添加以下内容:
  1. config redirect
  2.         option dest 'lan'
  3.         option target 'DNAT'
  4.         option name 'Login'
  5.         option src 'wan'
  6.         option src_dport '18000'
  7.         option dest_ip '192.168.1.1'
  8.         option dest_port '80'
复制代码
其中,option src_dport '18000'为外部端口,option dest_ip '192.168.1.1'为你的路由器管理地址


   6. 访问 http://你的外网IP:外部端口/cgi-bin/wifion 看下是否成功





   7. 去二维码生成平台生成你的二维码,可以使用DDNS将你的外网IP替换为你的网址
  1. http://你的外网IP:外部端口/cgi-bin/wifion
复制代码






本帖子中包含更多资源

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

×
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2024-4-20 15:44 | 显示全部楼层
谢谢分享。外网IP会变啊,还得弄个域名才行。也许配合弄个墨水屏的设备定时刷新显示cgi-bin/wifion页面更方便。

点评

是的,我是ddns到域名的,这步没提到😁  详情 回复 发表于 2024-4-20 15:47
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-4-20 15:47 来自手机 | 显示全部楼层
tzxinqing 发表于 2024-4-20 15:44
谢谢分享。外网IP会变啊,还得弄个域名才行。也许配合弄个墨水屏的设备定时刷新显示cgi-bin/wifion页面更方 ...

是的,我是ddns到域名的,这步没提到😁
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-4-20 16:15 来自手机 | 显示全部楼层
该脚本会使用at命令,会在每次执行时删除所有at任务并创建新任务,如果你本
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-4-20 16:16 | 显示全部楼层
谢谢分享谢谢分享
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-4-23 22:12 | 显示全部楼层
谢谢分享谢谢分享
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-7-25 10:01 | 显示全部楼层

2. 配置访客网络(备注:以下所有操作均在SSH中操作):
修改/etc/config/wireless,添加以下内容:
config wifi-iface 'wifinet4'
        option device 'radio0'
        option mode 'ap'
        option ssid 'HelloWorld'
        option encryption 'psk-mixed'
        option key 'G5idIGSHUZ'
        option network 'guest'
        option disabled '0'
以上代码添加一个名为"HelloWorld"的2.4GWiFi热点,需注意config wifi-iface 'wifinet4'中的'wifinet4'不要和现用的WiFi热点重名,如果已有该名称,可更改为'wifinet5'等,对应:网线-->无线;

修改/etc/config/network,添加以下内容:
config interface 'guest'
        option proto 'static'
        option ipaddr '172.17.1.1'
        option netmask '255.255.255.0'
以上代码添加guest接口,并指定内网IP段: '172.17.1.1',对应:网络-->接口;

修改/etc/config/dhcp,添加以下内容:
config dhcp 'guest'
        option interface 'guest'
        option start '100'
        option limit '150'
        option leasetime '12h'

修改/etc/config/firewall,添加以下内容:
config zone
        option name 'guest'
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'ACCEPT'
        list network 'guest'

config rule
        option name 'Allow-Guest-DNS'
        option src 'guest'
        option src_port '53'
        option target 'ACCEPT'

config rule
        option name 'Allow-Guest-DHCP'
        option src 'guest'
        option src_port '67-68'
        option target 'ACCEPT'

config rule
        option name 'Deny-Guest-ssh'
        option src 'guest'
        option dest_port '22 80 443'
        option target 'DROP'

config rule
        option name 'Deny-Guest-lan'
        option src 'guest'
        option dest 'lan'
        option target 'DROP'

config forwarding
        option src 'guest'
        option dest 'wan'
以上代码添加防火墙配置,对应:网络-->防火墙-->常规设置-->区域,网络-->防火墙-->通信规则。


通过以上操作,我们就建立了访客WiFi热点,并创捷了访客网络,并为访客网络创建了防火墙规则,以限制访客访问内网设备,但又达到访问互联网的需求。



楼主,按你的步骤弄好后能连接访客网络,但速度异常缓慢只有1M左右,应该如何解决?
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

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

GMT+8, 2024-10-5 19:35

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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

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