Commit graph

891 commits

Author SHA1 Message Date
Ryan Kasper
9f190617b9 Fix typo in doctl command (#1350) 2019-03-11 22:08:09 -04:00
Les Aker
8b5920067f skip generation of SSH keypair when deploying locally (#1348) 2019-03-11 13:29:39 +01:00
Jack Ivanov
9b6da9175b Refactoring (#1334)
<!--- Provide a general summary of your changes in the Title above -->

## Description
Renames the vpn role to strongswan, and split up the variables to support 2 separate VPNs. Closes #1330 and closes #1162
Configures Ansible to use python3 on the server side. Closes #1024 
Removes unneeded playbooks, reorganises a lot of variables
Reorganises the `config` folder. Closes #1330
<details><summary>Here is how the config directory looks like now</summary>
<p>

```
configs/X.X.X.X/
|-- ipsec
|   |-- apple
|   |   |-- desktop.mobileconfig
|   |   |-- laptop.mobileconfig
|   |   `-- phone.mobileconfig
|   |-- manual
|   |   |-- cacert.pem
|   |   |-- desktop.p12
|   |   |-- desktop.ssh.pem
|   |   |-- ipsec_desktop.conf
|   |   |-- ipsec_desktop.secrets
|   |   |-- ipsec_laptop.conf
|   |   |-- ipsec_laptop.secrets
|   |   |-- ipsec_phone.conf
|   |   |-- ipsec_phone.secrets
|   |   |-- laptop.p12
|   |   |-- laptop.ssh.pem
|   |   |-- phone.p12
|   |   `-- phone.ssh.pem
|   `-- windows
|       |-- desktop.ps1
|       |-- laptop.ps1
|       `-- phone.ps1
|-- ssh-tunnel
|   |-- desktop.pem
|   |-- desktop.pub
|   |-- laptop.pem
|   |-- laptop.pub
|   |-- phone.pem
|   |-- phone.pub
|   `-- ssh_config
`-- wireguard
    |-- desktop.conf
    |-- desktop.png
    |-- laptop.conf
    |-- laptop.png
    |-- phone.conf
    `-- phone.png
```

![finder](https://i.imgur.com/FtOmKO0.png)

</p>
</details>

## Motivation and Context
This refactoring is focused to aim to the 1.0 release

## How Has This Been Tested?
Deployed to several cloud providers with various options enabled and disabled

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
- [x] Refactoring

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
- [x] I have read the **CONTRIBUTING** document.
- [x] My code follows the code style of this project.
- [x] My change requires a change to the documentation.
- [x] I have updated the documentation accordingly.
- [x] All new and existing tests passed.
2019-03-10 13:16:34 -04:00
Jack Ivanov
e4ccc18ab0 Update cloud-pre.yml 2019-03-06 13:04:20 +01:00
Tim H
2e3c27f643 Add catch-all VPN On Demand Rule (#739)
If a user is not connected to a trusted Wi-Fi network or if the
URLStringProbe fails none of the existing dictionaries match.

According to the Apple Configuration Profile Reference[1] section "VPN
Payload > On Demand Rules Dictionary Keys" a default behavior for
unknown networks with no matching criteria should always be set as the
last dictionary in the array. The current default behavior is to allow a
connection to occur, but this behavior is not guaranteed.

Tear down the VPN connection and do not reconnect on demand as long as
the catch-all dictionary matches to guarantee the default behavior and
more specifically allow users to access captive portals.

[1]: https://developer.apple.com/library/content/featuredarticles/iPhoneConfigurationProfileRef/Introduction/Introduction.html
2019-02-26 17:40:29 +01:00
Demian
e06a087d57 fix OS is undefined error (#1335) 2019-02-26 12:19:34 +01:00
Jack Ivanov
80f03c5d42 Support for custom domain names in the endpoint (#1337) 2019-02-25 17:58:09 +01:00
Jack Ivanov
ee362ca9ba Disable wireguard PersistentKeepalive by default (#1338) 2019-02-25 17:56:19 +01:00
Jack Ivanov
3d15d97144 Closes #1059 2019-02-22 16:00:47 +01:00
David Myers
aa753419d4 Clarify prompts (#1331) 2019-02-20 10:08:25 -05:00
David Myers
aac64a257c Document using WireGuard app on macOS (#1327)
* Document using WireGuard app on macOS

* Update README.md

* Make WireGuard the default for Apple devices

* clarify user list

* fix tests

* connect on demand
2019-02-17 18:38:19 -05:00
David Myers
4be614fa35 Add note about new WireGuard for iOS default MTU (#1293) 2019-02-12 11:19:38 +01:00
Jack Ivanov
0c0bbc94bb Get started with Azure more easily (#1323) 2019-02-08 13:34:01 +01:00
Jack Ivanov
4279c3552e Closes #1321 2019-02-07 15:09:09 +01:00
Jack Ivanov
763ef29e5b WiFi exclude list fix (#1318) 2019-02-04 16:04:30 +01:00
Jack Ivanov
8db83551d2 add flags=(attach_disconnected) to dnscrypt-proxy apparmor profile (#1312) 2019-01-30 07:23:11 +01:00
Jack Ivanov
95a67475ef encode wifi networks to base64 (#1303) 2019-01-28 17:51:28 -05:00
Jack Ivanov
b42a08d9d5 Allow windows users install VPN for all users in the system (#1310) 2019-01-28 17:50:58 -05:00
Jack Ivanov
1e0bbdb536 Travis-CI fixes 2019-01-28 13:42:11 +01:00
Luvpreet Singh
aefc730d5f fix(update-users): changed generate p12 password task (#1289)
Changed task's module to generic python format for python2 and python3.
2019-01-25 16:36:44 -05:00
Jack Ivanov
5a1a6b369a Update deploy-from-ansible.md (#1307) 2019-01-24 13:11:34 +01:00
Jack Ivanov
bb7f84163d Fixes #1305 2019-01-23 07:14:37 +01:00
David Myers
07b95808c3 Document using WireGuard on iOS (#1266) 2019-01-23 07:12:43 +01:00
Jack Ivanov
0da3ecac62 IPv6 fix (#1302) 2019-01-18 23:39:08 -05:00
Selim Şumlu
e28fe006a2 Update deploy-from-windows.md (#1296)
Updating the tutorial according to latest Windows 10 and Ubuntu changes
2019-01-14 22:23:48 -05:00
Jack Ivanov
0a88db7551 Update README.md 2019-01-08 08:57:40 +01:00
Jack Ivanov
99cc4305f5 Update deploy-from-ansible.md 2019-01-08 08:53:35 +01:00
Angel Montes de Oca
0ceb4da0f0 Include Algo generated password (#1272)
I change a line to Include the Algo generated password so the users do not need to manually enter the password when installing on Windows 10 computers.
2019-01-08 08:48:05 +01:00
David Myers
f619a260d4 Sync list of supported cloud hosts (#1278) 2019-01-02 19:24:18 -05:00
TC1977
0e324bf748 Update README.md (#1286)
Adds Wireguard to the first line.
2019-01-02 19:23:37 -05:00
David Myers
ac2d27767c Replace 'max_mss' with 'reduce_mtu' (#1253) 2018-12-20 09:21:04 -05:00
Michael Schubert
1172b02cbc README: fix small typos (#1262) 2018-12-20 09:20:39 -05:00
David Myers
a9146f0a03 Document DigitalOcean firewall (#1257) 2018-12-20 10:47:24 +01:00
Izzy Gomez
d762c89608 Fix typo in deploy-from-ansible.md. (#1261) 2018-12-20 10:46:37 +01:00
Jack Ivanov
af8d417751 IPv6 forwarding fixes (#1256) 2018-12-18 13:59:25 +01:00
Jack Ivanov
a460d9d3d2 Fixes #1246 2018-12-10 16:37:36 +01:00
Federico G. Schwindt
9ffd936ead Fix ipv4 address missing on reboot (#1245) 2018-12-10 06:57:15 +01:00
David Myers
a285008c29 Update local install instructions (#1148)
* Update local install instructions

* Update deploy-to-ubuntu.md
2018-12-07 14:42:17 -05:00
David Myers
0327c4fba4 Note that WireGuard configs cannot be shared (#1238) 2018-12-07 14:41:39 -05:00
TC1977
e0326c41c9 Add info about modifying blacklists (#1236)
# Algo will use the following lists to block ads. You can add new block lists 
# after deployment by modifying the line starting "BLOCKLIST_URLS=" at:
# /usr/local/sbin/adblock.sh 
# If you load very large blocklists, you may also have to modify resource limits:
# /etc/systemd/system/dnsmasq.service.d/100-CustomLimitations.conf
2018-12-07 14:41:19 -05:00
William Woodruff
378df4f832 docs/gce: Fix typos, clarify instructions (#1239) 2018-12-05 06:57:13 +01:00
David Myers
d097f4e6a0 Increase memory limit for dnsmasq (#1228)
* Increase memory limit for dnsmasq

* Increase memory limit for dnsmasq further
2018-12-03 12:32:23 -05:00
David Myers
cc37d11ece Run adblock.sh at a random time (#1227) 2018-12-03 15:33:36 +01:00
jxn
ef62de1eeb fix typo in powershell execution in windows client set up doc (#1224) 2018-11-29 14:11:26 +01:00
Jack Sullivan
1a3c1754f6 Add "unable to write 'random state'" resolution (#1219)
I ran into the same issue as #1058, and the solution worked.

This PR generalizes the solution and adds it to the troubleshooting documentation, making it easier to resolve for future users.
2018-11-27 07:09:33 +01:00
David Myers
79d46b9c8b Add p12 password back to mobileconfigs (#1218) 2018-11-26 16:58:34 +01:00
Jack Ivanov
8a42c29422 on-build python venvs (#1199) 2018-11-22 13:04:58 -05:00
Jack Ivanov
458f2f11d7 dnscrypt-proxy apparmor fix (#1210)
<!--- Provide a general summary of your changes in the Title above -->

## Description
Apparmor profile for dnscrypt-proxy didn't work at all

## Motivation and Context
Fixes #1155

## How Has This Been Tested?
Deployed to DigitalOcean, checked that the dnscrypt-proxy binary is in enforce mode

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
- [x] Bug fix (non-breaking change which fixes an issue)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
- [x] I have read the **CONTRIBUTING** document.
- [x] My code follows the code style of this project.
- [x] All new and existing tests passed.
2018-11-22 13:04:37 -05:00
Jack Ivanov
ec9fe77821 BSD StrongSwan fixes (#1207) 2018-11-20 19:20:24 +01:00
David Myers
55a2d9df04 Detect when running in Docker (#1204) 2018-11-16 07:22:57 +01:00