All Projects → AnalogJ → lantern

AnalogJ / lantern

Licence: MIT license
Peer into your requests.

Programming Languages

go
31211 projects - #10 most used programming language
javascript
184084 projects - #8 most used programming language
Dockerfile
14818 projects
CSS
56736 projects
shell
77523 projects
HTML
75241 projects

lantern logo

Lantern

CircleCI Docker Pulls Docker Stars Docker Layers

Peer into your requests.

Introduction

Lantern is an open-source debugging proxy (similar to Fiddler/Charles Proxy) that is written in Go and can be hosted on a server. It uses the Chrome DevTools Inspector as a frontend UI, providing developers with a familiar interface for inspecting their network traffic.

lantern gif

Features

  • Open Source (MIT License)
  • Familiar Devtools UI
  • SSL/HTTPS Interception
  • Hostable MITM Proxy (run on a server)
  • Request/Responses persist between sessions.
  • Dockerized
  • Generates a .mobileconfig file for use with macOS and iOS

Setup

Lantern is designed to run via Docker, and as such we've created a docker-compose.yml file to get you started.

docker-compose up

Usage

After you've started up Lantern, there are 3 important URL's you'll want to be familiar with:

  • http://localhost:8080 is the URL for the Lantern WebUI. From here you can view any request/response that are sent through the proxy
  • http://localhost:8081 is the HTTP Proxy URL. On your test device, you'll want to configure a HTTP proxy. In a standard deployment, this will usually be assigned to a easy-to-remember URL that you can enter into your various devices: http://proxy.corp.example.com:8081
  • http://localhost:5050 is the URL for the (optional) Database Admin UI. From here you can view the content of the Lantern DB, where network traffic is stored.
    • database name: lantern
    • username: lantern
    • password: lantern-password

Here's a quick test you can run to ensure that everything is working correctly:

curl -k -x localhost:8081 https://www.google.com

Please note, the -k flag forces curl to ignore SSL certificates. If you're interested in intercepting SSL traffic (and removing the -k flag), you'll want to check the SSL_INTERCEPTION.md file in the docs directory.

TroubleShooting & Useful Tools

TODO:

License

MIT

Contributing

Please consider contributing by opening a pull request.

References

Web Frontend

API/Websockets

Database

Proxy

Install Certificates

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].