propellor-5.13: property-based host configuration management in haskell
Safe HaskellNone




isBridge :: Property DebianLike Source #

Sets up a tor bridge. (Not a relay or exit node.)

Uses port 443

isRelay :: Property DebianLike Source #

Sets up a tor relay.

Uses port 443

named :: NodeName -> Property (HasInfo + DebianLike) Source #

Makes the tor node be named, with a known private key.

This can be moved to a different IP without needing to wait to accumulate trust.

torPrivKey :: Context -> Property (HasInfo + DebianLike) Source #

Configures tor with secret_id_key, ed25519_master_id_public_key, and ed25519_master_id_secret_key from privdata.

server :: Property DebianLike Source #

A tor server (bridge, relay, or exit) Don't use if you just want to run tor for personal use.

configured :: [(String, String)] -> Property DebianLike Source #

Specifies configuration settings. Any lines in the config file that set other values for the specified settings will be removed, while other settings are left as-is. Tor is restarted when configuration is changed.

bandwidthRate :: BwLimit -> Property DebianLike Source #

Limit incoming and outgoing traffic to the specified amount each.

For example, PerSecond "30 kibibytes" is the minimum limit for a useful relay.

hiddenService :: HiddenServiceName -> Port -> Property DebianLike Source #

Enables a hidden service for a given port.

If used without hiddenServiceData, tor will generate a new private key.

hiddenServiceAvailable :: HiddenServiceName -> Port -> Property DebianLike Source #

Same as hiddenService but also causes propellor to display the onion address of the hidden service.

hiddenServiceData :: IsContext c => HiddenServiceName -> c -> Property (HasInfo + DebianLike) Source #

Load the private key for a hidden service from the privdata.

saneNickname :: String -> NickName Source #

Convert String to a valid tor NickName.