Mallory : HTTP/HTTPS Proxy Over SSH

Mallory is a HTTP/HTTPS proxy over SSH tool.

Installation

  • Local machine: go get github.com/justmao945/mallory/cmd/mallory
  • Remote server: need our old friend sshd

Configueration

Config File

Default path is $HOME/.config/mallory.json, can be set when start program

mallory -config path/to/config.json

Content:

  • id_rsa is the path to our private key file, can be generated by ssh-keygen
  • local_smart is the local address to serve HTTP proxy with smart detection of destination host
  • local_normal is similar to local_smart but send all traffic through remote SSH server without destination host detection
  • remote is the remote address of SSH server
  • blocked is a list of domains that need use proxy, any other domains will connect to their server directly

Also Read – DrMemory : Memory Debugger for Windows, Linux, Mac & Android

{
“id_rsa”: “$HOME/.ssh/id_rsa”,
“local_smart”: “:1315”,
“local_normal”: “:1316”,
“remote”: “ssh://user@vm.me:22”,
“blocked”: [
“angularjs.org”,
“golang.org”,
“google.com”,
“google.co.jp”,
“googleapis.com”,
“googleusercontent.com”,
“google-analytics.com”,
“gstatic.com”,
“twitter.com”,
“youtube.com”
]
}

Blocked list in config file will be reloaded automatically when updated, and you can do it manually:

#send signal to reload
kill -USR2
#or use reload command by sending http request
mallory -reload

System config

  • Set both HTTP and HTTPS proxy to localhost with port 1315 to use with block list
  • Set env var http_proxy and https_proxy to localhost:1316 for terminal usage

Get the right suffix name for a domain

mallory -suffix www.google.com

A simple command to forward all traffic for the given port

#install it: go get github.com/justmao945/mallory/cmd/forward

#all traffic through port 20022 will be forwarded to destination.com:22
forward -network tcp -listen :20022 -forward destination.com:22

#you can ssh to destination:22 through localhost:20022
ssh root@localhost -p 20022

R K

Recent Posts

How to Install Java on Ubuntu 24.04 Easily in 2026

Java remains one of the most widely used programming platforms for servers, enterprise applications, Android…

1 day ago

How to Install DEB Files on Ubuntu in 2026 (Step-by-Step Beginner Guide)

Ubuntu users often download software directly from developer websites instead of using the default app…

1 day ago

Things to Do After Installing Ubuntu 26.04 LTS for a Fast, Secure Setup

Installing Ubuntu 26.04 LTS is only the first step toward building a smooth, secure, and…

3 days ago

How to Prevent Software Supply Chain Attacks

What is a Software Supply Chain Attack? A software supply chain attack occurs when a…

1 month ago

How UDP Works and Why It Is So Fast

When people ask how UDP works, the simplest answer is this: UDP sends data quickly…

2 months ago

How EDR Killers Bypass Security Tools

Endpoint Detection and Response (EDR) solutions have become a cornerstone of modern cybersecurity, designed to…

2 months ago