基于树莓派的内网穿透Web服务器搭建

前言

因为最近学了linux系统加上玩了点树莓派,宿舍刚好在我这边安装好了路由,准备充分利用手头现有资源,在树莓派的linux系统上搭建web服务器并连接好路由,利用花生壳的内网映射即可突破内网访问自己在树莓派上部署的网页。apache服务器是web服务器的一种,在这里我们选择使用apache搭建
本身操作流程并不难,但是!成败在于细节。现在,请大家跟随我的脚步,在linux系统上搭建属于自己的web服务器吧!


一、安装apache2服务器

1.打开shell终端 ,快捷键 Ctrl + Alt + T 打开

2.输入命令行:

sudo apt-get install apache2 -y 

下载安装apache2服务器
3.安装完成之后,会自动在/etc/目录下生成配置文件,并且自动会在/var/下生成www/html的文件夹,并在文件夹中配置index.html文件,可通过一下命令查看:

cd /var/www/html/	
ls

会发现有一个index.html文件,这个我们待会会讲到。

4.apache2配置默认开启80端口作为我们的web外部访问端口,我们可以打开浏览器,在地址栏中输入我们树莓派的本机地址,在命令行中输入:

ifconfig

其中的inet addr:192.168.x.xxx就是我们的本机地址,我们在浏览器地址栏输入我们的这个ip地址
在这里插入图片描述
当出现这个界面时,则证明apache2安装成功,但是请注意!!!

有的同学会认为这个界面是提示错误的界面,但是这个界面其实是按照上面所说的index.html里面内容显示出来的界面,你可以更改内容来显示不同的界面

一般配置通常不会遇到太多问题,更多配置文件的更改方法和细节处理请看本文最后部分。
至此,我们的apache服务器配置完成。


二、使用花生壳穿透内网

经过上面的配置,有人就会飘飘然不能自已,认为这样子就可以完成任务。但是其实还是需要考虑一个问题,就是你在家里连上路由是可以访问,但是离开家使用流量了或者外面的人就不能访问你了呀哈哈,所以装个B还是需要多一点小成本滴。使用花生壳,可以让你不仅可以外网访问,又可以有一个自己的专属域名,好了闲话不说,重点来了


1.首先我们要下载并在本地安装一个花生壳应用phddns,这个应用可以帮助我们后续进行内网穿透。
进入链接https://hsk.oray.com/download/,到花生壳官网下载树梅派对应版本的花生壳安装包在这里插入图片描述
下载需要查看系统的位数(32或者64位),则打开shell终端,输入以下命令即可出现对应位数

getconf LONG_BIT

下载完对应的安装包之后,在终端进入到对应的下载目录(正常情况一般是/home/pi/Downloads/目录下)

cd /home/pi/Downloads/
ls

查看下载的安装包,之后切换到管理员权限:

sudo -s

输入安装命令:dpkg -i 安装包名称。回车,等待安装完成。

#32位安装命令
dpkg -i phtunnel_5_0_rapi_armhf.deb

#64位安装命令
dpkg -i phddns-5.0.0-amd64.deb

安装成功后,会显示花生壳的SN码、默认密码(admin)及远程管理地址http://b.oray.com 如下图所示,这个地址稍后会用到。

接下来在终端启动花生壳应用:

#启动应用
sudo phddns start

#查看状态 
sudo phddns status

如果在Runstatus一栏显示 ONLINE,则证明应用部署成功,最后我们使用以下命令:

sudo phddns enable

来使其开机自启动


总的phddns操作有:

phddns start(启动)| status(状态)| stop(停止)|restart(重启)| reset(重置)|enable(开机自启动)|disable(关闭开机自启动)|version(版本)

但是注意:我们的在使用phddns相关命令时,如果不是管理员权限的话,都是需要使用我们在命令前面加上sudo才可以执行

2.购买域名。花生壳内网穿透的话,需要内网对应端口跟域名绑定在一起才可以访问。进入链接https://hsk.oray.com/download/,点击“注册”进行账户注册。

这里要提醒一个点:按照我之前的操作,当我注册完了之后界面就会迫不及待的让你去限时购买它的一大堆优惠域名,但是这里要注意:他推荐的域名是三流的壳域名,什么意思呢,就是你搞完东西分享到微信给人家看,但是弹出来的却是以下界面:

此时的内心飘过一万只草泥马~
原因网站的域名需要用安全证书进行认证,那些三流域名备案和认证会麻烦一些,不过只限于学习的话那些域名没太大问题,另外QQ可以访问。这里提供另外壳域名和顶级域名购买网址,供大家选择:
顶级域名注册:https://domain.oray.com/
壳域名注册:https://hsk.oray.com/parts-center/domain.html
另外花生壳还有一个域名转入功能,以后有机会尝试再和大家分享。

注册完之后,进入链接https://console.hsk.oray.com/forward,免费开通内网穿透功能
开通完之后,登录远程管理地址http://b.oray.com,首次登录则需要绑定树莓派的SN码,密码默认admin,SN码由树莓派的shell终端中输入sudo phddns status可查得到。登录完之后会自动绑定原花生壳账号,之后用原花生壳账号登录即可


登录完之后,在内网穿透界面点击“+”号添加映射,之后进行编辑
在这里插入图片描述
左边选择“HTTP”类型,右边外网域在你在花生壳买了域名之后点击会自动下拉供你选择;内网主机是树莓派本机ip地址,端口可以自己设定,文章最后会讲到,默认是80,点击确定


点开启动映射应用,尝试在手机浏览器中用流量输入你映射的域名,然后就成功了。
好鸡冻有木有!!!!!!
然而,你以为这样就结束了码。。。还差最后一步哦!

三、设置树莓派的静态地址

我们如果有留意的话会发现,这个树莓派的ip过了几天就会变来变去的,而我们也要在配置网址上面改来改去的太辛苦了,因为ip是靠路由自动分配给我们的,要想ip不变我们就需要设置树莓派的静态ip(划重点,要考的)

1.输入以下命令行

sudo nano /etc/dhcpcd.conf

2.在文件末尾输入:

interface eth0
static ip_address=192.168.1.105/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1 8.8.8.8

注意!!!这4个8一定不要漏了,很关键!
快捷键Ctrl+O保存,Ctrl+X退出
重启

reboot

就可以了,记住上面ip前面3段:192.168.1 这几段要跟你们要跟局域网的ip前三段一样,保证同一网段网络才能正常接通

最后还是要来简单说明以下这个web服务器怎么用,大家可以在web服务器的/var/www/html/目录下将index.html文件内容修改为自己的内容为己所用,但是更多的可以修改/etc/apache2/下的配置文件让自己的css,js,html文件都可以运用起来,最后来讲解配置及常见问题解决方法

四、配置及常见问题解决

配置

(1)配置路径:apache2的配置文件在/etc/apache2/中的apach2.conf文件,可以更改其中所在的html文件目录
(默认存放于/var/www/的目录中);之后还要打开sites-enabled中的文件,在Document所在行处更改目录
重启apache2服务,完成


注意存放网页显示相关文件的目录路径应该可以进入读取,而且该文件目录下所有的显示文件都需要具备可读权限,有些文件还需要具备可执行权限
若显示中出现权限错误或者显示不全的,可以执行这条命令:

sudo chmod -R 777 xxx 

(-R表示该文件目录以及文件目录下的所有文件都执行,xxx为该文件目录名)即可正常访问(包括JS和CSS)

(2)(可选)更改端口号可以到/etc/apache2/ports.conf中更改(位于首行的listen对应数字)
另外还要到/etc/apache2/sites-enabled/000-default.conf中第一行再更改一次端口
重启apache2服务,完成


常见问题:
连接出现“客户端离线”
原因:之前有过花生壳基于window平台软件安装或者手机登录冲突
解决方法:
(1)从管理地址的登录日志可以查出,登录设备从‘for树梅派’变成‘for windows’
(2)卸载花生壳phddns ->sudo dpkg -r phddns
(3)清除花生壳的配置文件sudo dpkg --purge phddns
(4)再重新安装一次
(5)登录管理地址 http://b.oray.com,重新进行初始登录并绑定设备
(6)问题解决
注意:在操作以上步骤之前需要先把其他登录同一帐号的花生壳下线,本人是直接先进行本系统中彻底卸载
但是正常情况只要重新登录SN码帐号绑定对应设备即可。


结尾

后续超b小哥会编写更多技术相关内容,如有错误欢迎批评指出

如果对您有帮助的话记得一键三连哦~

参考文章:

https://service.oray.com/question/11639.html

猜你喜欢

转载自blog.csdn.net/weixin_43930521/article/details/112133338