I need help setting up my OpenVPN server

21.0 USD

21.0 USD peopleperhour Technology & Programming Overseas
161 days ago

Description

Context:
I have a home server running Debian 12 with multiple internet connections:
* eth0: My primary optic fiber connection.* pppX (0-N): USB 4G modem interfaces connected via wvdial. I use wvdial for better control and stability, though I'm open to suggestions.
A C# server I wrote manages these resources to provide a small, experimental proxy service.
How it works:
1. Client Request: A client requests a proxy.2. Server Action: The server selects an available USB modem, and uses wvdial to establish a connection, creating a new network interface (pppX). The server then configures 3proxy to listen on a specific port and forward traffic to the newly created interface. Generates credentials, and gives the proxy data to the client.
The connection lasts for a set number of hours, then is closed and resources are released.
The Problem:
While this system works, I need to make it more robust and secure. I've considered OpenVPN, but WireGuard isn't suitable due to its UDP-only nature. I need TCP for anonymity.
The Goal:
I want to implement OpenVPN in my existing architecture. The core idea remains the same: using USB modems and wvdial. However, instead of a proxy server, we'll use an OpenVPN server.
Requirements:
1. Dynamic Configuration: The server should generate .ovpn files for each client, revoking them after the connection ends.2. Dedicated Connections: Each client should have a dedicated connection to a specific USB modem, ensuring that traffic from different clients is not mixed. After the connection is closed and resources are released, the modem should be available for a new client.3. Configuration Guidance: I need help with the OpenVPN configuration, including file locations, key settings, and routing rules. Consider I don't have advanced knowledge on Linux network management.
I'm not a Linux expert, but I'm eager to learn. I have clients relying on this service, so I need a quicker solution than self-learning.
How I want it to work (I'm open to suggestions of course):
1. A client requests a VPN connection, the server runs wvdial as it currently does.2. After the interface is up and has internet access, the server must set up a new configuration to allow the current client to connect to the server and redirect their traffic to this newly created interface through a specific port.3. Then after some hours, or when the client requests it, the server closes the connection, invalidates the .ovpn client file, and closes wvdial.
Just to clarify, wvdial, after linking the modem with the ISP (by running ppp), gives me the information of the new connection. The network details such as IPv4 addresses, interface name, etc., all the data that comes from `/etc/ppp/ip-up`, are available to use for routing or whatever is needed.

关注公众号,不定期副业成功案例分享
Follow WeChat

Success story sharing

Want to stay one step ahead of the latest teleworks?

Subscribe Now

Similar Teleworks

Overview: We are running a Linux server with a Btrfs filesystem configured with multiple subvolumes and EFI-based boot. Recently, after a reboot, the server is failing to bring up network services—no network connectivity (no ping, no SSH access), and web services are not starting. Current Situation: - The server’s root and Btrfs subvolumes are intact and accessible when booting into rescue mode. - Disk integrity and subvolume structure have been verified and appear healthy. - Network services do not start on normal boot, preventing remote access. - We have initiated a KVM console session to monitor boot-time behavior and gather logs. What We Need: - An expert Linux system administrator with proven experience managing Btrfs-based servers and EFI boot environments. - Expertise diagnosing and resolving network initialization failures during system boot on such configurations. - Ability to analyze system boot logs, service statuses, and network configuration files (e.g., systemd-networkd, Netplan, NetworkManager). - Experience working with rescue environments, chrooting, and manual mounting of Btrfs subvolumes. - Capacity to develop, improve, and execute scripts for diagnostics and repair of complex boot and networking issues. Responsibilities: - Analyze existing server configuration and logs to identify root causes of network failure at boot. - Verify and, if necessary, correct mounting procedures for Btrfs subvolumes during boot. - Validate and repair EFI bootloader configuration and files. - Inspect and troubleshoot network service configurations and startup procedures. Ideal Admin: - Strong background in Linux system administration with deep knowledge of Btrfs filesystems. - Experience managing UEFI/EFI boot systems and GRUB bootloader configurations. - Familiarity with network configuration systems: systemd-networkd, Netplan, NetworkManager, or classic networking scripts. - Skilled in using rescue environments, chroot, and manual filesystem management. - Excellent problem-solving skills and ability to work independently with minimal supervisio
40.0 USD Technology & Programming peopleperhour Overseas
8 hour ago