Skip to content

Install & configure the Tinc mesh VPN with pyinfra.

License

Notifications You must be signed in to change notification settings

devbanu/pyinfra-tinc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyinfra Tinc

A pyinfra deploy that installs & configures the Tinc mesh VPN. Developed & tested with:

  • Ubuntu 18/20
  • Debian 9/10
  • CentOS 7/8

Usage

A default install and configure of a Tinc network is shown below. Each of the three deploy functions is detailed below.

from pyinfra_tinc import configure_tinc, install_tinc, sync_tinc_configurations

SUDO = True

install_tinc(netname='vpn0')
configure_tinc(netname='vpn0')
sync_tinc_configurations(netname='vpn0')

install_tinc

This deploy downloads, compiles & installs the tincd binary, along with any required deb/rpm packages required to do so. This uses the host.data.tinc_version variable.

configure_tinc

This deploy generates the Tinc configuration directory and files.

sync_tinc_configurations

This deploy syncs the host configuration files to all other hosts, which actually enables the tincd daemons to connect to each other and form the mesh network.

About

Install & configure the Tinc mesh VPN with pyinfra.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 88.8%
  • Jinja 6.9%
  • Shell 4.3%