Table of Contents
Setting up OpenVPN manually on Linux can significantly enhance your online privacy and security. This guide provides step-by-step instructions to configure OpenVPN for maximum privacy on your Linux system.
Prerequisites
- Linux operating system (Ubuntu, Debian, Fedora, etc.)
- Root or sudo privileges
- OpenVPN package installed
- Configuration files from your VPN provider
- Basic knowledge of terminal commands
Installing OpenVPN
First, ensure OpenVPN is installed on your system. Use the following commands based on your distribution:
Ubuntu/Debian:
sudo apt update && sudo apt install openvpn
Fedora:
sudo dnf install openvpn
Preparing the Configuration Files
Obtain the OpenVPN configuration files (.ovpn) from your VPN provider. Store them securely in a dedicated directory, e.g., /etc/openvpn/.
Set appropriate permissions:
sudo chmod 600 /etc/openvpn/your-config-file.ovpn
Configuring for Maximum Privacy
Edit your configuration file to enhance privacy. Use a text editor like nano or vim:
sudo nano /etc/openvpn/your-config-file.ovpn
Make the following adjustments:
- Add nobind to prevent binding to a specific local port.
- Set cipher to a strong encryption algorithm, e.g.,
AES-256-GCM. - Include auth with a secure hash, e.g.,
SHA256. - Enable redirect-gateway def1 to route all traffic through the VPN.
- Disable DNS leaks by configuring block-outside-dns (Windows-specific) or using DNS over TLS.
- Use tls-auth or tls-crypt for additional security.
- Set comp-lzo to enable compression if supported.
- Ensure auth-user-pass is configured for username/password authentication.
Example snippet:
cipher AES-256-GCM
auth SHA256
Starting the VPN Connection
Connect to your VPN using the command line:
sudo openvpn --config /etc/openvpn/your-config-file.ovpn
For persistent connections, consider creating a systemd service or using NetworkManager.
Verifying Privacy and Connection
Check your IP address:
curl ifconfig.me
Ensure it reflects the VPN server’s IP, not your original IP.
Test for DNS leaks using online tools like DNS Leak Test.
Additional Tips for Maximum Privacy
- Always keep your VPN configuration and software updated.
- Use strong, unique credentials for VPN login.
- Disable IPv6 to prevent leaks (
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1). - Consider using a firewall to restrict traffic outside the VPN tunnel.
- Regularly verify your connection for leaks and security.
By following these steps, you can manually configure OpenVPN on Linux to maximize your online privacy and security.