Added non-interactive installation

Orazio 2020-02-01 21:30:05 +01:00
parent c79803721a
commit 433219f3c1

39
Home.md

@ -7,15 +7,29 @@ PiVPN runs at least on the following boards:
* All SBC's running DietPi. This is currently: Odroid C1, Odroid C2 (arm64), Odroid XU3/4, Pine A64, NanoPi NEO, NanoPi NEO Air, NanoPi M1, Nan>
* Most servers running a Debian or Ubuntu based distro.
### What About Octopi?
## What About Octopi?
https://github.com/guysoft/OctoPi/issues/373 OctoPi doesn't play well with PiVPN installer as they use a git wrapper that blocks it from running as root user. To disable the git wrapper please do: `sudo rm /root/bin/git`
## Testing
Can install from test branch via
You can install from test branch via `curl -L https://test.pivpn.dev | TESTING= bash`
`curl -L https://test.pivpn.dev | TESTING= bash`
## Non-interactive installation
You can run the PiVPN installer from within scripts using the `--unattended` command line option provided with a .conf file. You can find examples [here](https://github.com/pivpn/pivpn/tree/master/examples).
```
curl -L https://install.pivpn.dev > install.sh
chmod +x install.sh
./install.sh --unattended options.conf
```
It's not required to specify all options. If some of them are missing, they will be filled with defaults or generated at runtime if it can be done unambiguously. For example if you have just one network interface, such interface will be used but if you have more, the script will stop.
If not specified, `IPv4addr` and `IPv4gw` default to the current network settings, `pivpnHOST` to the public IP, `pivpnSEARCHDOMAIN` to empty. Rest of the default options are in the examples.
The options provided must make sense in relation to each other, for example you can't use `TWO_POINT_FOUR=1` with `pivpnENCRYPT=2048`.
## Latest changes into master branch?
@ -65,14 +79,17 @@ And regarding security, OpenVPN uses encrypt-then-mac for its data channel, rath
(And there is no GCM support for the data channel yet. That will arrive in OpenVPN 2.4.)
If I wanted to specify ciphers, this is the list I'd use (I think):
`TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384`
`TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384`
`TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA384`
`TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA384`
`TLS-DHE-RSA-WITH-AES-256-GCM-SHA384`
`TLS-DHE-RSA-WITH-AES-256-CBC-SHA256`
`TLS-DHE-RSA-WITH-AES-128-GCM-SHA256`
`TLS-DHE-RSA-WITH-AES-128-CBC-SHA256`
```
TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384
TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384
TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA384
TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA384
TLS-DHE-RSA-WITH-AES-256-GCM-SHA384
TLS-DHE-RSA-WITH-AES-256-CBC-SHA256
TLS-DHE-RSA-WITH-AES-128-GCM-SHA256
TLS-DHE-RSA-WITH-AES-128-CBC-SHA256
```
## Tutorials