安卓手机搭建ubuntu与内网穿透实现

敲定吧2020-11-01  9.4K+

前言:

这个教程并不是KSWEB,KSWEB限制太多,而且大多php扩展与其他环境实现不了!

内网穿透是个人搭建,不使用第三方服务!(比如“花生壳”)!

开始动手:(我的手机红米6pro,系统android9)

所有使用文件已经打包,地址在

蓝奏云:

https://wws.lanzous.com/b01tona9c 密码:5ytg

手机端使用到的文件与APP

linux deploy.apk
juiceSSH.apk

首先确保您的手机已经ROOT,并且“完全ROOT”!
安装linux deploy.apk (允许使用root权限)!
这里并不需要网页教程所说安装busybox,如果您的系统是5.0以下可能需要(我并没有测试5.0下)!

安装Linux Deploy

1. 安装后点击左上角 三条杠,点击 配置文件,新增一个配置文件修改,可以不改用默认的。配置文件可以理解成VM的虚拟机

2. 点击设置,配置设置选项,主要配置以下几个选项

    1. 屏幕常亮,可选可不选
    2. 锁定WiFi,勾选
    3. CPU唤醒,勾选
    4. 时间戳,可选可不选,这里我方便查看勾选了
    5. 显示图标,同上

3.点击右下角调试按钮,开始进行配置

  1. 发行版这里我选择的是Ubuntu,架构与版本都是自动选的,手机基本都支持
  2. 源地址使用的国内源,http://mirror.tuna.tsinghua.edu.cn/ubuntu-ports/
  3. 安装类型选择镜像文件,这样会保存成一个文件放入手机目录里。安装流程也比较简洁些
  4. 安装路径这里填的是绝对路径,默认的路径也可以不用改
  5. 镜像大小自己参考手机的配置进行配置,为了方便后续的装装装我这里配置的大些
  6. 用户名这里我直接写的root,密码随便写,特权用户也是root这里不考虑安全性!
  7. 本地化选择中文,即zh_CN.UTF-8,在选项的最下面
  8. 初始化,挂载,和ssh。这里只勾选了ssh,初始化看了教程都没勾,这里就没管,挂载的话,空间够用就不挂了。ssh也是默认配置
  9. 图形界面启用!
  10.     图片上其他地方默认就行,无需修改!至此完成设置!

4. 开始安装

  1. 配置完成后,返回到主窗口
  2. 点击右上三个点,点击安装(这里要注意网络问题,大多因为源安装不了)!
  3. 安装完成后即可通过ssh、vnc进行访问,这里建议安装完成后先点击停止,再点击启动进行重新启动,再远程连接

5. 完成安装

 

安装juiceSSH(使用ssh连接到ubuntu)

这里也可以直接使用电脑端工具(xshell,finalshell........)须在同一网络WIFI!

这里大致你们动手党应该会用??我就不说明了,但是要说下我们安装的ubuntu可能不支持"wget"命令!

连接完成进入界面后先修复wget命令:

apt-get install wget

修复完成后我们可以开始安装宝塔:

wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh

按照提示一步步操作!这里大概会安装半小时左右!

安装完成后,我们可以修改下配置,以免记不住随机生成的入口与用户名/密码!

一步步搞

bt

按照提示

11,取消入口限制

从新 bt 再5或6 修改用户名/密码

至此完成!

可以直接去打开宝塔面板安装你需要的环境

安卓手机本地宝塔地址:
127.0.0.18888

电脑端:
192.168.xxx.xxx(你手机WIFI ip地址):8888

至此,本地环境已经完成!

下面开始搭建内网穿透!(须有公网IP服务器)

可能有人说,我已经有服务器,搭它干嘛。

这里你可以使用第三方穿透服务或者花生壳!但第三方服务限制太多!

毕竟只是拿来玩玩!

资料:https://blog.csdn.net/u012104219/article/details/85051893

但是他这个资料无法使用,不管是ARM64平台,还是源

用到的文件:(我给的蓝奏云地址有此文件)

 lanproxy.zip
 apache-maven-3.6.3-bin.tar.gz

开始配置:

服务端(公网服务器centos 7)

 一、安装docker 

1、安装依赖包
$ sudo yum install -y yum-utils  device-mapper-persistent-data  lvm2

2、设置稳定版仓库
$ sudo yum-config-manager   --add-repo  https://download.docker.com/linux/centos/docker-ce.repo

3、安装
//安装最新版本
$ sudo yum install docker-ce

//或者安装指定版本
$ yum list docker-ce --showduplicates | sort -r
    //显示有以下版本
    docker-ce.x86_64            18.03.0.ce-1.el7.centos             docker-ce-stable
//指定一个版本进行安装
$ sudo yum install docker-ce-<VERSION STRING>

4、启动doker
$ sudo systemctl start docker

5、通过运行hello-world镜像验证安装是否成功
$ sudo docker run hello-world

通过 Docker,启动 lanproxy 服务

启动 Docker 后运行一下代码

docker run -d \
           --name lanproxy-server \
           -p 8090:8090 \
           -p 4900:4900 \
           -p 4993:4993 \
           -p 9000-9100:9000-9100 \
           biodwhu/lanproxy

输入你的公网服务器 IP:8090,例如:http://120.92.10.120:8090/,即可看到如下的界面。好啦,到这里 lanproxy 的基础环境已经搭建成功,是不是很快,这就是 docker 的魅力。如果不用 docker 启动,请参考 lanproxy 的官方文档。

在这里插入图片描述

默认:account/password:admin/admin

宝塔安装nginx后开始 Nginx 的配置

  • 进入 Nginx 的配置目录,在这里创建配置文件

  • 创建 frp.xxx.com.conf 配置文件(相当于绑定了frp.xxx.com域名,他会指向lanproxy管理页)
  • server {
        listen 80;
        # 这里使用自己的域名
        server_name frp.xxx.com;
        charset utf-8;
        location / {
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   Host      $http_host;
            # 这里根据你的 lanproxy 配置,改成 config.server.port的值
            proxy_pass       http://127.0.0.1:8090;
            client_max_body_size 35m;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
        }
    }
  • 创建 www.xxx.com.conf 配置文件(相当于绑定了www.xxx.com域名,它将会实现穿透内网)
  • server {
        listen 80;
        # 这里使用自己的域名
        server_name www.xxx.com;
        charset utf-8;
        location / {
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   Host      $http_host;
            # 这里根据你的lanproxy配置,改成 外网接口 的值,在lanproxy后台网页上配置,后面配置!
            proxy_pass       http://127.0.0.1:9000;
            client_max_body_size 35m;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
        }
    }
  • 宝塔面板里重启 Nginx 服务!

至此,你可以通过域名 http://frp.xxx.com进行访问 lanproxy 网页后台配置,用户名与密码默认admin!

继续配置 lanproxy 后台服务

  • 添加一个客户端
  • 名称,是宝塔地址就宝塔,网站就随便,都随便吧!
  • 点击生成随机密钥
  • 提交
  • 添加配置
  • 后端IP端口自己悟吧!

至此,服务端的配置就完成了。下面开始内网手机的配置。

 

内网手机配置(Java 客户端)

全部以工具SSH为主

先安装jdk:

使用ppa(源)方式安装:

1):添加ppa源

sudo add-apt-repository ppa:webupd8team/java

sudo apt-get update

2):安装JDK8版本

sudo apt-get install oracle-java8-installer

注:安装器会提示是否同意条款,根据提示选择yes即可

3):设置默认的jdk,可以安装多个jdk版本

sudo update-java-alternatives -s java-8-oracle

4):测试jdk是否安装成功

java -version

至此,jdk完成

 

maven 安装

maven 是个项目管理工具,在编程领域应用广泛。

资料给出的已失效或不可用!下面宝塔安装法:

给出的蓝奏云有相应文件: apache-maven-3.6.3-bin.tar.gz

1.在宝塔文件管理打开/opt/文件夹
2.创建maven文件夹
上传 apache-maven-3.6.3-bin.tar.gz到maven内并解压

配置 maven 环境

打开/etc/profile文件

在文件内容后面添加以下内容:

# set maven env
export M2_HOME=/opt/maven/apache-maven-3.6.3
export CLASSPATH=$CLASSPATH:$M2_HOME/lib
export PATH=$PATH:$M2_HOME/bin

保存,输入以下命令使配置文件生效:

回到SSH,使用命令:

source /etc/profile

验证是否安装成功:

mvn -v

修改 maven 源为阿里云,以及仓库默认存放路径。这样 maven 下载 jar 包的速度会快很多

打开 maven 的配置文件:

55行加入:

<localRepository>maven/reposity</localRepository>

146行加入:

    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>        
    </mirror>

保存!至此,Maven 安装成功!

这里我们需要确保在内网电脑上,浏览器能够访问到 127.0.0.1:8888 这个服务!这里是宝塔地址,你们可以自己随意!

宝塔可以打开,这里,我的内网服务已经启动。接下来只需要启动 lanproxy 客户端即可。

运行 lanproxy client 服务

资料给出的打包git,不知道是不是得安装git服务,还是屏蔽了,无法克隆 lanproxy 代码到本地电脑!

这里又是一个 宝塔解决方案:蓝奏云有打包好的lanproxy.zip!

这里上传lanproxy.zip,并解压得到lanproxy文件夹!

 

回到ssh工具:

打包lanproxy
打包之前需要确保你安装了maven!

我们最好是再开个ssh窗口连接:

cd lanproxy

然后:

mvn package

等待片刻!忘了有没有操作!可能没有!!!

修改配置文件信息

打包完成之后,客户端文件会出现在root/lanproxy/distribution/proxy-client-0.1  目录下,打开之后有是个文件夹:binconfliblog,配置信息在 conf/config.properties 文件内,根据前面服务端的配置信息修改一下

# 这里是在lanproxy后台配置的密钥
client.key=e6a49a19b8024652ab4ff2210abf2c6a

# 配置ssl信息,根据服务端的配置填写(enable = false 就不需要配置)
ssl.enable=false
ssl.jksPath=test.jks
ssl.keyStorePassword=123456

# 公网服务器的ip
server.host=120.92.10.120

#proxy-server ssl默认端口4993,默认普通端口4900
#ssl.enable=true时这里填写ssl端口,ssl.enable=false时这里填写普通端口
server.port=4900

保存!

启动客户端(以后服务器重启也可能需要操作一下):

为了防万一,我们最好再次新窗口ssh连接:

连接后输入:

cd lanproxy/distribution/proxy-client-0.1
bash  bin/startup.sh

例:

至此,全部完成了!

访问测试:

我用的是www.xxx.com,访问成功!实现内网穿透!

转载请注明原文地址:http://www.wellcms.cn/read-157.html
1