利用废旧安卓手机+内网穿透/(IPV6动态解析)+域名实现几乎零成本WEB环境搭建

 4个月前     393  

文章目录

一、说明

现在手机更新迭代比较快,有的小伙伴更替下来的手机基本就是扔在一边吃土,为了让它发挥一点剩余的光和热,博主才开始瞎折腾。不过网络上很多软件可以实现了,譬如aidlux、termux、deploy等等吧,接下来就是利用termux和deploy折腾的,aidlux有专门的国内社区,感兴趣的话可以直接去社区看看去,功能也挺强大的。

二、开始教程

(一)手机无ROOT权限

1、手机无ROOT权限,受限制比较多,(该软件ROOT了也可以,不过作用好像不太大,如果有大神研究出新玩法,欢迎探讨),不过搭建一个简单的LNNP环境还是可以的,需要一定的Liunx系统操作基础(小白不推荐)。

2、首先在网上下载Termux,直接打开进入界面。(GITHUB上不去的,百度搜一个也成)

官网地址:

3、设置SSH(不嫌麻烦的话也可以在手机码),自我感觉比较方便的就是利用Dropbear,当然也有其他办法,可以自行研究,不一一列出来了。(不给手机拍照了,摔的厂商都不认识是自己牌子的了)

(1)直接在Termux里敲吧,这段省不了。

pkg upgrade
pkg install dropbear

(2)你可以选择密码认证,也可以选择公钥认证。虽然推荐使用公钥认证,但作为尝试的话,密码认证是最简单的(怎么简单怎么来)。运行以下命令:

passwd
New password:
Retype new password:
New password was successfully set.

PS:安装一个终端复用程序,如tmux或screen。这样通过ssh运行程序时非常方便:

pkg install tmux

(3)接下来,在台式机或笔记本上测试连接(termux的SSH端口默认就是8022),也可以利用SSH连接工具直接连接,端口改成8022就行了:

ssh android-ip-address -p 8022

4、给手机设置一个静态地址,当然不嫌麻烦的话,路由器的DHCP分配新地址后,自己再手动改就好,因为路由器牌子都不一样,这里就不做赘述了,应该都会。

5、安装Ruby、Bundler、Sinatra和Puma

(1)Sinatra是一个轻量级的Web应用程序框架,而Puma是Web服务器。

(2)Ruby就是Ruby!

当然,Sinatra和Puma只是建议,你甚至可以在手机上运行完整的Rails应用程序。只要别使用默认的Rails开发服务器WEBRick就行,它只有单进程、单线程,因此不适合生产环境。(小型测试环境还是不错的)。

继续敲命令:

pkg install ruby
gem install sinatra puma

(3)nginx是Web服务器、反向代理和负载均衡器。虽然配置成多服务器是最有效的,它可以给多台服务器分发请求,但在我们的手机服务器上nginx也非常好,它内置了DDoS防范功能,还能为静态文件提供服务。

pkg install nginx

接下来需要一点小技巧,才能让nginx与Puma相互配合。这个配置(参考文件)非常好,复制nginx.conf,将appdir改成你的Web应用的根目录。在我的配置中,我将其改成了 /data/data/com/termux/files/home/android-sinatra。

6、设置端口转发

如果想让Web服务器可以通过互联网访问,就需要给路由器设置端口转发,将进入的请求到新配置好的安卓Web服务器上。

具体做法取决于你的路由器。

7、配置动态dns

大多数人的公网IP地址都是动态的。因此,设置一个动态dns(DDNS)服务非常有必要,它会给你提供一个静态域名,自动将请求转发到你的动态公网IP地址上。

设置好DDNS之后,你需要配置路由器,让它定期将自己的IP地址通知给DDNS服务。具体做法取决于路由器型号。

8、运行Hello world!搞定。

利用废旧安卓手机+内网穿透/(IPV6动态解析)+域名实现几乎零成本WEB环境搭建

9、如果用不习惯的话,还可以利用termux安装乌班图,但是经过测试,无法在乌班图的系统里安装宝塔、1panel、XP等等网站管理面板。所以不推荐小白使用此办法,不过爱折腾的,还是可以折腾折腾的。

(二)手机有ROOT权限

1、手机是否可以获取ROOT权限,还有获取ROOT权限的办法,我不多说,自行百度教程。

2、网上下载Busybox和Linux Deploy,官网特别慢,也没必要安装最新的,直接百度吧。

3、两个软件安装好后,先去面具(ROOT管理工具)里给这两个软件ROOT权限。

4、然后打开Busybox左上角设置“三”的设置进行设置,安装路径为“/system/xbin”,其他的默认就好,然后返回主页面,点击右下角安装。最后出现以下提示就算安装完毕,后台也可以,关闭也可以。

[时间]  ###END

5、然后打开Linux Deploy,一样还是左上角“三”里的设置,屏幕常亮、锁定WIFI、CPU唤醒、开机自动启动、联网更新、telnet守护都打上勾;环境内的PATH变量按照以下输入,然后更新环境,更新完毕之后返回软件主页面。

PATH变量

/system/xbin

6、点击屏幕右下角图标,在停止的右边(不好描述= =!),里边选择Arch、Centos、Debian、Kali、Ubuntu都可以,其他的不用试了,装上无法启动。架构选择arm64或者aarch64,这两个有哪个选哪个就行。源地址可改可不改,无非就是速度快慢的问题,安装类型选择“目录”,安装路径看下边代码,用户名就是root,密码自己写一个自己能记住的,本地化选择“zh_CN.UTF-8”,初始化和SSH都启用了,染回软件主页面。

安装路径

/data/linux

7、点击右上角三个竖点儿,然后安装即可,安装过程可能较为漫长,可以等半个小时左右再看,看到deploy字样就是安装完毕了。然后点击左下角启动,看到以下文字,安装的linux系统就算是启动了。

[时间]  Starting extra/ssh . . . skip
[时间}  <<<  start

8、软件主页面上方有手机的内网IP,直接SSH工具连接,输入你设定好的root和密码即可连接。

9、部分系统比较纯净,无yum、wget等功能,自行百度安装命令即可,比较简单,不再多说。安装完之后就可以直接去宝塔官网复制安装命令,安装宝塔了,部分系统的Mysql和nginx需要编译安装,否则会出现安装成功,但是无法启动的现象,Docker无法使用。

三、外网访问

因为近些年NAS的兴起,现在通过家宽做服务器通过外网访问的办法,网络上已经有很多了,内网穿透、frp、动态解析等等吧。但是内网穿透的带宽一般都比较低,而且免费的流量还限制,frp吧还得自己有服务器,动态解析,目前国内IPV4地址紧张,各大运营商已经限制IPV4公网的申请了,就是申请公网,大部分也只是给你IPV6地址,但是通过DDNS解析的IPV6服务器,如果客户端没有IPV6功能话,还无法访问,所以现在咱们就该通过一个国外的CDN服务商来实现IPV4和IPV6互通了,它就是CloudFlare。操作起来也比较简单,那就开始。

1、首先你需要有一个域名托管到Cloud Flare,域名和CF账号申请不做展示了,https://www.cloudflare-cn.com/

2、将域名的DNS修改成CF的DNS,根据域名供应商的DNS刷新时间,最长可能需要24小时才会更新,更新完毕后,CF会给你的注册邮箱发一封邮件。最近我这网络不知道怎么回事,登陆cloudflare总是报错,就不截图了。

3、然后进入账户面板,点击已经成功的网站,进去后点击左侧DNS--记录--添加记录,类型选择“AAAA”,名称填写你的二级域名头,内容就填写你的公网IPV6即可,然后保存,至此就可以实现IPV4/IPV6互通了,你可以关掉你目前使用的设备将IPV6功能关掉进行ping域名,就会发现CloudFlare已经不是IPV6地址了,而是它给你分配的一个IPV4地址。

4、部分地区访问CloudFlare可能比较慢,可以通过IP优选进行提高你的网站速度。这期就不做了,等有时间再做一个CloudFlare的IP优选教程。

 

本文源自: ,由Re于4个月前整理编辑,共 3382 字。
链接地址:利用废旧安卓手机+内网穿透/(IPV6动态解析)+域名实现几乎零成本WEB环境搭建 | Lose Today,转载请注明出处!

您可能感兴趣的

暂无评论

暂无评论...