Commit Graph

185 Commits

Author SHA1 Message Date
hwdsl2
d63e46e671 Update docs 2023-01-04 19:47:57 -06:00
hwdsl2
f05bf31083 Improve sysctl settings
- For enabling TCP BBR congestion control, add a check to make sure
  tcp_congestion_control exists.
2022-11-20 15:05:02 -06:00
hwdsl2
d394509c7e Bugfix
- Fixed an issue with IPTables rules not persisting after a reboot,
  if both IPsec VPN and OpenVPN are installed on the same server.
  We restart the openvpn-iptables.service in /etc/rc.local to make
  sure the rules are added.
  Ref: https://github.com/hwdsl2/wireguard-install/issues/2
2022-11-17 08:50:54 -06:00
hwdsl2
824d59772e Improve setup
- Refactor setup script into functions for better readability and
  easier maintenance.
2022-11-01 01:19:16 -05:00
hwdsl2
6bdb4cc635 Improve sysctl settings 2022-10-31 01:30:18 -05:00
hwdsl2
6c1d25897f Cleanup 2022-10-28 08:59:09 -05:00
hwdsl2
c1e9ebd446 Update to easy-rsa v3.1.1
- Apply upstream change Nyr/openvpn-install commit f943387,
  with enhancements.
- --no-install-recommends is now required for Debian.
- Cleanup
2022-10-13 22:46:16 -05:00
hwdsl2
b9c2ff1719 Change "block-outside-dns" placement
- Apply upstream change Nyr/openvpn-install commit f2c44de.
- This is mainly to work around a bug in Viscosity for macOS.
2022-10-13 22:35:22 -05:00
hwdsl2
dab8eaebcf Cleanup 2022-10-09 16:16:34 -05:00
hwdsl2
d189d735e3 Improve IP check
- Install iproute (for the "ip" command) in the unlikely cases that
  it is not already installed.
- Abort and exit if server IP cannot be detected.
- Cleanup
2022-10-04 23:50:06 -05:00
hwdsl2
e47b7c5030 Add header 2022-10-03 21:25:09 -05:00
hwdsl2
20e9a5af75 Cleanup 2022-10-01 23:58:30 -05:00
hwdsl2
b07d70376e Add usage 2022-10-01 23:30:55 -05:00
hwdsl2
0e2fd697a6 Cleanup 2022-10-01 23:27:52 -05:00
hwdsl2
bd1c572861 Improve reliability
- Wrap the script in a function to guard against partial download.
2022-10-01 15:01:25 -05:00
hwdsl2
01865085c6 Support auto install
- Support automatic install using default options. To do this,
  users can add the argument "--auto" when running the script.
- Cleanup
2022-10-01 14:50:01 -05:00
hwdsl2
1b20eadf22 Improve listing clients
- When listing existing clients, show total and improve output.
2022-09-26 22:08:59 -05:00
hwdsl2
ada0f9f853 Add list clients option
- Add an option to list existing clients.
2022-09-25 22:45:22 -05:00
hwdsl2
068dd9bb8e Cleanup 2022-09-24 20:53:28 -05:00
hwdsl2
390bb904ae Improve user input
- On servers with multiple IPv4, use the IP address on the default
  route, instead of asking the user to select.
2022-09-22 00:17:19 -05:00
hwdsl2
bce57f9608 Improve IP check
- Use two different services for getting the server's public IP.
  This improves reliability in case one of them is unavailable.
- Cleanup
2022-09-20 23:22:43 -05:00
hwdsl2
ff40c115d1 Improve user input
- On servers with multiple IPv4 addresses, check if one of them
  matches the server's public IP. If so, select that IP and skip
  the IP selection question.
- If the server is behind NAT, try to find its public IP and
  ask the user only if the IP cannot be found.
- Cleanup
2022-09-20 01:28:42 -05:00
hwdsl2
ef33b06a44 Improve client DNS
- Allow specifying custom DNS server(s) for VPN clients.
- Use Google Public DNS as the default option.
- Cleanup
2022-09-20 00:06:09 -05:00
hwdsl2
f4f7119ae6 Cleanup 2022-09-19 21:40:46 -05:00
hwdsl2
6cbbca398a Improve client revocation
- When revoking a client, remove previously generated client config
  file for the client.
- Cleanup
2022-09-10 00:11:04 -05:00
hwdsl2
efbe7739d3 Improve setup
- When uninstalling the VPN, disable IP forwarding.
2022-09-09 08:53:03 -05:00
hwdsl2
401edc5bde Optimize sysctl settings
- Improve VPN performance by optimizing sysctl settings, such as tuning
  TCP buffer sizes and enabling the TCP BBR congestion control algorithm
  on supported systems (kernel versions 4.20 and newer).
- References:
  https://cloud.google.com/blog/products/networking/tcp-bbr-congestion-control-comes-to-gcp-your-internet-just-got-faster
  https://github.com/google/bbr/blob/master/Documentation/bbr-quick-start.md
  https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/bbr.md
2022-09-08 23:33:56 -05:00
hwdsl2
fb7de43826 Improve user input
- When adding, exporting or revoking a client, abort and exit if
  the user enters an empty client name or client number.
2022-09-02 23:39:09 -05:00
hwdsl2
3994091cb5 Add client export option
- Add an option to export configuration for an existing client.
2022-09-02 23:24:10 -05:00
hwdsl2
e58d72b585 Improve client config
- When running the script using "sudo", export client configuration
  to the user's home directory instead of /root.
2022-09-02 22:27:39 -05:00
hwdsl2
f169c6a1f8 Add Amazon Linux 2
- Add support for Amazon Linux 2.
2022-09-02 21:54:59 -05:00
hwdsl2
97635f7cb6 Fix resolv.conf detection
- Apply upstream change Nyr/openvpn-install commit d28c8e7.
- Some systems have other DNS servers along with 127.0.0.53 in /etc/resolv.conf.
2022-08-21 22:29:43 -05:00
hwdsl2
661cafe8fc Update nftables check
- The check for nftables is only needed during initial install.
2022-06-04 23:32:42 -05:00
hwdsl2
428249ff10 Improve script reliability
- Retry 'apt-get update' and exit on package install errors.
2022-06-02 08:59:59 -05:00
hwdsl2
5148690a82 Improve script output
- Improve script output to only show useful information to the user
  and hide unneeded output.
2022-05-28 00:42:12 -05:00
hwdsl2
130f51b0d0 Cleanup 2022-05-27 15:52:45 -05:00
hwdsl2
19750a5430 Update nftables check 2022-05-22 22:30:32 -05:00
hwdsl2
923802d116 Cleanup 2022-05-21 13:08:10 -05:00
hwdsl2
7c44e0b694 Improve script output 2022-05-20 18:12:37 -05:00
hwdsl2
2bf4d5e33a Improve script output
- Improve script output to only show useful information to the user
  and hide unneeded output.
2022-05-20 08:43:39 -05:00
hwdsl2
2fbdbde3ab Add check for nftables 2022-05-19 23:57:26 -05:00
hwdsl2
ddd59ec95e Remove clear screen 2022-05-19 23:56:19 -05:00
hwdsl2
5f18c2dbd7 Update license header 2022-05-19 23:52:20 -05:00
Nyr
c0a3562f64 Update to easy-rsa v3.1.0 2022-05-19 17:59:35 +02:00
Nyr
2c5bb08f4e Update to easy-rsa v3.0.9 2022-05-18 15:16:11 +02:00
Nyr
0709b9498c Update easy-rsa to v3.0.9-rc1 for Ubuntu 22.04 2022-05-05 11:44:36 +02:00
Nyr
8b6c81f79e Ubuntu 22.04 support 2022-04-21 21:11:44 +02:00
Nyr
94c94bbbc9 Add support for AlmaLinux and Rocky Linux
An unrelated fix to avoid one harmless warning during removal is also included.
2021-09-03 18:58:25 +02:00
Nyr
2cce4599e2 Check for wget or curl 2021-08-16 20:22:36 +02:00
Tomasz Wojdat
01b64d65c8
Increase priority of openvpn-forward.conf
`30-openvpn-forward.conf` renamed to `99-openvpn-forward.conf`.
2021-03-11 22:49:04 +01:00