by Devin Yang

建立于: 6年前 ( 更新: 6年前 )

前言

这个影片介绍了在D-Laravel上面,我们如何指定Public Ip给特定的Project的使用。
不论是外部Production环境的设置或是内网自己项目Demo时,都可以使用哦 。

在影片中虽然我采用了PPPoE拨接的外网IP进行说明,但是我们改变一下也可以用自己电脑上的区网IP。
这样就可以让同事连到我们的D-Laravel的Project了。

关於MacOs上的PPPoE浮动IP

小提醒,如果您跟我一样使用Hi-Net光世代的六个浮动IP,在MacOS会发生第一个拨接的PPP上网IP居然自己ping不到的情况。
其实,外面还是可以连线此IP的,如果读者跟我一样使用PPPoE的方式取得外网的IP,
在自己本地的MacOS却ping不到自己取得的对外IP时,
我们可在拨接另一个对外的ppp IP给D-Laravel的项目用即可,简单解决。


当然您可以透过设置静态路由的方式将前往ppp0 ip位置的封包forward给本地127.0.0.1,修正此问题,
但设置静态路由需要下命令,就不多做说明了,所以建议可直接再拨号一个测试用的IP给D-Laravel使用较好。
如下图中的1,2,3分别是ppp0、ppp1(wan1)及ppp2(wan2),在这影片中我使用的为ppp1及ppp2的外部IP。

在这里网络接口的顺序相当重要的,这会影响到我们使用的对外IP是那一个。

为何我不用ngrok

ngrok,可以简单的将我们的服务导到外部,非常的方便,需要用的人请自行Google
但我自己本身,不太喜欢安装太多额外的软体,是否使用,请使用者自行评量了。
基本上我认为这家公司应该是安全的,因为他要赚钱,不太会埋什么东西或窃取使用者的料。

但请注意,网络上的东西不是绝对安全,有些免费防毒软体本身就是一只毒,
如果您还没听过,应该要有这样的了解,任何软体都一样,
不要随意使用你不了解的软体,你要用他,就代表你信认他。

尽量使用大厂(Google、微软、Apple等)或是较多人使用的软体。
就算是大厂有也都会有漏洞了,对网络越了解应该要越小心,
为何Apple的VPN要舍弃PPTP保留用L2TP,
为何Google的WebRTC要强制使用HTTPS,都有他们的道理的。

为何D-Laravel采用bash的方式来运行简化的docker-compose命令,背后原因很简单,
就是希望任何人,需要时都可以检视他如何运作的,运行时不需进行额外的编译。

当然,由於我个人电脑上有ssh的密钥及大量主机的config,如果今天安装了有问题或漏洞的软体,
密钥及设置档被拷走,是我不想要遇见的,虽然我连线的重要主机都需要经由VPN才能SSH进行远程管理,
而且也需要经由特定的IP才能连到该主机,在SSH密钥也都设置了复杂的密码,
但我还是不太会想装这个软体@@。

如果您使用是SSH,并且密钥未设置密码,
请思考一下,这就如同一张没密码的提款卡,捡到的人就可以到处刷了,
如果您的ssh的config包含了伺服器的位置,您对这主机还有root的权限,这有多可怕。
所以一些极重视资安的公司,并不会让员工随意安装软体。

回归正题,这影片主要,介绍给对nginx设置不熟悉的朋友,
如何透过D-Laravel上提供的简单的nginx sample的设置档,
让D-Laravel上的Project可以直接对外使用。

要让内部的服务导到外面,还有其他方式,
例如透过分享器的虚拟伺服器或是我们自己有外部主机,
也可透过SSH port forwarding的方式示,也是OK的,以上是个人的看法。
如果您不知道SSH port forwarding的使用方式,可参考我另一部影片中,会有带过。
十分钟速成,Laravel框架搞定LineBot成语字典。
 

D-Laravel外网IP设置,实际的操作影片:

Tags: dlaravel

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


dlaravel

如何在host直接运行容器内,不同Project的php artisan.

本篇为D-Laravel的运用教程,如何在主机端直接运行container内的php artisan. 自定义别名后,就能直接在host端的project数据夹内,直接运行contianer内的php artisan了。 alias a="../../artisan.sh"

dlaravel

D-Laravel 释出 v1.1.5

因应Laravel 5.5推出了,刚好php也出了php 7.0.23及php 7.1.9版了。 D-Laravel使用的fpm版本也进行更新罗...只要调整您的docker-compose所定义的版本 即可使用最新的php罗...

dlaravel

D-Laravel的sublime外挂以可由Package Control安装罗。

Mac或Linux的使用者,现在可由Sublime3的package control进行D-Laravel alias的包安装罗。 透过D-Laravel alias,我们可以使用更轻松的方式,运行容器内的artisan及composer命令。 docker的环境,要用composer安装包吗,不需再进入container内,或是设置composer的ce别名,即可在sublime中直接运行。