使用安卓手机搭建web服务器——Termux向

本文介绍了如何使用Termux在Android设备上安装Linux环境,通过无需ROOT权限的方式搭建SSH服务器和Nginxweb服务器,并利用Frp进行内网穿透,实现外网访问。过程中详细说明了端口配置、服务启动以及遇到的问题和解决方法。
摘要由CSDN通过智能技术生成

p.s. 无需ROOT

早在还在读初中时期,就曾用手机搭建过web服务器,时过境迁,却依旧贫穷,真是“不忘初心”。

网上看过很多‘所谓’垃圾佬用二手mini主板搭建web服务器,但是咸鱼淘宝仔细搜来,核算起来竟要100块大洋。

“太贵了,太贵了。”望着项目造价清单,我也只能扼腕叹息。

这些洋物件,显然不是我等贫民所能染指之物。

有没有什么可以不必花钱,又能用上服务器的方案呢?忽的忆起当年用安卓仿真linux系统来搭服务器。

可惜当时年少,不知留下文案的重要性,如今却要从头再来,悔之晚矣,如今留下这篇文档也算是亡羊补牢了。

步骤一:安装Termux

GitHub - termux/termux-app: Termux - a terminal emulator application for Android OS extendible by variety of packages.

在github上下载termux并安装。

步骤二:

无需root,就可以在任意安卓手机上都跑linux (baidu.com)

这里感谢这位大佬的文章,关于系统安装部分,大佬已经写的很清楚了,这里就不胡扯了。

值得一说的是,在作者的第四步骤中,我选择的是ubuntu。

步骤三:

安装ssh服务器并配置。

sudo apt install ssh 

这一步大家应该都清楚。

但是装完的ssh服务器并不能直接

sudo service ssh start

启动,暂时不清楚是什么原因(有可能是被占用后冲突了)。启动后会报一个ok但是连不上。

我们需要先配置ssh服务器的端口。

vim /etc/ssh/sshd_config

将端口

# Port 22

# 改成

Port 2233

 然后重新

sudo service ssh restart

ip a #查看下你的ip地址

这时就可以用ssh连接了,注意端口是2233。 

p.s. 用winscp传文件时,会遇到问题,将登录设置时默认的sftp文件协议改成scp就可以了。

步骤四:

安装nginx,并配置。

一开始我是用的apache,但是安装失败了,遂转向更加简单轻量的nginx。

sudo apt install nginx

sudo service nginx start

直接启动是不成的,因为手机原生应用已经将80端口占领。

这时候我们要修改配置文件将80端口改成其他。

vim /etc/nginx

 

 推荐按我的方式修改。

第 22、23 行,将端口号修改为4004。

第 24 行,将字符集设置为utf-8(这会避免一些乱码问题)

第 42 行设置web文件的目录(这个大家应该能看得出来)

                                 以下三行的显示图例

第 53 行,autoindex on;开启目录浏览功能

第 54 行,autoindex_exact_size off;用MB,GB等单位显示而不是字节。

第 55 行,autoindex_localtime on;开启以服务器本地时区显示文件修改日期。

修改完之后运行

sudo service nginx restart

弄完之后我们先输入ip地址检测一下能不能上网。就像我上图一样输入IP地址和端口进行访问。

如果不行的话可以自行查询 /var/log/nginx/error.log 日志文件解决问题。

步骤五:

安装一个frp软件,这里我推荐sakurafrp,下面写简要教程。

Sakura Frp | 樱花内网穿透 — 免费内网穿透_免费端口映射_高速_高防节点_不限流量_Minecraft我的世界_微信开发调试_群辉NAS_无需公网_免备案

首先在该网站注册一个账号,然后在

 下载之后会获得一个连接,(不要点复制链接那个wget下载不了)

 

 我们右键下载的文件后复制下载连接,然后在终端里

wget https://nyat-static.globalslb.net/natfrp/client/0.45.0-sakura-5.2/frpc_linux_arm64

# 该链接在你看到的时候可能会过时了,请在官网下载最新版

 

点击创建两个隧道,远程端口可以随意生成。本地端口一个2233(给ssh)一个4004(给web服务器),和之前的设定的一样。

注意两个隧道都是tcp的,其中ssh的无所谓,但是html的隧道一定要是香港或者国外的(国外ip有可能是被q的),不然要备案(可恶,以前是不需要的啊)。

输入

sudo ./frpc_linux_arm64

运行frpc软件。

你会发现让你输入token,这个时候进入这儿复制粘贴进去,回车进入。

 

回车选中这两个,把它们变成绿色的,然后按crtl+c键即可运行。 

现在用其给出的方案试试吧!

 

ssh服务器没问题。 

而web也可以用外网访问啦!

注意要点:

设置wifi,将在睡眠状态下保持wlan连接,设置为始终。

将termux的应用自动管理改成手动。

每个人的手机都不一样,你要自己找一找,不然就只能让屏幕一直亮着,否则安卓可能会多管闲事的将termux进程kill掉,就很烦了。

  • 18
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值