Giter Site home page Giter Site logo

wireguard-coreos's Introduction

WireGuard builds for CoreOS

Automatically built WireGuard torcx packages for latest CoreOS releases.

Built by Travis CI to the releases page of this GitHub repository.

Getting Started

Via Container Linux Config and Ignition (preferred)

You can use the example Container Linux Config, then convert it onto a ignition.json file and provide it to your CoreOS instances.

Manually

  • Download the torcx package for your CoreOS release from the releases page to your torcx folder.
source /etc/os-release
wget https://github.com/miguelangel-nubla/WireGuard-CoreOS/releases/download/latest-all/WireGuard.CoreOS_${VERSION_ID}.torcx.tgz \
-O /var/lib/torcx/store/${VERSION_ID}/WireGuard:CoreOS_${VERSION_ID}.torcx.tgz
  • Add a new torcx profile.
jq '.value.images += [{ "name": "WireGuard", "reference": "'CoreOS_${VERSION_ID}'" }]' /usr/share/torcx/profiles/vendor.json > /etc/torcx/profiles/wg.json
  • echo wg > /etc/torcx/next-profile
  • Reboot. WireGuard should be available in /run/torcx/bin/wg. Installation is done.
  • After each reboot and before using wireguard you should load the required kernel modules:
source /run/metadata/torcx
/sbin/modprobe ip6_udp_tunnel
/sbin/modprobe udp_tunnel
/sbin/insmod ${TORCX_UNPACKDIR}/WireGuard/lib/modules/$(uname -r)/extra/wireguard.ko
  • Load you config with /run/torcx/bin/wg-quick

How to handle CoreOS updates

The /etc/wireguard-setup script at the example Container Linux Config will try to fetch the torcx package for the new CoreOS version.

If it fails or there are no packages available for the new version, it will fallback to try building WireGuard directly on the target machine.

Build yourself

For Ubuntu, git clone this repo, then

cd WireGuard-CoreOS
sudo apt-get update
sudo apt-get install -y curl gpg2 bzip2 systemd-container dirmngr
bash run.sh

Packages will be at output/

Notes

At the time of writing, building the latest WireGuard sources result in a Segmentation fault on most of the CoreOS developer container releases.
The Travis CI job will keep trying daily until the upstream code is fixed.

The tag latest-all on the releases page will always have the latest WireGuard release compatible with each respective CoreOS release.

Based on

wireguard-coreos's People

Contributors

miguelangel-nubla avatar nopdotcom avatar

Watchers

James Cloos avatar

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.