GithubHelp home page GithubHelp logo

angristan / openvpn-install Goto Github PK

View Code? Open in Web Editor NEW
11.9K 270.0 2.8K 641 KB

Set up your own OpenVPN server on Debian, Ubuntu, Fedora, CentOS or Arch Linux.

Home Page: https://stanislas.blog

License: MIT License

Shell 100.00%
openvpn vpn encryption bash debian ubuntu fedora centos arch-linux openvpn-server

openvpn-install's Introduction

openvpn-install

Test Lint Say Thanks!

OpenVPN installer for Debian, Ubuntu, Fedora, CentOS, Arch Linux, Oracle Linux, Rocky Linux and AlmaLinux.

This script will let you setup your own secure VPN server in just a few seconds.

You can also check out wireguard-install, a simple installer for a simpler, safer, faster and more modern VPN protocol.

Usage

First, get the script and make it executable:

curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh
chmod +x openvpn-install.sh

Then run it:

./openvpn-install.sh

You need to run the script as root and have the TUN module enabled.

The first time you run it, you'll have to follow the assistant and answer a few questions to setup your VPN server.

When OpenVPN is installed, you can run the script again, and you will get the choice to:

  • Add a client
  • Remove a client
  • Uninstall OpenVPN

In your home directory, you will have .ovpn files. These are the client configuration files. Download them from your server and connect using your favorite OpenVPN client.

If you have any question, head to the FAQ first. Please read everything before opening an issue.

PLEASE do not send me emails or private messages asking for help. The only place to get help is the issues. Other people may be able to help and in the future, other users may also run into the same issue as you. My time is not available for free just for you, you're not special.

Headless install

It's also possible to run the script headless, e.g. without waiting for user input, in an automated manner.

Example usage:

AUTO_INSTALL=y ./openvpn-install.sh

# or

export AUTO_INSTALL=y
./openvpn-install.sh

A default set of variables will then be set, by passing the need for user input.

If you want to customise your installation, you can export them or specify them on the same line, as shown above.

  • APPROVE_INSTALL=y
  • APPROVE_IP=y
  • IPV6_SUPPORT=n
  • PORT_CHOICE=1
  • PROTOCOL_CHOICE=1
  • DNS=1
  • COMPRESSION_ENABLED=n
  • CUSTOMIZE_ENC=n
  • CLIENT=clientname
  • PASS=1

If the server is behind NAT, you can specify its endpoint with the ENDPOINT variable. If the endpoint is the public IP address which it is behind, you can use ENDPOINT=$(curl -4 ifconfig.co) (the script will default to this). The endpoint can be an IPv4 or a domain.

Other variables can be set depending on your choice (encryption, compression). You can search for them in the installQuestions() function of the script.

Password-protected clients are not supported by the headless installation method since user input is expected by Easy-RSA.

The headless install is more-or-less idempotent, in that it has been made safe to run multiple times with the same parameters, e.g. by a state provisioner like Ansible/Terraform/Salt/Chef/Puppet. It will only install and regenerate the Easy-RSA PKI if it doesn't already exist, and it will only install OpenVPN and other upstream dependencies if OpenVPN isn't already installed. It will recreate all local config and re-generate the client file on each headless run.

Headless User Addition

It's also possible to automate the addition of a new user. Here, the key is to provide the (string) value of the MENU_OPTION variable along with the remaining mandatory variables before invoking the script.

The following Bash script adds a new user foo to an existing OpenVPN configuration

#!/bin/bash
export MENU_OPTION="1"
export CLIENT="foo"
export PASS="1"
./openvpn-install.sh

Features

  • Installs and configures a ready-to-use OpenVPN server
  • Iptables rules and forwarding managed in a seamless way
  • If needed, the script can cleanly remove OpenVPN, including configuration and iptables rules
  • Customisable encryption settings, enhanced default settings (see Security and Encryption below)
  • OpenVPN 2.4 features, mainly encryption improvements (see Security and Encryption below)
  • Variety of DNS resolvers to be pushed to the clients
  • Choice to use a self-hosted resolver with Unbound (supports already existing Unbound installations)
  • Choice between TCP and UDP
  • NATed IPv6 support
  • Compression disabled by default to prevent VORACLE. LZ4 (v1/v2) and LZ0 algorithms available otherwise.
  • Unprivileged mode: run as nobody/nogroup
  • Block DNS leaks on Windows 10
  • Randomised server certificate name
  • Choice to protect clients with a password (private key encryption)
  • Many other little things!

Compatibility

The script supports these Linux distributions:

Support
AlmaLinux 8
Amazon Linux 2
Arch Linux
CentOS 7 ✅ 🤖
CentOS Stream >= 8 ✅ 🤖
Debian >= 10 ✅ 🤖
Fedora >= 35 ✅ 🤖
Oracle Linux 8
Rocky Linux 8
Ubuntu >= 18.04 ✅ 🤖

To be noted:

  • The script is regularly tested against the distributions marked with a 🤖 only.
    • It's only tested on amd64 architecture.
  • It should work on older versions such as Debian 8+, Ubuntu 16.04+ and previous Fedora releases. But versions not in the table above are not officially supported.
    • It should also support versions between the LTS versions, but these are not tested.
  • The script requires systemd.

Fork

This script is based on the great work of Nyr and its contributors.

Since 2016, the two scripts have diverged and are not alike anymore, especially under the hood. The main goal of the script was enhanced security. But since then, the script has been completely rewritten and a lot a features have been added. The script is only compatible with recent distributions though, so if you need to use a very old server or client, I advise using Nyr's script.

FAQ

More Q&A in FAQ.md.

Q: Which provider do you recommend?

A: I recommend these:

  • Vultr: Worldwide locations, IPv6 support, starting at $5/month
  • Hetzner: Germany, Finland and USA. IPv6, 20 TB of traffic, starting at 4.5€/month
  • Digital Ocean: Worldwide locations, IPv6 support, starting at $4/month

Q: Which OpenVPN client do you recommend?

A: If possible, an official OpenVPN 2.4 client.


Q: Am I safe from the NSA by using your script?

A: Please review your threat models. Even if this script has security in mind and uses state-of-the-art encryption, you shouldn't be using a VPN if you want to hide from the NSA.


Q: Is there an OpenVPN documentation?

A: Yes, please head to the OpenVPN Manual, which references all the options.


More Q&A in FAQ.md.

One-stop solutions for public cloud

Solutions that provision a ready to use OpenVPN server based on this script in one go are available for:

Contributing

Discuss changes

Please open an issue before submitting a PR if you want to discuss a change, especially if it's a big one.

Code formatting

We use shellcheck and shfmt to enforce bash styling guidelines and good practices. They are executed for each commit / PR with GitHub Actions, so you can check the configuration here.

Security and Encryption

Warning This has not been updated for OpenVPN 2.5 and later.

OpenVPN's default settings are pretty weak regarding encryption. This script aims to improve that.

OpenVPN 2.4 was a great update regarding encryption. It added support for ECDSA, ECDH, AES GCM, NCP and tls-crypt.

If you want more information about an option mentioned below, head to the OpenVPN manual. It is very complete.

Most of OpenVPN's encryption-related stuff is managed by Easy-RSA. Defaults parameters are in the vars.example file.

Compression

By default, OpenVPN doesn't enable compression. This script provides support for LZ0 and LZ4 (v1/v2) algorithms, the latter being more efficient.

However, it is discouraged to use compression since the VORACLE attack makes use of it.

TLS version

OpenVPN accepts TLS 1.0 by default, which is nearly 20 years old.

With tls-version-min 1.2 we enforce TLS 1.2, which the best protocol available currently for OpenVPN.

TLS 1.2 is supported since OpenVPN 2.3.3.

Certificate

OpenVPN uses an RSA certificate with a 2048 bits key by default.

OpenVPN 2.4 added support for ECDSA. Elliptic curve cryptography is faster, lighter and more secure.

This script provides:

  • ECDSA: prime256v1/secp384r1/secp521r1 curves
  • RSA: 2048/3072/4096 bits keys

It defaults to ECDSA with prime256v1.

OpenVPN uses SHA-256 as the signature hash by default, and so does the script. It provides no other choice as of now.

Data channel

By default, OpenVPN uses BF-CBC as the data channel cipher. Blowfish is an old (1993) and weak algorithm. Even the official OpenVPN documentation admits it.

The default is BF-CBC, an abbreviation for Blowfish in Cipher Block Chaining mode.

Using BF-CBC is no longer recommended, because of its 64-bit block size. This small block size allows attacks based on collisions, as demonstrated by SWEET32. See https://community.openvpn.net/openvpn/wiki/SWEET32 for details. Security researchers at INRIA published an attack on 64-bit block ciphers, such as 3DES and Blowfish. They show that they are able to recover plaintext when the same data is sent often enough, and show how they can use cross-site scripting vulnerabilities to send data of interest often enough. This works over HTTPS, but also works for HTTP-over-OpenVPN. See https://sweet32.info/ for a much better and more elaborate explanation.

OpenVPN's default cipher, BF-CBC, is affected by this attack.

Indeed, AES is today's standard. It's the fastest and more secure cipher available today. SEED and Camellia are not vulnerable to date but are slower than AES and relatively less trusted.

Of the currently supported ciphers, OpenVPN currently recommends using AES-256-CBC or AES-128-CBC. OpenVPN 2.4 and newer will also support GCM. For 2.4+, we recommend using AES-256-GCM or AES-128-GCM.

AES-256 is 40% slower than AES-128, and there isn't any real reason to use a 256 bits key over a 128 bits key with AES. (Source: 1,2). Moreover, AES-256 is more vulnerable to Timing attacks.

AES-GCM is an AEAD cipher which means it simultaneously provides confidentiality, integrity, and authenticity assurances on the data.

The script supports the following ciphers:

  • AES-128-GCM
  • AES-192-GCM
  • AES-256-GCM
  • AES-128-CBC
  • AES-192-CBC
  • AES-256-CBC

And defaults to AES-128-GCM.

OpenVPN 2.4 added a feature called "NCP": Negotiable Crypto Parameters. It means you can provide a cipher suite like with HTTPS. It is set to AES-256-GCM:AES-128-GCM by default and overrides the --cipher parameter when used with an OpenVPN 2.4 client. For the sake of simplicity, the script set both the --cipher and --ncp-cipher to the cipher chosen above.

Control channel

OpenVPN 2.4 will negotiate the best cipher available by default (e.g ECDHE+AES-256-GCM)

The script proposes the following options, depending on the certificate:

  • ECDSA:
    • TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256
    • TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384
  • RSA:
    • TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256
    • TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384

It defaults to TLS-ECDHE-*-WITH-AES-128-GCM-SHA256.

Diffie-Hellman key exchange

OpenVPN uses a 2048 bits DH key by default.

OpenVPN 2.4 added support for ECDH keys. Elliptic curve cryptography is faster, lighter and more secure.

Also, generating a classic DH keys can take a long, looong time. ECDH keys are ephemeral: they are generated on-the-fly.

The script provides the following options:

  • ECDH: prime256v1/secp384r1/secp521r1 curves
  • DH: 2048/3072/4096 bits keys

It defaults to prime256v1.

HMAC digest algorithm

From the OpenVPN wiki, about --auth:

Authenticate data channel packets and (if enabled) tls-auth control channel packets with HMAC using message digest algorithm alg. (The default is SHA1 ). HMAC is a commonly used message authentication algorithm (MAC) that uses a data string, a secure hash algorithm, and a key, to produce a digital signature.

If an AEAD cipher mode (e.g. GCM) is chosen, the specified --auth algorithm is ignored for the data channel, and the authentication method of the AEAD cipher is used instead. Note that alg still specifies the digest used for tls-auth.

The script provides the following choices:

  • SHA256
  • SHA384
  • SHA512

It defaults to SHA256.

tls-auth and tls-crypt

From the OpenVPN wiki, about tls-auth:

Add an additional layer of HMAC authentication on top of the TLS control channel to mitigate DoS attacks and attacks on the TLS stack.

In a nutshell, --tls-auth enables a kind of "HMAC firewall" on OpenVPN's TCP/UDP port, where TLS control channel packets bearing an incorrect HMAC signature can be dropped immediately without response.

About tls-crypt:

Encrypt and authenticate all control channel packets with the key from keyfile. (See --tls-auth for more background.)

Encrypting (and authenticating) control channel packets:

  • provides more privacy by hiding the certificate used for the TLS connection,
  • makes it harder to identify OpenVPN traffic as such,
  • provides "poor-man's" post-quantum security, against attackers who will never know the pre-shared key (i.e. no forward secrecy).

So both provide an additional layer of security and mitigate DoS attacks. They aren't used by default by OpenVPN.

tls-crypt is an OpenVPN 2.4 feature that provides encryption in addition to authentication (unlike tls-auth). It is more privacy-friendly.

The script supports both and uses tls-crypt by default.

Say thanks

You can say thanks if you want!

Credits & Licence

Many thanks to the contributors and Nyr's original work.

This project is under the MIT Licence

Star History

Star History Chart

openvpn-install's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openvpn-install's Issues

Google Auth integration

Instead of using a password on the cert, I am interested in using google auth tokens, is there any plan or simple tweak for this ?

NAT problem

Got a NAT VPS with shared public ipv4 adress and 20 ports I can use.
I used port 101xx (one of my assigned public ports) and for some reason I can connect via ovpn but I dont have internet access :( Any ideas?

Using Ubuntu 14.04

OpenVPN 2.4.0

When can we expect the script with the updated OpenVPN 2.4.0?

thanks

Not working on Android

I have used your script on my server and with Windows 10 and the official OpenVPN GUI app everything works like a charm.

But it's not working on my Android 7.1 phone. I have imported the same .ovpn file which I used on my Desktop and I cannot ping anything (or connect to anything). And no, I'm not connected on my PC and the phone at the same time.

The connection is established without issues, I cannot see anything in the logs.

Do I have to use some special connection settings to make this work with the official Android App from OpenVPN?

cert delete breaks other clients...

Maybe I am not understanding this correctly ...

I have found something concerning....

I have been working with a friend remotely and I sent him 3 seperate client files. We had all three working from 3 separate machines.

If I then revoke one of the certs that I created for him he can no longer connect from the other 2 ...

Dave

Revert commit removing OpenNIC

Hello,

I don't understand why you remove OpenNIC servers on the commit 903270b.
I think that openDNS is less trustable than openNIC (because of Cisco and more). Moreover, some openNIC server have dnscrypt activated.

So why do you remove it?

Running two servers with different configuration

Hello,
I'm wondering you could have 2 server keys.
I'd like to have 1 client be on a fast, less-secure, UDP connection.
And I'd like to have 1 client be on a most-secure, TCP connection.

I'm not sure if this is even possible on the same OpenVPN server?? I know you can edit the .ovpn client file, but that wouldn't have the secure-ness of the server key.

DNS configuration is not working as expacted

Hi,

First great script thanks for doing it (or forking it ;) )
I created a server on digital ocean and ran the script, generated a client.ovpn file.

I tested the client.ovpn on my android and it works.

Testing the client.ovpn on my raspberry pi Raspbian distro did not work, requests to any host wont work since the DNS resolver is not wokring.
I had to staticly configure the interface of my wireless to use a specific dns 8.8.8.8 of google to make it work.

Any idea why is this happening?
Thanks.

Add user authentication for the private key

Currently the script generates an all-in-one client configuration and does not ask for a password to decrypt the private key.

As this is a hardened OpenVPN install script, it would be nice a add an option to use a password when connecting to the VPN, to avoid anyone with the .ovpn file to be able to connect.

The modifications will have to be done around here with easy-rsa.

IPv6 Support?

Hi. Is IPv6 supported? I have a VPS with 1 IPv4 + 1IPv6. Should I also use the IPv6 with the VPN or disable it? Thanks

Google Compute Engine - Additional iptables config

According to this answer and to my attempts on Google Compute Engine g1-small Instance with Ubuntu 16.04, you need this after installing with this script to get out to the internet through OpenVPN on Debian/Ubuntu GCE instances:

sudo iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

eth0 is instance's WAN connection, in my case it was ens4.

Would be nice if this is included in script somehow.

Feature: Listen on multiple ports

Hi.

As of now I'm using my VPN server both at home and other networks. I've experienced that custom ports might be blocked on public networks. Would it be possible to implement setup on both default port and a custom defined port (ex. 443/TCP)?

rc.local not present on Ubuntu 16.10, 17.04 and Debian 9

/etc/rc.local is not present on Ubuntu 16.10.

Instead, there is multiple folders :

rc0.d
rc1.d
rc2.d
rc3.d
rc4.d
rc5.d
rc6.d
rcS.d

As a result, the iptables NAT rule to forward traffic is not applied at reboot.

I'll take a look asap.

ARM not supported

Trying to run on an Odroid C1+ running Ubuntu 14.04. During install I see this message:

W: Failed to fetch http://swupdate.openvpn.net/apt/dists/trusty/Release Unable to find expected entry 'main/binary-armhf/Packages' in Release file (Wrong sources.list entry or malformed file)

Which seems to say that there isn't an ARM version available, thus the current repo only has version 2.3.2 and thus doesn't support tls-version-min.

Here's what syslog reported when trying to start the openvpn service.

Feb 18 17:29:11 odroid ovpn-server[5160]: Options error: Unrecognized option or missing parameter(s) in /etc/openvpn/server.conf:23: tls-version-min (2.3.2)
Feb 18 17:29:11 odroid ovpn-server[5160]: Use --help for more information.
Feb 18 17:37:06 odroid ovpn-server[5284]: Options error: Unrecognized option or missing parameter(s) in /etc/openvpn/server.conf:23: tls-version-min (2.3.2)
Feb 18 17:37:06 odroid ovpn-server[5284]: Use --help for more information.

AES-NI support?

Does the script check for "aes-ni" instruction set and configure it if available? From what I see most of the Intel CPUs have this noawadays and it supposedly gives quite a good performance gain. So It would be nice to have it.

No internet connection

I have no internet connection when connected to the openvpn server.
What I'm doing wrong?

OpenVPN removal keeps iptables rules

After removing (option 3), all placed firewall rules / iptables rules remains.
Remove sequence doesnt delte created iptables rules/chains. Please implement ...

IPv6?

Salut,

Merci pour le travail. Implémentation d'IPv6 prévue ou non ?

Concern about iptables

On Ubuntu 16.04.1 LTS, after execution of the script I have an iptables -L empty, before and even after a reboot.
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination

it's ok for nat tab
iptables -t nat -n -L
........
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
SNAT all -- 10.8.0.0/24 0.0.0.0/0 to:xx.xxx.xx.xxx

You enter the rules
487 sed -i "1 a\iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to $IP" $RCLOCAL
518 sed -i "1 a\iptables -I FORWARD -s 10.8.0.0/24 -j ACCEPT" $RCLOCAL
519 sed -i "1 a\iptables -I FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT" $RCLOCAL

Only the first rule is in /etc/rc.local
#!/bin/sh -e
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to xx.xxx.xx.xxx
#
# rc.local
.....
# By default this script does nothing.
exit 0

For the other two it makes sense since the test is false, grep can not find reject or drop on a fresh server.
if iptables -L -n | grep -qE 'REJECT|DROP'

The first time I had run your script I did not see this problem, the firewall being already set up with drop rules: the last two rules were present. I was on debian this time.
There is something I do not understand

on peut continuer en français si tu veux ...

How to change the connection to a different Public IP address

hi, i have a question regarding the public ip address, lets say I have the main IP address of the vps or dedi and set it up with the installer, then rents a new IPv4 address set it up and everything and want the user for example to use it instead of the main IPv4 address ?
I came to simple idea and is to change the "remote IP" in the ovpn certificate ? does that helps?
because I didn't purchase a new ipv4 yet

thank you

Stunnel support

First of all, the script is awesome.
I recommend that you add a feature. Stunnel support. It is very necessary for internet users in countries like Turkey. The udp and tcp port are very slow.

My vpn no longer works

Hello,
I have installed openVpn with Angristan's script on a ovh vps server under debian 8.7 (same thing on Ubuntu 16.04.2 LTS)
After launching the client locally (linux mint 18), I no longer have access from the local post to the url, only to IP ie
ping google.com don't work
ping 79.137.33.190 work (ip of google.com)
My ip is not modified by the vpn
I have an error in running
openvpn client1.ovpn : Unrecognized option or missing parameter(s) in client1.ovpn:15: block-outside-dns (2.3.10)
but in the end i have
Initialization Sequence Completed

ping 10.8.0.1 on local works,
ping 10.8.0.2 on the server does not receive any packets. ok vu #17
On remote It's ok for both ping. And i have

ps aux | grep openvpn
nobody     593  0.0  0.2  42488  5620 ?        Ss   avril18   0:01 /usr/sbin/openvpn --daemon ovpn-server --status /run/openvpn/server.status 10 --cd /etc/openvpn --config /etc/openvpn/server.conf

local firewall cut, is ok on the server on the filter and nat tables:

Chain FORWARD (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  10.8.0.0/24          anywhere            
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
....
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
SNAT       all  --  10.8.0.0/24          0.0.0.0/0            to:xx.xxx.xx.xxx

This script worked perfectly a few weeks ago on my previous tests.

OpenVPN 2.4 Script Error

--2017-03-05 21:32:18--  https://github.com/OpenVPN/easy-rsa/releases/download/3.0.1/EasyRSA-3.0.1.tgz
Resolving github.com (github.com)... 192.30.253.113, 192.30.253.112
Connecting to github.com (github.com)|192.30.253.113|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://github-cloud.s3.amazonaws.com/releases/4519663/9dab10e8-7b6a-11e5-91af-0660987e9192.tgz?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAISTNZFOVBIJMK3TQ%2F20170305%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20170305T193219Z&X-Amz-Expires=300&X-Amz-Signature=b4786b817ecde82af276b0f62745ea14b5d2778ff1dbbdbff336784539530ca2&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3DEasyRSA-3.0.1.tgz&response-content-type=application%2Foctet-stream [following]
--2017-03-05 21:32:19--  https://github-cloud.s3.amazonaws.com/releases/4519663/9dab10e8-7b6a-11e5-91af-0660987e9192.tgz?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAISTNZFOVBIJMK3TQ%2F20170305%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20170305T193219Z&X-Amz-Expires=300&X-Amz-Signature=b4786b817ecde82af276b0f62745ea14b5d2778ff1dbbdbff336784539530ca2&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3DEasyRSA-3.0.1.tgz&response-content-type=application%2Foctet-stream
Resolving github-cloud.s3.amazonaws.com (github-cloud.s3.amazonaws.com)... 54.231.41.75
Connecting to github-cloud.s3.amazonaws.com (github-cloud.s3.amazonaws.com)|54.231.41.75|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 40960 (40K) [application/octet-stream]
Saving to: ‘/root/EasyRSA-3.0.1.tgz’

100%[=======================================================================================================================================================================>] 40,960       140KB/s   in 0.3s   

2017-03-05 21:32:20 (140 KB/s) - ‘/root/EasyRSA-3.0.1.tgz’ saved [40960/40960]


Note: using Easy-RSA configuration from: ./vars

init-pki complete; you may now create a CA or requests.
Your newly created PKI dir is: /etc/openvpn/easy-rsa/pki

unable to create curve (sect571r1)

Easy-RSA error:

Curve sect571r1 not found. Run openssl ecparam -list_curves to show a
list of supported curves.

Note: using Easy-RSA configuration from: ./vars

Easy-RSA error:

Missing expected CA file: serial (perhaps you need to run build-ca?)
Run without commands for usage and command help.

Note: using Easy-RSA configuration from: ./vars

Easy-RSA error:

Missing expected CA file: serial (perhaps you need to run build-ca?)
Run without commands for usage and command help.

Note: using Easy-RSA configuration from: ./vars

Easy-RSA error:

Missing expected CA file: serial (perhaps you need to run build-ca?)
Run without commands for usage and command help.
cp: cannot stat ‘pki/ca.crt’: No such file or directory
cp: cannot stat ‘pki/private/ca.key’: No such file or directory
cp: cannot stat ‘pki/issued/server.crt’: No such file or directory
cp: cannot stat ‘pki/private/server.key’: No such file or directory
cp: cannot stat ‘/etc/openvpn/easy-rsa/pki/crl.pem’: No such file or directory
chmod: cannot access ‘/etc/openvpn/crl.pem’: No such file or directory
450
success
success
success
success
331
Job for [email protected] failed because the control process exited with error code. See "systemctl status [email protected]" and "journalctl -xe" for details.
cat: /etc/openvpn/easy-rsa/pki/ca.crt: No such file or directory
cat: /etc/openvpn/easy-rsa/pki/issued/client.crt: No such file or directory
cat: /etc/openvpn/easy-rsa/pki/private/client.key: No such file or directory

Finished!

I have tested it on 4 different KVM VPS'es, all of them running CentOS 7, and this has happened on all of them :(.

DHCP on 192.168.1.1 LAN

After install I am trying to convert this connection to use the local DHCP using it via TAP i am haviong some issues converting it from 10.8.0.x to 192.168.1.x.

Self-hosted DNS Resolver (Unbound)

As discussed in #4, having the option to use a local DNS server would be great for the following reasons :

  • It will be fast all aroung the world, as it will allow a local cache and will communicate directly with the root servers
  • It's neutral
  • Logs will be disabled by default, and if they are enabled, they'll be only accessible on the server
  • It does not depend on any third-party server, thus ensuring 100% availability and neutrality

I already made a script to install a local DNS server on a Linux machine : https://github.com/Angristan/Local-DNS-resolver

I will use unbound, and adapt the configuration to allow queries from the private network (10.8.0.0/24), and then use 10.8.0.1 as the DNS resolver in the OpenVPN configuration.

If unbound is already installed on the server where the script is ran, I think I'll ask for a confirmation to overwrite /etc/ubound.conf, and if the answer is no, ask the user to select other DNS servers.

Any suggestion is welcomed until I implement the feature.

Recommend AES > 256

For OpenVPN 2.4, the standard and recommended cipher will be AES-256-CBC.

So I think the best way is to not give the choice of cipher less than AES 256.

Unable to ping client from server

I wasn't sure whether to open this on Nyr's page or this one, but I'm using your fork of the script.

I have been trying to forward a port over from the OpenVPN server to a client but I haven't been able to get it to work. I have net.ipv4.ip_forward = 1 for both the client and server, at first it was just the server and it didn't work still. I'm running OpenVPN on an openvz vps with Tun/tap, PPP, and IPSec enabled, at first it was just tun/tap.
Host is running Centos 7, Client is Ubuntu 16.04, I didn't run this script on the client, only server. I had followed this tutorial for setting up OpenVPN on the client though http://www.htpcguides.com/force-torrent-traffic-vpn-split-tunnel-debian-8-ubuntu-16-04/

I am able to connect to the vpn and ping ip addresses and domain names, as well as ping the server from the client. I can't however ping the client from the server. 10.8.0.2 is my client IP and 10.8.0.1 is the server IP from within the VPN.

At first using the default script without modifying, When I would try to ping the client from server, it wouldnt show anything, like it was blocking ping but still resolving. I had then tried this http://securityblog.gr/2131/forward-ports-to-openvpn-clients-in-centos/ with no luck, using the openvz version. So I had tried out this on Nyr's issue page Nyr/openvpn-install#190 and Nyr/openvpn-install#211 (comment) but then after doing that, pinging the client shows

From 10.8.0.2 icmp_seq=5 Destination Port Unreachable

instead. I'm not sure what to do now. I basically wanted to port forward the port 32400 to the client from server to use by the client.

TCP Packet length from client is out of range

Hi,
I got this error when setting up openvpn using TCP configuration.

WARNING: Bad encapsulated packet length from peer (18516), which must be > 0 and <= 1574 -- please ensure that --tun-mtu or --link-mtu is equal on both peers -- this condition could also indicate a possible active attack on the TCP link -- [Attempting restart...]

No error using UDP, I tried several TCP configurations from the install script.

Revoking a existing using cert making other cert disable too

Hi,

I've found something by using your script. After adding one or many users with your scripts; when I try to revoke a existing user; it revoke him but also make all other cert unaivalable to use. Any other cert remaining on the current server are like "disabled" and even deleting all cert and re-making them one by one doesn't func...

[French]
Bonjour;
J'ai vu en utilisant ton script et après avoir ajouter plusieurs utilisateurs; que lorsqu'on en revoke un seul, tous les autres cert sont unitilsables... Plus aucun ne marche peut importe la configuration :(
Même en supprimant toutes les cert et en les re-créant; cela ne marche pas...

PS : J'attend impatiemment la màj pour OpenVPN 2.4.0 pour Debian et les DNS locaux 👍

client.ovpn not being created

I ran the installer, as well as Nyr's, on a fresh Debian server install using sudo and the client configs aren't being created. Any ideas?

DNS

Hey,
Just wondering how I can change the ovpns DNS Server to another one after setup. During first setup I specified Google DNS but wanna use DNs Watch now instead.

Disable logging

Thank you for the great script!
You do not want to add the option - disable logging of network connections?

Cannot connect from iOS/Android when on local LAN

Hello,

thanks a lot for your great script. There's just one little issue on my (Debian 8) installation that I hope can be resolved:

When I connect from my Android or iOS device via my mobile / LTE connection, all is fine and I get to my VPN. However, if my device is in my home WiFi (same network as OpenVPN server), I cannot connect to OpenVPN. The client says "waiting for server" until a timeout occurs, and on the server I see a lot of these lines:

Fri Apr 14 22:39:58 2017 172.16.0.42:64061 TLS: Initial packet from [AF_INET]172.16.0.42:64061, sid=7837bf5f 957ffa19
Fri Apr 14 22:39:59 2017 172.16.0.42:64061 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #1 / time = (1492202398) Fri Apr 14 22:39:58 2017 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Fri Apr 14 22:39:59 2017 172.16.0.42:64061 TLS Error: incoming packet authentication failed from [AF_INET]172.16.0.42:64061
Fri Apr 14 22:40:00 2017 172.16.0.42:64061 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #1 / time = (1492202398) Fri Apr 14 22:39:58 2017 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Fri Apr 14 22:40:00 2017 172.16.0.42:64061 TLS Error: incoming packet authentication failed from [AF_INET]172.16.0.42:64061
Fri Apr 14 22:40:01 2017 172.16.0.42:64061 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #1 / time = (1492202398) Fri Apr 14 22:39:58 2017 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings

As soon as I switch to 3G/LTE, I can connect and all works.

Since the connection over WiFI works with the OpenVPN installation on my Synology Diskstation I would think that the problem is not on my WiFi. Do you have any suggestion, what might be causing this issue and how to resolve it? Unfortunately Google didn't help me (this issue is seen a lot, but I never saw a post about it only happen when on local Wifi but not on other network).

EDIT: Just to add that the Synology DS works on UDP/1194. Now, when I switch on the OpenVPN installation from your script the port to TCP it works from mobile AND local network. So it seems a UDP related issue with your installation.

Arch Linux support

As requested by @HLFH, I examined the possibility to add the support of Arch Linux.

It seems to be possible, however I need rc.local for the iptables rules here :

rc.local is present by default on Debian and Ubuntu, but not Arch Linux.

It is not even present the repositories, but just in the AUR : https://aur.archlinux.org/packages/rc-local/

However, I don't think it would be a great idea to install it from the AUR, because of security issues, but also, if the user does not have the AUR installed, which is probably the case on a server, I don't want to cover its installation.

We are in a dead end, so any idea is welcome 🙄

Authenticate/Decrypt packet error

Thank you so much for an awesome script.

I have installed latest version of your script on Debian 8 64 bit and after successful running it for couple of hours (mainly browsing), I started downloading a file and after a minute or so, my download speed went down. I checked the logs, I have the below errors. I'm on 50Mbps dual.

Please let me know if you need more logs.

Sun Dec 11 19:23:49 2016 open_tun, tt->ipv6=0
Sun Dec 11 19:23:49 2016 TAP-WIN32 device [Ethernet] opened: \.\Global{07AF53CD-3A45-43C7-AA9A-F6BF94B58B0B}.tap
Sun Dec 11 19:23:49 2016 TAP-Windows Driver Version 9.21
Sun Dec 11 19:23:49 2016 Set TAP-Windows TUN subnet mode network/local/netmask = 10.8.0.0/10.8.0.2/255.255.255.0 [SUCCEEDED]
Sun Dec 11 19:23:49 2016 Notified TAP-Windows driver to set a DHCP IP/netmask of 10.8.0.2/255.255.255.0 on interface {07AF53CD-3A45-43C7-AA9A-F6BF94B58B0B} [DHCP-serv: 10.8.0.254, lease-time: 31536000]
Sun Dec 11 19:23:49 2016 Successful ARP Flush on interface [2] {07AF53CD-3A45-43C7-AA9A-F6BF94B58B0B}
Sun Dec 11 19:23:49 2016 Blocking DNS using WFP
Sun Dec 11 19:23:54 2016 TEST ROUTES: 1/1 succeeded len=0 ret=1 a=0 u/d=up
Sun Dec 11 19:23:54 2016 C:\WINDOWS\system32\route.exe ADD 185.XX.XX.XX MASK 255.255.255.255 192.168.1.1
Sun Dec 11 19:23:54 2016 ROUTE: CreateIpForwardEntry succeeded with dwForwardMetric1=25 and dwForwardType=4
Sun Dec 11 19:23:54 2016 Route addition via IPAPI succeeded [adaptive]
Sun Dec 11 19:23:54 2016 C:\WINDOWS\system32\route.exe ADD 0.0.0.0 MASK 128.0.0.0 10.8.0.1
Sun Dec 11 19:23:54 2016 ROUTE: CreateIpForwardEntry succeeded with dwForwardMetric1=20 and dwForwardType=4
Sun Dec 11 19:23:54 2016 Route addition via IPAPI succeeded [adaptive]
Sun Dec 11 19:23:54 2016 C:\WINDOWS\system32\route.exe ADD 128.0.0.0 MASK 128.0.0.0 10.8.0.1
Sun Dec 11 19:23:54 2016 ROUTE: CreateIpForwardEntry succeeded with dwForwardMetric1=20 and dwForwardType=4
Sun Dec 11 19:23:54 2016 Route addition via IPAPI succeeded [adaptive]
Sun Dec 11 19:23:54 2016 Initialization Sequence Completed
Sun Dec 11 19:23:54 2016 MANAGEMENT: >STATE:1481464434,CONNECTED,SUCCESS,10.8.0.2,185.XX.XXX
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40738 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40739 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40740 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40741 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40742 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40743 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40744 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40745 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40746 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40747 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40748 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40749 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40750 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40751 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40752 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40753 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40754 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40755 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40756 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40757 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40758 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40759 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40760 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40761 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40762 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40763 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40764 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40765 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40766 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40767 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40768 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40769 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40770 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40771 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40772 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40773 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40774 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40775 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40776 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40777 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40778 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40779 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40780 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40781 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40782 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40783 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40784 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40785 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40786 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40787 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40788 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40789 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40790 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40791 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40792 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40793 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40794 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40795 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40796 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40797 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40798 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40799 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40800 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40801 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40802 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40803 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40804 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40805 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40806 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40807 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40808 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Sun Dec 11 19:24:39 2016 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #40809 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings

TLS handshake failed

Sun Dec 18 02:21:46 2016 OpenVPN 2.3.12 x86_64-w64-mingw32 [SSL (OpenSSL)] [LZO] [PKCS11] [IPv6] built on Aug 23 2016
Sun Dec 18 02:21:46 2016 Windows version 6.2 (Windows 8 or greater) 64bit
Sun Dec 18 02:21:46 2016 library versions: OpenSSL 1.0.1t 3 May 2016, LZO 2.09
Sun Dec 18 02:21:46 2016 MANAGEMENT: TCP Socket listening on [AF_INET]127.0.0.1:25341
Sun Dec 18 02:21:46 2016 Need hold release from management interface, waiting...
Sun Dec 18 02:21:46 2016 MANAGEMENT: Client connected from [AF_INET]127.0.0.1:25341
Sun Dec 18 02:21:46 2016 MANAGEMENT: CMD 'state on'
Sun Dec 18 02:21:46 2016 MANAGEMENT: CMD 'log all on'
Sun Dec 18 02:21:46 2016 MANAGEMENT: CMD 'hold off'
Sun Dec 18 02:21:46 2016 MANAGEMENT: CMD 'hold release'
Sun Dec 18 02:21:46 2016 WARNING: Your certificate is not yet valid!
Sun Dec 18 02:21:46 2016 Control Channel Authentication: tls-auth using INLINE static key file
Sun Dec 18 02:21:46 2016 Outgoing Control Channel Authentication: Using 256 bit message hash 'SHA256' for HMAC authentication
Sun Dec 18 02:21:46 2016 Incoming Control Channel Authentication: Using 256 bit message hash 'SHA256' for HMAC authentication
Sun Dec 18 02:21:46 2016 Socket Buffers: R=[65536->65536] S=[65536->65536]
Sun Dec 18 02:21:46 2016 UDPv4 link local: [undef]
Sun Dec 18 02:21:46 2016 UDPv4 link remote: [AF_INET]31.186.250.47:1194
Sun Dec 18 02:21:46 2016 MANAGEMENT: >STATE:1482024106,WAIT,,,
Sun Dec 18 02:21:46 2016 MANAGEMENT: >STATE:1482024106,AUTH,,,
Sun Dec 18 02:21:46 2016 TLS: Initial packet from [AF_INET]31.186.250.47:1194, sid=c6fffc0e 4c5088f1
Sun Dec 18 02:21:46 2016 VERIFY ERROR: depth=1, error=certificate is not yet valid: CN=ChangeMe
Sun Dec 18 02:21:46 2016 OpenSSL: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Sun Dec 18 02:21:46 2016 TLS_ERROR: BIO read tls_read_plaintext error
Sun Dec 18 02:21:46 2016 TLS Error: TLS object -> incoming plaintext read error
Sun Dec 18 02:21:46 2016 TLS Error: TLS handshake failed
Sun Dec 18 02:21:46 2016 SIGUSR1[soft,tls-error] received, process restarting
Sun Dec 18 02:21:46 2016 MANAGEMENT: >STATE:1482024106,RECONNECTING,tls-error,,
Sun Dec 18 02:21:46 2016 Restart pause, 2 second(s)
Sun Dec 18 02:21:48 2016 Socket Buffers: R=[65536->65536] S=[65536->65536]
Sun Dec 18 02:21:48 2016 UDPv4 link local: [undef]
Sun Dec 18 02:21:48 2016 UDPv4 link remote: [AF_INET]31.186.250.47:1194
Sun Dec 18 02:21:48 2016 MANAGEMENT: >STATE:1482024108,WAIT,,,
Sun Dec 18 02:21:49 2016 MANAGEMENT: >STATE:1482024109,AUTH,,,
Sun Dec 18 02:21:49 2016 TLS: Initial packet from [AF_INET]31.186.250.47:1194, sid=b60c4eb5 99b13093
Sun Dec 18 02:21:49 2016 VERIFY ERROR: depth=1, error=certificate is not yet valid: CN=ChangeMe
Sun Dec 18 02:21:49 2016 OpenSSL: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Sun Dec 18 02:21:49 2016 TLS_ERROR: BIO read tls_read_plaintext error
Sun Dec 18 02:21:49 2016 TLS Error: TLS object -> incoming plaintext read error
Sun Dec 18 02:21:49 2016 TLS Error: TLS handshake failed
Sun Dec 18 02:21:49 2016 SIGUSR1[soft,tls-error] received, process restarting
Sun Dec 18 02:21:49 2016 MANAGEMENT: >STATE:1482024109,RECONNECTING,tls-error,,
Sun Dec 18 02:21:49 2016 Restart pause, 2 second(s)
Sun Dec 18 02:21:51 2016 Socket Buffers: R=[65536->65536] S=[65536->65536]
Sun Dec 18 02:21:51 2016 UDPv4 link local: [undef]
Sun Dec 18 02:21:51 2016 UDPv4 link remote: [AF_INET]31.186.250.47:1194
Sun Dec 18 02:21:51 2016 MANAGEMENT: >STATE:1482024111,WAIT,,,
Sun Dec 18 02:21:51 2016 MANAGEMENT: >STATE:1482024111,AUTH,,,
Sun Dec 18 02:21:51 2016 TLS: Initial packet from [AF_INET]31.186.250.47:1194, sid=7c277811 d50b1a33
Sun Dec 18 02:21:51 2016 VERIFY ERROR: depth=1, error=certificate is not yet valid: CN=ChangeMe
Sun Dec 18 02:21:51 2016 OpenSSL: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Sun Dec 18 02:21:51 2016 TLS_ERROR: BIO read tls_read_plaintext error
Sun Dec 18 02:21:51 2016 TLS Error: TLS object -> incoming plaintext read error
Sun Dec 18 02:21:51 2016 TLS Error: TLS handshake failed
Sun Dec 18 02:21:51 2016 SIGUSR1[soft,tls-error] received, process restarting
Sun Dec 18 02:21:51 2016 MANAGEMENT: >STATE:1482024111,RECONNECTING,tls-error,,
Sun Dec 18 02:21:51 2016 Restart pause, 2 second(s)

OpenVPN speed problems

maybe this is not a issue...

i finish the installation of your script but i am getting very very slow speeds.

this is my setup:

home - 200mbit ubuntu desktop with i219-v ethernet

testing location - 100 mbits windows 10

i can't get more than 15 mbits.

i have pings of 17ms from one location to other without vpn... its really near

any idea @angristan?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.