Giter Site home page Giter Site logo

tunnelblickctl's Introduction

tunnelblickctl

Build status

Command-line interface for Tunnelblick, the de facto OpenVPN client for OS X.

Install

Install latest release with Homebrew

brew tap benwebber/tunnelblickctl
brew install tunnelblickctl

Install manually

Download one of the pre-compiled releases, extract it, then copy tunnelblickctl to somewhere on your $PATH.

Usage

$ tunnelblickctl help
tunnelblickctl

USAGE:
    tunnelblickctl [SUBCOMMAND]

FLAGS:
    -h, --help    Prints help information

SUBCOMMANDS:
    connect       Connect to a VPN
    disconnect    Disconnect from a VPN
    help          Prints this message or the help of the given subcommand(s)
    install       Install an OpenVPN or Tunnelblick configuration
    launch        Launch Tunnelblick
    list          List VPN configurations [aliases: ls]
    quit          Quit Tunnelblick
    status        Show VPN connection status
    version       Show version information

License

MIT

tunnelblickctl's People

Contributors

benwebber avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

tunnelblickctl's Issues

brew formula needed

This really ought to be installed via brew install tunnelblickctl. Are you open to that?

Replace AppleScript with JavaScript

In OS X 10.10, Apple released a JavaScript interface for automation.

Apple tends to support the current version of macOS and the previous two versions. I think it's pretty safe to assume users will be able to use the JavaScript interface.

We'd be able to drop the custom AppleScript wrapper for Armin Ronacher's osascript package:

https://github.com/mitsuhiko/rust-osascript

Human-readable TX/RX values

  • Parse delimited data returned from AppleScript.
  • Convert TX/RX values to human-readable sizes using humansize.
  • Make new behaviour default; make old behaviour configurable with a command-line flag.

Add format specifiers to status output

Now that we use serde, we can output status information in a variety of formats, such as delimited text (CSV/TSV/ASCII), JSON, and a line-oriented format:

name = tunnel
state = CONNECTED
autoconnect = NO
bytesOut = 1024
bytesIn = 1024

Command to support importing an ovpn config file

Would be awesome if there were support for important an ovpn config file. My use case is that I hop on and off new VPNs throughout the day (generated for cloud infra), so I'm constantly having to import these.

Add command to uninstall tunnels

Continuing #3, we should have a command to uninstall configurations by name:

# Installs configuration as "vpn.example.org"
tunnelblickctl install vpn.example.org.ovpn
# Uninstalls configuration
tunnelblickctl uninstall vpn.example.org

It's not sufficient to remove the configuration from ~/Library/Application Support/Tunnelblick/Configurations or its system equivalent, because Tunnelblick installs backup shadow configurations.

I think we will need to script the Tunnelblick GUI, which may require users to allow tunnelblickctl to control the GUI in System Preferences.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.