TẠO ĐƯỜNG HẦM TUNNEL TỚI LOCAL VỚI NGROK
April 15, 2019 tunnel ngrok
Với ngrok bạn có thể tạo 1 webserver cùng với https đơn giản và dễ dàng mà không mất nhiều chi phí. Ngrok sẽ mở giúp đỡ bạn 1 con đường hầm tunnel đi tới bao gồm local của người tiêu dùng và public nó ra ngoài internet. Điều này hữu dụng ích gì thì nội dung bài viết này sẽ giúp bạn giải thích rõ điều đó.
Bạn đang xem: Tạo đường hầm tunnel tới local với ngrok
Nếu bạn là 1 trong developer, đôi khi bạn phải publish site của bạn cho tất cả những người khác reviews qua. Mặc dù người review lại ở nước ngoài hay 1 ở đâu đó ko thuộc local internet của bạn. Hay bạn có nhu cầu test webhook của bản thân mình mà không nhất thiết phải đưa nó lên server. Vậy làm nỗ lực nào để giải quyết việc đó,Đừng lo vấn đề dễ dàng và đơn giản đó sẽ được giải quyết và xử lý bằng ngrok. Vậy Ngrok là gì, thực tế nó chỉ là 1 trong những services, trách nhiệm của nó là trường đoản cú mở 1 tunnel để lấn sân vào local của bạn. Nó biến chính local bạn là 1 trong server thông qua 1 port tunnel mà bạn đã mở sinh sống local. Tiếp nối nó sẽ tạo nên 1 subdomain online cho phép người khác requesttới service ngrok. Trọng trách của ngrok vẫn forward cho tới local của người sử dụng thông qua tunnel.
Ví dụ 1-1 giản
Giả sử các bạn có đoạn code go như sau
package mainimport ( "fmt" "log" "net/http")func handler(w http.ResponseWriter, r *http.Request) fmt.Fprintf(w, "Hi there, I love %s!", r.URL.Path<1:>)func main() http.HandleFunc("/", handler) log.Fatal(http.ListenAndServe(":8080", nil))Bạn mở trên local 1 port 8080 cùng port này chỉ rất có thể truy cập trên local của bạn hoặc trong thuộc giải ip trong router nhà bạn bằng cách
localhost:8080 hoặc your_ip:8080. Để publish service của chúng ta ra bên phía ngoài bạn yêu cầu tải thêm một tool ngrok cli về localsau kia chạy command như sau
$ ./ngrok http 8080ngrok by
inconshreveableTunnel Status onlineVersion 2.0/2.0Web Interface http://127.0.0.1:4040Forwarding http://92832de0.ngrok.io -> localhost:8080Forwarding https://92832de0.ngrok.io -> localhost:8080Connnections ttl opn rt1 rt5 p50 p90 0 1 0.00 0.00 0.00 0.00Vậy là kết thúc ngrok đã tự tạo cho mình 1 tunnel trải qua tool ngrok cli mà chúng ta vừa tải về. Bạn có thể gửi domain https://92832de0.ngrok.io ra internet phía bên ngoài router nhà bạn người không giống sẽ truy vấn domain trên tương tự như như bạn đang truy cập localhost:8080.
Xem thêm: Escalation Là Gì ? Nghĩa Của Từ Escalation Trong Tiếng Việt Nghĩa Của Từ Escalation
Cấu hình ngrok
Basic authen
Nếu service sử dụng basic authencation vậy làm cụ nào ngrok truy vấn vào được lúc service bắt buộc người truy cập phải nhập username cùng password authen
Điều này rất đơn giản và dễ dàng bạn chỉ việc sử dụng command sau
$ ./ngrok http -auth="username:password" 8080Thì ngrok đã hoàn toàn có thể truy cập dễ chịu và thoải mái trong service của doanh nghiệp mà người truy cập không cần phải đăng nhập tin tức trên thủ công.
Domain local
Nếu service của doanh nghiệp sử dụng 1 domain local dạng như sample.local để truy cập vào thì ngrok hoàn toàn có thể config được
$ ./ngrok http -host-header=sample.local 80
Tcp tunel
ngrok ko chỉ được cho phép http nhưng nó còn có thể chất nhận được bạn truy cập cả giao thức tcp.Giả sử trên local của doanh nghiệp có mở port database hay tải sshd nhằm ssh thẳng vào local của bạnngrok cũng rất có thể tunnel thẳng vào máy các bạn qua kết nối tcp đó$ ./ngrok tcp 22// Out puttcp://0.tcp.ngrok.io:33405 -> localhost:22Như vậy từ là một nơi khác các bạn của thể ssh vào chủ yếu local sản phẩm công nghệ mình trải qua command
$ ssh username
0.tcp.ngrok.io -p 33405Nếu bạn không nhớ hết những cú pháp đừng băn khoăn lo lắng hãy sử dụng config với tệp tin yml
Hãy tạo ra file yml với ngôn từ như sau
tunnels: app-protected: proto: http addr: 8080 auth: "username:password" mongo: proto: tcp addr: 27017Để chạy các tham số config trên bạn chạy command như sau
$ ./ngrok start -config ~/ngrok.yml --all
Ứng dụng với ngrok
Ngrok cực kỳ hữu ích trong tương đối nhiều trường hợp, nếu bạn xây dựng 1 con bot của service mặt thứ 3. Có lẽ bạn phải 1 có 1 webhookngrok đã xử lý việc đó giúp bạn để service mặt thứ 3 hoàn toàn có thể truy cập được vào local của doanh nghiệp trong lúc bạn dev. Hoặc bạn có nhu cầu sử dụng chủ yếu local của bản thân mình làm vps để tiết kiệm chi phí chi phí, ngrok cũng giúp bạn tạo ra 1 tên miền free được cho phép người khác có thể truy cập site bên trên local của bạn.tuy nhiên về performance thì không bảo đảm bằng phương pháp truyền thống.Xem thêm: Máu S And M Là Gì ? S&M Có Lợi Cho Sức Khỏe Hay Rước Họa Vào Thân
Bài viết reviews về 1 tool hữu ích dành riêng cho developer, hi vọng nó rất có thể giúp bạn trong một vài tình huống.

Mr D I'm a developer.
tweet tóm tắt