corevpn-config

Crates.iocorevpn-config
lib.rscorevpn-config
version0.1.0
created_at2026-01-02 17:16:42.708799+00
updated_at2026-01-02 17:16:42.708799+00
descriptionConfiguration management for CoreVPN - server and client configuration
homepagehttps://pegasusheavy.github.io/corevpn/
repositoryhttps://github.com/pegasusheavy/corevpn
max_upload_size
id2018913
size84,340
Joseph R. Quinn (quinnjr)

documentation

README

corevpn-config

Crates.io Documentation License

Configuration management for CoreVPN - server and client configuration.

Features

  • Server Configuration: Complete server settings management
  • Client Config Generation: .ovpn file generation
  • TOML Format: Human-readable configuration files
  • Validation: Configuration validation and defaults
  • Ghost Mode: Zero-logging privacy configuration

Usage

use corevpn_config::{ServerConfig, ConfigGenerator};

// Load server configuration
let config = ServerConfig::load("config.toml")?;

// Generate client configuration
let generator = ConfigGenerator::new(config, ca, ta_key);
let client_config = generator.generate_client_config("user@example.com", Some("User"))?;

// Save .ovpn file
std::fs::write(&client_config.filename(), &client_config.ovpn_content)?;

Configuration Example

[server]
listen_addr = "0.0.0.0:1194"
public_host = "vpn.example.com"

[network]
subnet = "10.8.0.0/24"
dns = ["1.1.1.1", "1.0.0.1"]

[security]
cipher = "chacha20-poly1305"
tls_min_version = "1.3"

[logging]
connection_mode = "memory"  # or "none" for ghost mode

License

Licensed under either of:

at your option.

Commit count: 0

cargo fmt