# Install ocproxy with Homebrew, apt, dnf, Nix

User-level SOCKS and port forwarding proxy. Version 1.60 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:ocproxy
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install ocproxy
```

  Evidence: local Homebrew formula metadata

### Linux

- Debian apt (92%):

```sh
sudo apt install ocproxy
```

  Evidence: Debian stable package indexes: ocproxy from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install ocproxy
```

  Evidence: Fedora Rawhide package metadata: ocproxy from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#ocproxy
```

  Evidence: nixpkgs package indexes: pkgs/by-name/oc/ocproxy/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:ocproxy
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/ocproxy>
- **Version:** 1.60
- **Source summary:** User-level SOCKS and port forwarding proxy
- **Homepage:** <https://github.com/cernekee/ocproxy>
- **Repository:** <https://github.com/cernekee/ocproxy>
- **Upstream docs:** <https://github.com/cernekee/ocproxy#readme>
- **License:** BSD-3-Clause
- **Source archive:** <https://github.com/cernekee/ocproxy/archive/refs/tags/v1.60.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- ocproxy (cli)
- ocproxy (alias)

## Dependencies

- libevent

## Build dependencies

- autoconf
- automake

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.60
- Local data: ok
- Upstream repository: https://github.com/cernekee/ocproxy
- Upstream latest detected: v1.60 (current)
- info: No package-manager update timestamp was available.
## Project history and usage

ocproxy is a user-level SOCKS and port-forwarding proxy designed for OpenConnect VPN sessions. Instead of sending all host traffic through a VPN interface, it lets users route only selected connections through forwarded ports or a SOCKS5 proxy.

### Project history

The project changelog lists an initial release on 2012-11-20, version 1.50 on 2014-07-06, and version 1.60 on 2017-01-08. The authors file credits David Edmondson and Kevin Cernekee for ocproxy/vpnns work in 2012-2014 and Google Inc. for 2016 contributions, with lwIP credited separately.

Version 1.50 fixed stability issues seen under SOCKS browsing load, added a man page, moved the build to GNU autotools, updated lwIP, and added Ubuntu PPA packaging scripts. Version 1.60 added an experimental `vpnns` helper for Linux network namespaces and refined SOCKS binding behavior.

### Adoption history

ocproxy is niche but broadly recognizable in VPN packaging: Homebrew, Debian/Ubuntu, Fedora, Nix, and related package sets carry it. Its presence in these package managers reflects a practical sysadmin need rather than a large application ecosystem: selective VPN routing without root-level host network changes.

### How it is used

The README says ocproxy should be started by OpenConnect with `--script-tun`, commonly with `-D` for a SOCKS5 listener and `-L` for local-to-remote port forwarding. Users then point SSH, RDP, SOCKS-aware tools, browser proxy rules, tsocks, or Dante at the local proxy or forwarded ports.

The documentation also describes use cases such as routing different applications or browser profiles through different VPNs, connecting to multiple VPNs with overlapping address ranges, and working on multiuser systems or machines where root access is unavailable or undesirable.

### Why package nerds care

ocproxy is a compact example of a network utility whose packaging value comes from composition: OpenConnect supplies the VPN transport, lwIP supplies a userland TCP/IP stack, and ocproxy exposes a Unix-friendly proxy/port-forwarding surface.

### Timeline

- 2012-11-20: initial release.
- 2014-07-06: version 1.50 improved SOCKS stability, added a man page, adopted autotools, and refreshed lwIP.
- 2017-01-08: version 1.60 added experimental `vpnns` and local SOCKS bind-address support.

### Related projects

- ocproxy is closely tied to OpenConnect, lwIP, SOCKS tooling such as tsocks and Dante, and the Linux network-namespace helper `vpnns` included in the same repository.

### Sources

- <https://github.com/cernekee/ocproxy>
- <https://manpages.ubuntu.com/manpages/bionic/man1/ocproxy.1.html>
- <https://raw.githubusercontent.com/cernekee/ocproxy/master/AUTHORS>
- <https://raw.githubusercontent.com/cernekee/ocproxy/master/CHANGES>
- <https://raw.githubusercontent.com/cernekee/ocproxy/master/README.md>
- source_facts.executables
- source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** ocproxy
- **Version Scheme:** 0
- **Revision:** 1
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - ocproxy - 1.60-1+b3: normalized package name match | Debian stable package indexes: ocproxy from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | SOCKS proxy for openconnect | https://github.com/cernekee/ocproxy
- Nix - ocproxy: normalized package name match | nixpkgs package indexes: pkgs/by-name/oc/ocproxy/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - ocproxy - 1.60-1build6: normalized package name match | Ubuntu 24.04 LTS package indexes: ocproxy from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | SOCKS proxy for openconnect | https://github.com/cernekee/ocproxy
- dnf - ocproxy - 1.60-16.20190728gitc98f06d.fc44: normalized package name match | Fedora Rawhide package metadata: ocproxy from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | OpenConnect Proxy | https://github.com/cernekee/ocproxy


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [libevent](https://www.automicvault.com/pkg/brew/libevent/) - Runtime dependency declared by Homebrew.
- [autoconf](https://www.automicvault.com/pkg/brew/autoconf/) - Build dependency declared by Homebrew.
- [automake](https://www.automicvault.com/pkg/brew/automake/) - Build dependency declared by Homebrew.
- [gost](https://www.automicvault.com/pkg/brew/gost/) - Shares av.db curated category or tags: cli, networking, port-forwarding, proxy, socks.
- [connect](https://www.automicvault.com/pkg/brew/connect/) - Shares av.db curated category or tags: cli, networking, proxy, socks.
- [dante](https://www.automicvault.com/pkg/brew/dante/) - Shares av.db curated category or tags: cli, networking, proxy, socks.
- [dsocks](https://www.automicvault.com/pkg/brew/dsocks/) - Shares av.db curated category or tags: cli, networking, proxy, socks.
- [geph4](https://www.automicvault.com/pkg/brew/geph4/) - Shares av.db curated category or tags: cli, networking, proxy, vpn.
- [proxychains-ng](https://www.automicvault.com/pkg/brew/proxychains-ng/) - Shares av.db curated category or tags: cli, networking, proxy, socks.
- [redir](https://www.automicvault.com/pkg/brew/redir/) - Shares av.db curated category or tags: cli, networking, port-forwarding, proxy.
- [sing-box](https://www.automicvault.com/pkg/brew/sing-box/) - Shares av.db curated category or tags: cli, networking, proxy, vpn.
- [nylon](https://www.automicvault.com/pkg/brew/nylon/) - Local package facts share a topical domain. Shared terms: cli, libevent, networking, proxy.

## Combined YAML source

View the package source record on GitHub. [combined/ocproxy.yml](https://github.com/automic-vault/db/blob/main/combined/ocproxy.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
