Để hiểu được những mánh khóe của các tin tặc trong việc khai thác thông tin của người dùng em đã chọn nghiên cứu về công cụ ngrok một công cụ với mục đích tốt đẹp là để thử nghiệm các sả
Trang 1- -
Học Phần: AN TOÀN MẠNG
Báo Cáo: Tìm hiểu về công cụ ngrok trong bộ Kali Tools
Giảng viên hướng dẫn:
Hà Nội, tháng 12 năm 2021 HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN I
Trang 2MỤC LỤC
MỤC LỤC 1
LỜI NÓI ĐẦU 3
DANH MỤC CÁC HÌNH ẢNH 4
DANH MỤC CÁC BẢNG 5
DANH SÁCH CÁC THUẬT NGỮ 6
CHƯƠNG 1: GIỚI THIỆU VỀ CÔNG CỤ NGROK 7
1 Lịch sử hình thành [1] 7
1.1 Công cụ ngrok đã ra đời như thế nào? 7
1.2 Tại sao ngrok lại thành công? 8
2 Giới thiệu về công cụ ngrok [2] 9
2.1 Khái niệm 9
2.2 Các tính năng chính của ngrok 9
2.3 Một số ứng dụng chính của ngrok 9
3 Tại sao lại sử ngrok được xếp trong mục Exploitation Tools trong bộ Kali Tools? 9
CHƯƠNG 2: HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG CÔNG CỤ NGROK [3] 11
1 Hướng dẫn cài đặt ngrok trên máy Windows và Linux 11
1.1 Cài ngrok trên Windows 11
1.2 Cài ngrok trên Linux 12
2 Hướng dẫn sử dụng công cụ ngrok 13
2.1 Hướng dẫn lưu authtoken vào tệp cấu hình 13
2.2 Hướng dẫn khởi động HTTP tunnel 14
2.3 Hướng dẫn khởi động TCP tunnel 15
2.4 Hướng dẫn khởi động đường hầm bằng tệp cấu hình 16
2.5 Hướng dẫn cập nhật ngrok phiên bản mới nhất 17
Trang 32.6 Hướng dẫn sử dụng nâng cao 18
CHƯƠNG 3: MỘT SỐ BÀI LAB SỬ DỤNG NGROK 20
1 LAB 1: Phishing bằng ngrok 20
1.1 Giới thiệu 20
1.2 LAB 1.1: ngrok + setoolkit 20
1.3 LAB 1.2: ngrok + seeker 26
2 LAB 2: Tấn công chiếm quyền điều khiển thiết bị từ xa 28
2.1 Giới thiệu 28
2.2 Lab 2: ngrok + Metasploit Framework 29
CHƯƠNG 4: ĐÁNH GIÁ VÀ KẾT LUẬN 32
1 Đánh giá về công cụ ngrok đối với an toàn mạng 32
2 Kết luận 33
TÀI LIỆU THAM KHẢO 35
Trang 4LỜI NÓI ĐẦU
Nhờ sự phát triển của Internet khiến cho chúng ta có thể kết nối với nhau bỏ qua khoảng cách địa lý, và nhờ tốc độ của Internet ngày càng cải thiện khiến cho việc phát triển các công nghệ trở nên dễ dàng hơn và công nghệ ngày càng trở nên trong suốt và thân thiện với người dùng cũng như đòi hỏi người dùng không cần quá nhiều kiến thức về tin học cũng có thể sử dụng Nhưng mặt trái của việc phát triển này là các tin tặc cũng lợi dụng sự phát triển này để thực hiện các cuộc khai thác nhắm đến các người dùng ít hiểu biết về tin học Để hiểu được những mánh khóe của các tin tặc trong việc khai thác thông tin của người dùng em đã chọn nghiên cứu về công cụ ngrok một công cụ với mục đích tốt đẹp là để thử nghiệm các sản phẩm mạng trở thành một công cụ cho các tin tặc tiếp cận đến những người dùng ít hiểu biết
Trong bài báo cáo ta sẽ tìm hiểu về lịch sử hình thành và phát triển của công cụ ngrok, giới thiệu về các tính năng và ứng dụng của ngrok, hướng dẫn cài đặt và sử dụng công cụ ngrok, một số bài lab để cho thấy cách tin tặc lạm dụng công cụ này và cuối cùng
là đánh giá kết luận về công cụ này Trong bài báo cáo này chỉ đề cập đến các tính năng miễn phí của công cụ ngrok và đi sâu vào các tính năng mà tin tặc thường lạm dụng và có thể lạm dụng
Cuối cùng em xin gửi lời cảm ơn đến TS Đặng Minh Tuấn đã giúp đỡ em về các kiến thức cơ bản về bộ môn An toàn mạng trên lớp để em có thể hoàn thành bài báo cáo này
Trang 5DANH MỤC CÁC HÌNH ẢNH
Hình 1.1 Mô tả ngrok trên GitHub [2] 7
Hình 2.1 Tải bản ZIP ngrok trên trang chủ của ngrok 11
Hình 2.2 Hình ảnh khởi động ngrok.exe 12
Hình 2.3 Tải bản TGZ ngrok trên trang chủ của ngrok 13
Hình 2.4 Lấy authtoken trong dashboard của ngrok 14
Hình 2.5 Tệp cấu hình ngrok.yml 16
Hình 3.1 Công cụ setoolkit và seeker 20
Hình 3.2 Kết quả chạy lệnh ngrok http 80 21
Hình 3.3 Chụp màn hình công cụ setoolkit 1 22
Hình 3.4 Chụp màn hình công cụ setoolkit 2 22
Hình 3.5 Chụp màn hình công cụ setoolkit 3 23
Hình 3.6 Chụp màn hình setoolkit 4 23
Hình 3.7 Chụp màn hình setoolkit 5 24
Hình 3.8 Kết quả sao chép trang www.facebook.com 24
Hình 3.9 Truy cập và đăng nhập facebook giả mạo trên một thiết bị khác 25
Hình 3.10 Thông tin về tài khoản facebook lấy được 25
Hình 3.11 Chụp màn hình seeker 1 26
Hình 3.12 Kết quả chạy lệnh ngrok http 8080 27
Hình 3.13 Nạn nhân xin cấp quyền truy cập drive và cho phép lấy thông tin GPS 27
Hình 3.14 Thông tin về thiết bị và tọa độ ta lấy được từ máy nạn nhân 28
Hình 3.15 Tọa độ của nạn nhân trên Google Map 28
Hình 3.16 Chụp màn hình file ~/.ngrok2/ngrok.yml 29
Hình 3.17 Kết quả lệnh ngrok start all 29
Hình 3.18 Tạo mã độc bằng msfvenom 29
Hình 3.19 Nạn nhân tải phần mềm độc hại về qua ngrok 30
Hình 3.20 Đã có một kết nối 30
Hình 3.21 Thực hiện lệnh screenshot trên máy nạn nhân 31
Hình 3.22 Ảnh chụp màn hình được lưu trong máy của kẻ tấn công 31
Hình 4.1 Google cảnh báo các trang web có tên miền phụ là ngrok.io 33
Trang 6DANH MỤC CÁC BẢNG
Bảng 2.1 Tùy chọn lệnh của authtoken 14
Bảng 2.2 Tùy chọn lệnh của http 15
Bảng 2.3 Ví dụ sử dụng lệnh http 15
Bảng 2.4 Tùy chọn lệnh của tcp 16
Bảng 2.5 Tùy chọn của lệnh start 17
Bảng 2.6 Ví dụ sử dụng lệnh start 17
Bảng 2.7 Tùy chọn của lệnh update 17
Bảng 2.8 Ví dụ sử dụng lệnh update 18
Bảng 2.9 In một số thông tin trong ngrok 18
Bảng 2.10 Tùy chọn lệnh của bản ngrok miễn phí 18
Trang 7GitHub Là một dịch vụ cung cấp kho lưu trữ mã nguồn Git dựa trên nền
web cho các dự án phát triển phần mềm
Hackathon Là một phần mềm được lập trình để thi trong một thời gian giới
HTTP Callback Là hàm được gọi khi có một sự kiện nào đó diễn ra
HTTP request Yêu cầu HTTP là thông tin từ client gửi đến server, yêu cầu server
NAT (Network Address
Translation)
Biên dịch địa chỉ mạng trong mạng máy tính là quá trình thay đổi thông tin địa chỉ IP trong gói tin đang được truyền qua một thiết bị định tuyến
Phishing Tấn công giả mạo trong lĩnh vực bảo mật máy tính, là một hành vi
giả mạo ác ý nhằm lấy được các thông tin nhạy cảm PSTN ((Public Switched
là giao thức hướng kết nối
tunnel Đường hầm là một giao thức cho phép di chuyển an toàn dữ liệu
từ mạng này sang mạng khác
Twilio Là dịch vụ cho phép bạn xây dựng ứng dụng liên quan đến việc
gửi và nhận các tin nhắn và cuộc gọi trên điện thoại
URL (Uniform Resource
Trang 8CHƯƠNG 1: GIỚI THIỆU VỀ CÔNG CỤ NGROK
1 Lịch sử hình thành [1]
1.1 Công cụ ngrok đã ra đời như thế nào?
Các lập trình viên thường luôn phải cập nhật các kiến thức về công nghệ mới để không bị tụt hậu với sự phát triển quá nhanh của công nghệ Ngôn ngữ lập trình là một trong những kiến thức cần phải cập nhật, học một ngôn ngữ lập trình mới còn giúp các lập trình viên dễ tiếp cận với nhiều mảng màu trong công nghệ (như C/C++ thì sẽ được tiếp xúc với mảng lập trình nhúng, PHP sẽ được tiếp xúc nhiều hơn với mảng lập trình web) Không những vậy, việc có nhiều ngôn ngữ lập trình hơn trong CV cũng giúp các lập trình viên tiếp cận được với nhiều công việc với mức lương cao hơn
Với Alan Shreve cũng vậy, anh ấy muốn học ngôn ngữ lập trình Go và cách để anh
ý tiếp cận với ngôn ngữ này chính là lập trình một sản phẩm mã nguồn mở hoàn chỉnh và
sẽ sử dụng sản phẩm này như một phần của sơ yếu lý lịch công khai mà anh ấy sẽ dùng để xin việc sau này Ban đầu, sản phẩm anh muốn tạo ra là một sản phẩm giúp phát triển các ứng dụng webhooks một cách dễ dàng hơn Tuy nhiên sản phẩm này thực chất là một sản phẩm đã được xây dựng hoàn chỉnh trước đó là LocalTunnel và Alan đã hỏi ý kiến nhà phát triển sản phẩm đó để anh ấy sử dụng ngôn ngữ Go để lập trình lại sản phẩm này vì theo anh
“Chuyển một dự án đã có sẵn là một cách tuyệt với để học một ngôn ngữ mới” Anh đã đưa những dự án Go đầu tiên của mình lên GitHub công khai lần đầu vào năm 2013 và gọi nó
là ngrok
Hình 1.1 Mô tả ngrok trên GitHub [2]
Trang 9Trong khi Alan xây dựng một ứng dụng Twilio và thử sử dụng nó bằng cách dùng điện thoại để gọi đến số của Twilio, tuy nhiên những thứ anh ấy nhận lại được chỉ là một tin nhắn “An application error has occurred” trên nhật ký của phần mềm nghĩa là “đã xảy
ra lỗi ứng dụng” Khi đó thì anh nhận ra là còn rất nhiều bước trung gian để cuộc gọi có thể đến được ứng dụng của anh ý: “Tôi nhận ra rằng mình đang bắt đầu kết nối âm thanh/tín hiệu tới một tháp di động và nó được truyền qua PSTN thông qua nhiều nhà cung cấp đến trung tâm dữ liệu của Twilio, nơi đang thực hiện một HTTP request đến các dịch vụ đường hầm (tunnel service) của tôi và sau đó gửi nó qua dịch vụ cục bộ của tôi Đó là một HTTP request thực sự, thực sự đắt tiền.” Alan đã có suy nghĩ rằng thay vì cứ mỗi lần gọi phải quay
số một lần để tạo ra một HTTP request đắt tiền mới tại sao không sử dụng lại các HTTP request cũ Với công cụ ngrok, Alan có thể xem tất cả các tham số của HTTP request và sử dụng nó để phát lại thay vì phải quay số để sinh ra một HTTP request mới
1.2 Tại sao ngrok lại thành công?
Ngày nay, hơn 40000 nhà phát triển sử dụng ngrok Đây là một công cụ cực kỳ hữu ích để sử dụng khi bạn đang phát triển một ứng dụng Nhưng Alan gần như không xây dựng ứng dụng đó mà chỉ chuyển đổi từ một ứng dụng đã có là LocalTunnel sang ngôn ngữ Go LocalTunnel khi đó cũng được sử dụng rộng rãi Tuy nhiên, khao khát học ngôn ngữ lập trình Go của Alan đã đưa anh ấy đến với con đường tạo ra ngrok thay vì là tạo ra một sản phẩm có tính thương mại hóa
Việc ưu tiên sử dụng bên thứ ba để phát triển web dễ dàng hơn đã khiến cho ngrok trở thành một phương án phù hợp và mạnh mẽ Điều này không xảy ra một cách tình cờ, Alan đã nhận được phản hồi từ các nhà phát triển đã sử dụng ngrok, những người này cũng hỏi đồng nghiệp xem họ nghĩ gì về những đóng góp của ngrok với cộng đồng Go (The Go Community) Chính nhờ những phản hồi đóng góp của cộng đồng Go mà ngrok trở nên vô cùng thành công Alan cho biết: “Thành công của ngrok với tư cách là một dự án là nhờ một phần không nhỏ vào việc chọn Go làm ngôn ngữ triển khai.” Nếu không có cộng đồng
Go, ngrok có thể không có được như ngày hôm nay và các HTTP request có thể có thêm một vài vòng cần đi qua trước khi chúng đến được local tunnel của bạn
Ngoài cộng đồng Go sự thành công của ngrok cũng ảnh hưởng bởi cộng đồng SIGNAL (The SIGNAL Community) - một cộng đồng phát triển những ứng dụng Twillio Vào năm 2016, Alan Shreve đã có một buổi tọa đàm để nói về sự ra đời của ngrok và giới thiệu các dịch vụ của ngrok tại hội thảo EQUIP của Twilio Từ đó đưa ngrok đến với nhiều người dùng hơn
Trang 102 Giới thiệu về công cụ ngrok [2]
2.1 Khái niệm
Công cụ ngrok là một phần mềm mã nguồn mở do Alan Shreve phát triển sử dụng phần lớn là ngôn ngữ lập trình Go và JavaScript Công cụ ngrok là một reverse proxy tạo
ra một tunnel an toàn từ một public endpoint đến một web service đang chạy cục bộ Công
cụ ngrok nắm bắt và phân tích tất cả lưu lượng qua tunnel để kiểm tra và phát lại sau này
2.2 Các tính năng chính của ngrok
Đưa bất kỳ dịch vụ HTTP nào sau NAT hoặc tường lửa (firewall) lên Internet với tên miền phụ (subdomain) của ngrok.com
Đưa bất kỳ dịch vụ TCP nào sau NAT hoặc tường lửa (firewall) lên Internet trên một cổng ngẫu nhiên của ngrok.com
Kiểm tra tất cả các yêu cầu/phản hồi HTTP được truyền qua tunnel
Phát lại bất kỳ yêu cầu nào được truyền qua tunnel
2.3 Một số ứng dụng chính của ngrok
Chia sẻ tạm thời một trang web chỉ chạy trên máy của nhà phát triển
Demo ứng dụng tại hackathon mà không cần triển khai
Phát triển bất kỳ dịch vụ nào sử dụng webhook (HTTP callbacks) bằng cách cho phép bạn phát lại các yêu cầu đó
Gỡ lỗi và hiểu bất kỳ dịch vụ web nào bằng cách kiểm tra lưu lượng HTTP
Chạy các dịch vụ được nối mạng trên các máy bị tắt tường lửa khỏi internet
3 Tại sao lại sử ngrok được xếp trong mục Exploitation Tools trong bộ Kali Tools?
Exploitation Tools (công cụ khai thác): Là các phần mềm máy tính để thực hiện tấn công, khai thác và xâm nhập vào các lỗ hổng, điểm yếu của các hệ thống máy tính Một số Exploitation Tools phổ biến trong bộ Kali Tools là: ngrok, Metasploit, Armitage, …
Tuy các mục đích tạo ra ngrok của Alan Shreve không có một chút nào liên quan đến việc khai thác các điểm yếu lỗ hổng hay tấn công nhưng ngrok vẫn được xếp trong mục Explotation Tools của bộ Kali Tools bởi các lý do sau Thứ nhất, các cuộc tấn công mạng dựa trên ngrok khó bị phát hiện hơn vì chúng sử dụng các tên miền phụ ngẫu nhiên của ngrok.com, bên cạnh việc vượt qua các thiết bị bảo mật như tường lửa, do đó khiến nó trở thành mục tiêu hoạt động của tội phạm mạng Thứ hai, ngrok dễ dàng đưa được các trang web từ máy chủ cục bộ lên Internet tức là cả những trang Phishing lừa đảo cũng có thể được
Trang 11đưa lên một cách dễ dàng Thứ ba, bản thân những tội phạm mạng hiểu rõ được các tính năng của ngrok và có thể lạm dụng những tính năng với mục đích tốt đẹp này để tiến hành các vi phạm trên không gian mạng Nhìn chung điều khiến ngrok từ một công cụ được sinh
ra với mục đích tốt nhưng bị lạm dụng để trở thành một công cụ tấn công hữu ích dành cho tin tặc
Một số cuộc tấn công giựa trên công cụ ngrok tiêu biểu: Vào năm 2019, tội phạm mạng đã lạm dụng đường hầm ngrok được lưu trữ trên AWS để cung cấp Lokibot Vào tháng 9 năm 2020, các nhà nghiên cứu đã xác định được nhóm Pioneer kitten APT, một nhóm Đe doạ có trụ sở tại Iran đang lạm dụng nền tảng ngrok Nhóm này đã bán thông tin đăng nhập của công ty bị xâm phạm trên các diễn đàn tội phạm mạng
Trang 12CHƯƠNG 2: HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG CÔNG CỤ
NGROK [3]
1 Hướng dẫn cài đặt ngrok trên máy Windows và Linux
1.1 Cài ngrok trên Windows
Đầu tiên chúng ta cần tải bản nén của ngrok trên https://ngrok.com/download trong
mục Windows bằng cách chọn Download ZIP file được đóng khung đỏ như Hình 2.1 hoặc
dùng đường dẫn dưới đây:
https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-windows-amd64.zip
Hình 2.1 Tải bản ZIP ngrok trên trang chủ của ngrok
Sau khi tải xong bản nén ta thực hiện giải nén file được một phần mềm là ngrok.exe Khởi chạy chương trình này thì sẽ mở ứng dụng Command Prompt của Windows với các hướng dẫn dòng lệnh căn bản của ngrok, phiên bản ngrok, tác giả và một số mô tả khác như
Hình 2.2
Trang 13Hình 2.2 Hình ảnh khởi động ngrok.exe
Ngoài ra nếu máy Windows có phần mềm quản lý Chocolatey thì có thể cài bằng
dòng lệnh sau trên Command Prompt: choco install ngrok
1.2 Cài ngrok trên Linux
Cài ngrok bằng Apt: curl -s https://ngrok-agent.s3.amazonaws.com/ngrok.asc | sudo
tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null && echo "deb agent.s3.amazonaws.com buster main" | sudo tee /etc/apt/sources.list.d/ngrok.list && sudo apt update && sudo apt install ngrok
https://ngrok-Cài ngrok bằng Snap: snap install ngrok
Cài ngrok bằng cách tài bản nén trên https://ngrok.com/download trong mục Linux
bằng cách chọn Download TGZ file được đóng khung đỏ như Hình 2.3 hoặc dùng đường
dẫn dưới đây:
https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.tgz
Trang 14Hình 2.3 Tải bản TGZ ngrok trên trang chủ của ngrok
Nếu cài bằng cách tải bản nén thì cần thêm một bước là giải nén bằng lệnh sau: sudo
tar xvzf ~/Downloads/ngrok-stable-linux-amd64.tgz -C /usr/local/bin
2 Hướng dẫn sử dụng công cụ ngrok
Trong phần hướng dẫn này chỉ hướng dẫn các tính năng miễn phí của công cụ ngrok
Để tìm hiểu thêm về các tính năng nâng cao cần phải trả phí ta có thể tìm hiểu thêm ở tài liệu chính thức từ trang chủ ngrok: https://ngrok.com/docs
2.1 Hướng dẫn lưu authtoken vào tệp cấu hình
Cách sử dụng lệnh: ngrok authtoken [command options] [arguments ]
Lệnh authtoken sửa đổi tệp cấu hình ngrok bao gồm authtoken được chỉ định Theo
mặc định, tệp cấu hình này được đặt tại $HOME/.ngrok2/ngrok.yml
Dịch vụ ngrok.com yêu cầu bạn đăng ký tài khoản để sử dụng nhiều tính năng dịch
vụ nâng cao Để liên kết với máy khách với một tải khoản, nó phải chuyển một mã thông báo bí mật cho dịch vụ ngrok.com khi nó khởi động Thay vì truyền authtoken này cho mọi lời gọi, ta có kể dùng lệnh này để lưu nó vào tệp cấu hình của mình để ứng dụng máy khách luôn được xác thực đúng cách
Trước khi ta có sử dụng ngrok thì ta cần phải có 1 authtoken, và authtoken này là của riêng mỗi một người Có thể lấy authtoken này bằng cách đăng ký tài khoản ngrok tại
đây: https://dashboard.ngrok.com/signup
Trang 15Đăng nhập vào dashboard của ngrok vào mục Getting Started chọn Your Authtoken
để lấy authtoken bằng cách nhấn nút copy đóng khung đỏ trong Hình 2.4 để copy đoạn mã
authtoken (ngrok khuyến cáo bạn không nên chia sẻ auth token):
Hình 2.4 Lấy authtoken trong dashboard của ngrok
Các lệnh tùy chọn – command options của lệnh authtoken được ghi chi tiết trong
Bảng 2.1
Bảng 2.1 Tùy chọn lệnh của authtoken
Ví dụ sử dụng: Lưu <token> vào ~/.ngrok2/ngrok.yml: ngrok authtoken <token> 2.2 Hướng dẫn khởi động HTTP tunnel
Cách sử dụng câu lệnh: ngrok http [command options] [arguments ]
Khởi động một tunnel lắng nghe lưu lượng HTTP/HTTPS với một hostname cụ thể Các yêu cầu HTTP công khai có tiêu đề là máy chủ để được điều hướng đến các đường hầm phù hợp
HTTPS endpoint chấm dứt lưu lượng TLS tại máy chủ ngrok bằng chứng chỉ ngrok.io Lưu lượng HTTP được giải mã sau đó sẽ được chuyển tiếp qua tunnel an toàn và sau đó đến máy chủ cục bộ của bạn Nếu ta không muốn lưu lượng TLS kết thúc tại máy chủ ngrok, hãy sử dụng TLS hoặc TCP tunnel
Các lệnh tùy chọn – command options của lệnh http được ghi chi tiết trong Bảng
Trang 16Bảng 2.2 Tùy chọn lệnh của http
Một số ví dụ sử dụng sẽ được mô tả ở Bảng 2.3
Bảng 2.3 Ví dụ sử dụng lệnh http
ngrok http <port> Trỏ đường dẫn tên miền phụ của ngrok.io đến web
localhost của bạn <port> là giá trị cổng bạn đưa web
lên
ngrok http <domain>:<port> Điều hướng lưu lượng đến một cổng của máy chủ khác
(nếu không điển <port> thì giá trị này mặc định bằng
Viết lại tiêu đề Máy chủ lưu trữ thành <hostname>
ngrok http file:///var/log Cung cấp các tệp cục bộ trong /var/log
ngrok http https://localhost:8443 Chuyển tiếp đến máy chủ https cục bộ
2.3 Hướng dẫn khởi động TCP tunnel
Cách sử dụng câu lệnh: ngrok tcp [command options] [arguments ]
Trang 17Khởi dộng một tunnel chuyển tiếp tất cả lưu lượng TCP trên một cổng công cộng tới một địa chỉ cục bộ Điều này cực kỳ hữu ích cho các dịch vụ chạy lưu lượng không phải HTTP (ssh, sip, rdp, game servers, …)
Các lệnh tùy chọn – command options của lệnh tcp được ghi chi tiết trong Bảng 2.4
Cách sử dụng câu lệnh: ngrok start [command options] [arguments ]
Khởi động các đường hầm theo tên từ tệp cấu hình Ta có thể chỉ định bất kỳ số lượng tên đường hầm nào Ta có thể khởi động tất cả các đường hầm trong tệp cấu hình
bằng tùy chọn lệnh all
Tệp cấu hình mặc định là tệp ở đường dẫn $HOME/.ngrok2/ngrok.yml Bao gồm
authtoken và các tunnel như hình Hình 2.5 các tunnel sẽ được phân biệt bằng tên trong
Hình 2.5 ta có 2 tunnel là first-app và second-app trong các tunnel sẽ có các thành phần là
addr (địa chỉ của cổng) và proto (tên loại hình dịch vụ)
Hình 2.5 Tệp cấu hình ngrok.yml
Các lệnh tùy chọn – command options của lệnh start được ghi chi tiết trong Bảng
Trang 18Bảng 2.5 Tùy chọn của lệnh start
ngrok start first-app Khởi động tunnel có tên ‘first-app’ có trong tệp cấu hình
ngrok start first-app second-app Khởi động các tunnel có tên là ‘first-app’ và
‘second-app’ có trong tệp cấu hình
ngrok start all Khởi động tất cả các đường hầm trong tệp cấu hình
2.5 Hướng dẫn cập nhật ngrok phiên bản mới nhất
Cách sử dụng câu lệnh: ngrok update [command options] [arguments ]
Lệnh này kiểm tra dịch vụ web ngrok để tìm phiên bản mới hơn của ứng dụng khách ngrok Nếu có phiên bản mới hơn, nó sẽ tải xuống phiên bản này thay thế mã nhị phân ngrok bằng phiên bản mới sau khi xác minh bằng mật mã bản cập nhật có an toàn để áp dụng hay không
Để cập nhật thành công, mã nhị phân ngrok phải nằm trong thư mục mà người dùng hiện tại có thể ghi được Nếu đã đặt ngrok trong đường dẫn hệ thống, ta cần phải chạy nó với quyền root hoặc Administrator
Các lệnh tùy chọn – command options của lệnh update được ghi chi tiết trong Bảng 2.7
Bảng 2.7 Tùy chọn của lệnh update
command options
channel