@akbaraditamasp/ssh-tunnel
Version:
A CLI app to easily create SSH tunnels
33 lines • 1.28 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const commander_1 = require("commander");
const tunnel_1 = __importDefault(require("./tunnel"));
const fs_1 = __importDefault(require("fs"));
const program = new commander_1.Command();
program
.name("ssh-tunnel")
.description("CLI to create SSH Tunnel")
.version("1.0.3");
program
.command("start")
.description("Start SSH Tunnel")
.argument("<REMOTE_PORT>", "Remote port forwarding")
.argument("<LOCAL_PORT>", "Local port forwarding")
.requiredOption("-c, --config <CONFIG_PATH>", "SSH config file path")
.action((remotePort, local, { config: configPath }) => {
const config = JSON.parse(fs_1.default.readFileSync(configPath).toString("utf-8"));
const parseLocal = local.split(":");
let localHost = "127.0.0.1";
let localPort = Number(local);
if (parseLocal.length > 1) {
localHost = parseLocal[0];
localPort = Number(parseLocal[1]);
}
(0, tunnel_1.default)(config, remotePort, localPort, localHost);
});
program.parse();
//# sourceMappingURL=ssh-tunnel.js.map