From 5fc5d37330d3535a0f421632694d1e7918fc22d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Parm=C3=A9nides=20GV?= Date: Tue, 8 Apr 2014 11:38:09 +0200 Subject: Compiles correctly: app/build-native + gradle. --- app/openvpn/sample/sample-config-files/README | 6 + app/openvpn/sample/sample-config-files/client.conf | 123 +++++++++ app/openvpn/sample/sample-config-files/firewall.sh | 108 ++++++++ app/openvpn/sample/sample-config-files/home.up | 2 + .../sample/sample-config-files/loopback-client | 25 ++ .../sample/sample-config-files/loopback-server | 26 ++ app/openvpn/sample/sample-config-files/office.up | 2 + .../sample/sample-config-files/openvpn-shutdown.sh | 5 + .../sample/sample-config-files/openvpn-startup.sh | 34 +++ app/openvpn/sample/sample-config-files/server.conf | 299 +++++++++++++++++++++ .../sample/sample-config-files/static-home.conf | 72 +++++ .../sample/sample-config-files/static-office.conf | 69 +++++ .../sample/sample-config-files/tls-home.conf | 83 ++++++ .../sample/sample-config-files/tls-office.conf | 83 ++++++ .../sample-config-files/xinetd-client-config | 11 + .../sample-config-files/xinetd-server-config | 25 ++ 16 files changed, 973 insertions(+) create mode 100644 app/openvpn/sample/sample-config-files/README create mode 100644 app/openvpn/sample/sample-config-files/client.conf create mode 100755 app/openvpn/sample/sample-config-files/firewall.sh create mode 100755 app/openvpn/sample/sample-config-files/home.up create mode 100644 app/openvpn/sample/sample-config-files/loopback-client create mode 100644 app/openvpn/sample/sample-config-files/loopback-server create mode 100755 app/openvpn/sample/sample-config-files/office.up create mode 100755 app/openvpn/sample/sample-config-files/openvpn-shutdown.sh create mode 100755 app/openvpn/sample/sample-config-files/openvpn-startup.sh create mode 100644 app/openvpn/sample/sample-config-files/server.conf create mode 100644 app/openvpn/sample/sample-config-files/static-home.conf create mode 100644 app/openvpn/sample/sample-config-files/static-office.conf create mode 100644 app/openvpn/sample/sample-config-files/tls-home.conf create mode 100644 app/openvpn/sample/sample-config-files/tls-office.conf create mode 100644 app/openvpn/sample/sample-config-files/xinetd-client-config create mode 100644 app/openvpn/sample/sample-config-files/xinetd-server-config (limited to 'app/openvpn/sample/sample-config-files') diff --git a/app/openvpn/sample/sample-config-files/README b/app/openvpn/sample/sample-config-files/README new file mode 100644 index 00000000..d53ac79a --- /dev/null +++ b/app/openvpn/sample/sample-config-files/README @@ -0,0 +1,6 @@ +Sample OpenVPN Configuration Files. + +These files are part of the OpenVPN HOWTO +which is located at: + +http://openvpn.net/howto.html diff --git a/app/openvpn/sample/sample-config-files/client.conf b/app/openvpn/sample/sample-config-files/client.conf new file mode 100644 index 00000000..58b2038b --- /dev/null +++ b/app/openvpn/sample/sample-config-files/client.conf @@ -0,0 +1,123 @@ +############################################## +# Sample client-side OpenVPN 2.0 config file # +# for connecting to multi-client server. # +# # +# This configuration can be used by multiple # +# clients, however each client should have # +# its own cert and key files. # +# # +# On Windows, you might want to rename this # +# file so it has a .ovpn extension # +############################################## + +# Specify that we are a client and that we +# will be pulling certain config file directives +# from the server. +client + +# Use the same setting as you are using on +# the server. +# On most systems, the VPN will not function +# unless you partially or fully disable +# the firewall for the TUN/TAP interface. +;dev tap +dev tun + +# Windows needs the TAP-Win32 adapter name +# from the Network Connections panel +# if you have more than one. On XP SP2, +# you may need to disable the firewall +# for the TAP adapter. +;dev-node MyTap + +# Are we connecting to a TCP or +# UDP server? Use the same setting as +# on the server. +;proto tcp +proto udp + +# The hostname/IP and port of the server. +# You can have multiple remote entries +# to load balance between the servers. +remote my-server-1 1194 +;remote my-server-2 1194 + +# Choose a random host from the remote +# list for load-balancing. Otherwise +# try hosts in the order specified. +;remote-random + +# Keep trying indefinitely to resolve the +# host name of the OpenVPN server. Very useful +# on machines which are not permanently connected +# to the internet such as laptops. +resolv-retry infinite + +# Most clients don't need to bind to +# a specific local port number. +nobind + +# Downgrade privileges after initialization (non-Windows only) +;user nobody +;group nobody + +# Try to preserve some state across restarts. +persist-key +persist-tun + +# If you are connecting through an +# HTTP proxy to reach the actual OpenVPN +# server, put the proxy server/IP and +# port number here. See the man page +# if your proxy server requires +# authentication. +;http-proxy-retry # retry on connection failures +;http-proxy [proxy server] [proxy port #] + +# Wireless networks often produce a lot +# of duplicate packets. Set this flag +# to silence duplicate packet warnings. +;mute-replay-warnings + +# SSL/TLS parms. +# See the server config file for more +# description. It's best to use +# a separate .crt/.key file pair +# for each client. A single ca +# file can be used for all clients. +ca ca.crt +cert client.crt +key client.key + +# Verify server certificate by checking +# that the certicate has the nsCertType +# field set to "server". This is an +# important precaution to protect against +# a potential attack discussed here: +# http://openvpn.net/howto.html#mitm +# +# To use this feature, you will need to generate +# your server certificates with the nsCertType +# field set to "server". The build-key-server +# script in the easy-rsa folder will do this. +ns-cert-type server + +# If a tls-auth key is used on the server +# then every client must also have the key. +;tls-auth ta.key 1 + +# Select a cryptographic cipher. +# If the cipher option is used on the server +# then you must also specify it here. +;cipher x + +# Enable compression on the VPN link. +# Don't enable this unless it is also +# enabled in the server config file. +comp-lzo + +# Set log file verbosity. +verb 3 + +# Silence repeating messages +;mute 20 diff --git a/app/openvpn/sample/sample-config-files/firewall.sh b/app/openvpn/sample/sample-config-files/firewall.sh new file mode 100755 index 00000000..19d75ee9 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/firewall.sh @@ -0,0 +1,108 @@ +#!/bin/sh + +# A Sample OpenVPN-aware firewall. + +# eth0 is connected to the internet. +# eth1 is connected to a private subnet. + +# Change this subnet to correspond to your private +# ethernet subnet. Home will use HOME_NET/24 and +# Office will use OFFICE_NET/24. +PRIVATE=10.0.0.0/24 + +# Loopback address +LOOP=127.0.0.1 + +# Delete old iptables rules +# and temporarily block all traffic. +iptables -P OUTPUT DROP +iptables -P INPUT DROP +iptables -P FORWARD DROP +iptables -F + +# Set default policies +iptables -P OUTPUT ACCEPT +iptables -P INPUT DROP +iptables -P FORWARD DROP + +# Prevent external packets from using loopback addr +iptables -A INPUT -i eth0 -s $LOOP -j DROP +iptables -A FORWARD -i eth0 -s $LOOP -j DROP +iptables -A INPUT -i eth0 -d $LOOP -j DROP +iptables -A FORWARD -i eth0 -d $LOOP -j DROP + +# Anything coming from the Internet should have a real Internet address +iptables -A FORWARD -i eth0 -s 192.168.0.0/16 -j DROP +iptables -A FORWARD -i eth0 -s 172.16.0.0/12 -j DROP +iptables -A FORWARD -i eth0 -s 10.0.0.0/8 -j DROP +iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DROP +iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP +iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP + +# Block outgoing NetBios (if you have windows machines running +# on the private subnet). This will not affect any NetBios +# traffic that flows over the VPN tunnel, but it will stop +# local windows machines from broadcasting themselves to +# the internet. +iptables -A FORWARD -p tcp --sport 137:139 -o eth0 -j DROP +iptables -A FORWARD -p udp --sport 137:139 -o eth0 -j DROP +iptables -A OUTPUT -p tcp --sport 137:139 -o eth0 -j DROP +iptables -A OUTPUT -p udp --sport 137:139 -o eth0 -j DROP + +# Check source address validity on packets going out to internet +iptables -A FORWARD -s ! $PRIVATE -i eth1 -j DROP + +# Allow local loopback +iptables -A INPUT -s $LOOP -j ACCEPT +iptables -A INPUT -d $LOOP -j ACCEPT + +# Allow incoming pings (can be disabled) +iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT + +# Allow services such as www and ssh (can be disabled) +iptables -A INPUT -p tcp --dport http -j ACCEPT +iptables -A INPUT -p tcp --dport ssh -j ACCEPT + +# Allow incoming OpenVPN packets +# Duplicate the line below for each +# OpenVPN tunnel, changing --dport n +# to match the OpenVPN UDP port. +# +# In OpenVPN, the port number is +# controlled by the --port n option. +# If you put this option in the config +# file, you can remove the leading '--' +# +# If you taking the stateful firewall +# approach (see the OpenVPN HOWTO), +# then comment out the line below. + +iptables -A INPUT -p udp --dport 1194 -j ACCEPT + +# Allow packets from TUN/TAP devices. +# When OpenVPN is run in a secure mode, +# it will authenticate packets prior +# to their arriving on a tun or tap +# interface. Therefore, it is not +# necessary to add any filters here, +# unless you want to restrict the +# type of packets which can flow over +# the tunnel. + +iptables -A INPUT -i tun+ -j ACCEPT +iptables -A FORWARD -i tun+ -j ACCEPT +iptables -A INPUT -i tap+ -j ACCEPT +iptables -A FORWARD -i tap+ -j ACCEPT + +# Allow packets from private subnets +iptables -A INPUT -i eth1 -j ACCEPT +iptables -A FORWARD -i eth1 -j ACCEPT + +# Keep state of connections from local machine and private subnets +iptables -A OUTPUT -m state --state NEW -o eth0 -j ACCEPT +iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT +iptables -A FORWARD -m state --state NEW -o eth0 -j ACCEPT +iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT + +# Masquerade local subnet +iptables -t nat -A POSTROUTING -s $PRIVATE -o eth0 -j MASQUERADE diff --git a/app/openvpn/sample/sample-config-files/home.up b/app/openvpn/sample/sample-config-files/home.up new file mode 100755 index 00000000..9c347cc5 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/home.up @@ -0,0 +1,2 @@ +#!/bin/sh +route add -net 10.0.0.0 netmask 255.255.255.0 gw $5 diff --git a/app/openvpn/sample/sample-config-files/loopback-client b/app/openvpn/sample/sample-config-files/loopback-client new file mode 100644 index 00000000..d7f59e69 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/loopback-client @@ -0,0 +1,25 @@ +# Perform a TLS loopback test -- client side. +# +# This test performs a TLS negotiation once every 10 seconds, +# and will terminate after 2 minutes. +# +# From the root directory of the OpenVPN distribution, +# after openvpn has been built, run: +# +# ./openvpn --config sample-config-files/loopback-client (In one window) +# ./openvpn --config sample-config-files/loopback-server (Simultaneously in another window) + +rport 16000 +lport 16001 +remote localhost +local localhost +dev null +verb 3 +reneg-sec 10 +tls-client +ca sample-keys/ca.crt +key sample-keys/client.key +cert sample-keys/client.crt +cipher DES-EDE3-CBC +ping 1 +inactive 120 10000000 diff --git a/app/openvpn/sample/sample-config-files/loopback-server b/app/openvpn/sample/sample-config-files/loopback-server new file mode 100644 index 00000000..9d21bcec --- /dev/null +++ b/app/openvpn/sample/sample-config-files/loopback-server @@ -0,0 +1,26 @@ +# Perform a TLS loopback test -- server side. +# +# This test performs a TLS negotiation once every 10 seconds, +# and will terminate after 2 minutes. +# +# From the root directory of the OpenVPN distribution, +# after openvpn has been built, run: +# +# ./openvpn --config sample-config-files/loopback-client (In one window) +# ./openvpn --config sample-config-files/loopback-server (Simultaneously in another window) + +rport 16001 +lport 16000 +remote localhost +local localhost +dev null +verb 3 +reneg-sec 10 +tls-server +dh sample-keys/dh1024.pem +ca sample-keys/ca.crt +key sample-keys/server.key +cert sample-keys/server.crt +cipher DES-EDE3-CBC +ping 1 +inactive 120 10000000 diff --git a/app/openvpn/sample/sample-config-files/office.up b/app/openvpn/sample/sample-config-files/office.up new file mode 100755 index 00000000..74a71a33 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/office.up @@ -0,0 +1,2 @@ +#!/bin/sh +route add -net 10.0.1.0 netmask 255.255.255.0 gw $5 diff --git a/app/openvpn/sample/sample-config-files/openvpn-shutdown.sh b/app/openvpn/sample/sample-config-files/openvpn-shutdown.sh new file mode 100755 index 00000000..8ed2d1d5 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/openvpn-shutdown.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +# stop all openvpn processes + +killall -TERM openvpn diff --git a/app/openvpn/sample/sample-config-files/openvpn-startup.sh b/app/openvpn/sample/sample-config-files/openvpn-startup.sh new file mode 100755 index 00000000..0ee006bc --- /dev/null +++ b/app/openvpn/sample/sample-config-files/openvpn-startup.sh @@ -0,0 +1,34 @@ +#!/bin/sh + +# A sample OpenVPN startup script +# for Linux. + +# openvpn config file directory +dir=/etc/openvpn + +# load the firewall +$dir/firewall.sh + +# load TUN/TAP kernel module +modprobe tun + +# enable IP forwarding +echo 1 > /proc/sys/net/ipv4/ip_forward + +# Invoke openvpn for each VPN tunnel +# in daemon mode. Alternatively, +# you could remove "--daemon" from +# the command line and add "daemon" +# to the config file. +# +# Each tunnel should run on a separate +# UDP port. Use the "port" option +# to control this. Like all of +# OpenVPN's options, you can +# specify "--port 8000" on the command +# line or "port 8000" in the config +# file. + +openvpn --cd $dir --daemon --config vpn1.conf +openvpn --cd $dir --daemon --config vpn2.conf +openvpn --cd $dir --daemon --config vpn2.conf diff --git a/app/openvpn/sample/sample-config-files/server.conf b/app/openvpn/sample/sample-config-files/server.conf new file mode 100644 index 00000000..f483b6bb --- /dev/null +++ b/app/openvpn/sample/sample-config-files/server.conf @@ -0,0 +1,299 @@ +################################################# +# Sample OpenVPN 2.0 config file for # +# multi-client server. # +# # +# This file is for the server side # +# of a many-clients <-> one-server # +# OpenVPN configuration. # +# # +# OpenVPN also supports # +# single-machine <-> single-machine # +# configurations (See the Examples page # +# on the web site for more info). # +# # +# This config should work on Windows # +# or Linux/BSD systems. Remember on # +# Windows to quote pathnames and use # +# double backslashes, e.g.: # +# "C:\\Program Files\\OpenVPN\\config\\foo.key" # +# # +# Comments are preceded with '#' or ';' # +################################################# + +# Which local IP address should OpenVPN +# listen on? (optional) +;local a.b.c.d + +# Which TCP/UDP port should OpenVPN listen on? +# If you want to run multiple OpenVPN instances +# on the same machine, use a different port +# number for each one. You will need to +# open up this port on your firewall. +port 1194 + +# TCP or UDP server? +;proto tcp +proto udp + +# "dev tun" will create a routed IP tunnel, +# "dev tap" will create an ethernet tunnel. +# Use "dev tap0" if you are ethernet bridging +# and have precreated a tap0 virtual interface +# and bridged it with your ethernet interface. +# If you want to control access policies +# over the VPN, you must create firewall +# rules for the the TUN/TAP interface. +# On non-Windows systems, you can give +# an explicit unit number, such as tun0. +# On Windows, use "dev-node" for this. +# On most systems, the VPN will not function +# unless you partially or fully disable +# the firewall for the TUN/TAP interface. +;dev tap +dev tun + +# Windows needs the TAP-Win32 adapter name +# from the Network Connections panel if you +# have more than one. On XP SP2 or higher, +# you may need to selectively disable the +# Windows firewall for the TAP adapter. +# Non-Windows systems usually don't need this. +;dev-node MyTap + +# SSL/TLS root certificate (ca), certificate +# (cert), and private key (key). Each client +# and the server must have their own cert and +# key file. The server and all clients will +# use the same ca file. +# +# See the "easy-rsa" directory for a series +# of scripts for generating RSA certificates +# and private keys. Remember to use +# a unique Common Name for the server +# and each of the client certificates. +# +# Any X509 key management system can be used. +# OpenVPN can also use a PKCS #12 formatted key file +# (see "pkcs12" directive in man page). +ca ca.crt +cert server.crt +key server.key # This file should be kept secret + +# Diffie hellman parameters. +# Generate your own with: +# openssl dhparam -out dh1024.pem 1024 +# Substitute 2048 for 1024 if you are using +# 2048 bit keys. +dh dh1024.pem + +# Configure server mode and supply a VPN subnet +# for OpenVPN to draw client addresses from. +# The server will take 10.8.0.1 for itself, +# the rest will be made available to clients. +# Each client will be able to reach the server +# on 10.8.0.1. Comment this line out if you are +# ethernet bridging. See the man page for more info. +server 10.8.0.0 255.255.255.0 + +# Maintain a record of client <-> virtual IP address +# associations in this file. If OpenVPN goes down or +# is restarted, reconnecting clients can be assigned +# the same virtual IP address from the pool that was +# previously assigned. +ifconfig-pool-persist ipp.txt + +# Configure server mode for ethernet bridging. +# You must first use your OS's bridging capability +# to bridge the TAP interface with the ethernet +# NIC interface. Then you must manually set the +# IP/netmask on the bridge interface, here we +# assume 10.8.0.4/255.255.255.0. Finally we +# must set aside an IP range in this subnet +# (start=10.8.0.50 end=10.8.0.100) to allocate +# to connecting clients. Leave this line commented +# out unless you are ethernet bridging. +;server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100 + +# Configure server mode for ethernet bridging +# using a DHCP-proxy, where clients talk +# to the OpenVPN server-side DHCP server +# to receive their IP address allocation +# and DNS server addresses. You must first use +# your OS's bridging capability to bridge the TAP +# interface with the ethernet NIC interface. +# Note: this mode only works on clients (such as +# Windows), where the client-side TAP adapter is +# bound to a DHCP client. +;server-bridge + +# Push routes to the client to allow it +# to reach other private subnets behind +# the server. Remember that these +# private subnets will also need +# to know to route the OpenVPN client +# address pool (10.8.0.0/255.255.255.0) +# back to the OpenVPN server. +;push "route 192.168.10.0 255.255.255.0" +;push "route 192.168.20.0 255.255.255.0" + +# To assign specific IP addresses to specific +# clients or if a connecting client has a private +# subnet behind it that should also have VPN access, +# use the subdirectory "ccd" for client-specific +# configuration files (see man page for more info). + +# EXAMPLE: Suppose the client +# having the certificate common name "Thelonious" +# also has a small subnet behind his connecting +# machine, such as 192.168.40.128/255.255.255.248. +# First, uncomment out these lines: +;client-config-dir ccd +;route 192.168.40.128 255.255.255.248 +# Then create a file ccd/Thelonious with this line: +# iroute 192.168.40.128 255.255.255.248 +# This will allow Thelonious' private subnet to +# access the VPN. This example will only work +# if you are routing, not bridging, i.e. you are +# using "dev tun" and "server" directives. + +# EXAMPLE: Suppose you want to give +# Thelonious a fixed VPN IP address of 10.9.0.1. +# First uncomment out these lines: +;client-config-dir ccd +;route 10.9.0.0 255.255.255.252 +# Then add this line to ccd/Thelonious: +# ifconfig-push 10.9.0.1 10.9.0.2 + +# Suppose that you want to enable different +# firewall access policies for different groups +# of clients. There are two methods: +# (1) Run multiple OpenVPN daemons, one for each +# group, and firewall the TUN/TAP interface +# for each group/daemon appropriately. +# (2) (Advanced) Create a script to dynamically +# modify the firewall in response to access +# from different clients. See man +# page for more info on learn-address script. +;learn-address ./script + +# If enabled, this directive will configure +# all clients to redirect their default +# network gateway through the VPN, causing +# all IP traffic such as web browsing and +# and DNS lookups to go through the VPN +# (The OpenVPN server machine may need to NAT +# or bridge the TUN/TAP interface to the internet +# in order for this to work properly). +;push "redirect-gateway def1 bypass-dhcp" + +# Certain Windows-specific network settings +# can be pushed to clients, such as DNS +# or WINS server addresses. CAVEAT: +# http://openvpn.net/faq.html#dhcpcaveats +# The addresses below refer to the public +# DNS servers provided by opendns.com. +;push "dhcp-option DNS 208.67.222.222" +;push "dhcp-option DNS 208.67.220.220" + +# Uncomment this directive to allow different +# clients to be able to "see" each other. +# By default, clients will only see the server. +# To force clients to only see the server, you +# will also need to appropriately firewall the +# server's TUN/TAP interface. +;client-to-client + +# Uncomment this directive if multiple clients +# might connect with the same certificate/key +# files or common names. This is recommended +# only for testing purposes. For production use, +# each client should have its own certificate/key +# pair. +# +# IF YOU HAVE NOT GENERATED INDIVIDUAL +# CERTIFICATE/KEY PAIRS FOR EACH CLIENT, +# EACH HAVING ITS OWN UNIQUE "COMMON NAME", +# UNCOMMENT THIS LINE OUT. +;duplicate-cn + +# The keepalive directive causes ping-like +# messages to be sent back and forth over +# the link so that each side knows when +# the other side has gone down. +# Ping every 10 seconds, assume that remote +# peer is down if no ping received during +# a 120 second time period. +keepalive 10 120 + +# For extra security beyond that provided +# by SSL/TLS, create an "HMAC firewall" +# to help block DoS attacks and UDP port flooding. +# +# Generate with: +# openvpn --genkey --secret ta.key +# +# The server and each client must have +# a copy of this key. +# The second parameter should be '0' +# on the server and '1' on the clients. +;tls-auth ta.key 0 # This file is secret + +# Select a cryptographic cipher. +# This config item must be copied to +# the client config file as well. +;cipher BF-CBC # Blowfish (default) +;cipher AES-128-CBC # AES +;cipher DES-EDE3-CBC # Triple-DES + +# Enable compression on the VPN link. +# If you enable it here, you must also +# enable it in the client config file. +comp-lzo + +# The maximum number of concurrently connected +# clients we want to allow. +;max-clients 100 + +# It's a good idea to reduce the OpenVPN +# daemon's privileges after initialization. +# +# You can uncomment this out on +# non-Windows systems. +;user nobody +;group nobody + +# The persist options will try to avoid +# accessing certain resources on restart +# that may no longer be accessible because +# of the privilege downgrade. +persist-key +persist-tun + +# Output a short status file showing +# current connections, truncated +# and rewritten every minute. +status openvpn-status.log + +# By default, log messages will go to the syslog (or +# on Windows, if running as a service, they will go to +# the "\Program Files\OpenVPN\log" directory). +# Use log or log-append to override this default. +# "log" will truncate the log file on OpenVPN startup, +# while "log-append" will append to it. Use one +# or the other (but not both). +;log openvpn.log +;log-append openvpn.log + +# Set the appropriate level of log +# file verbosity. +# +# 0 is silent, except for fatal errors +# 4 is reasonable for general usage +# 5 and 6 can help to debug connection problems +# 9 is extremely verbose +verb 3 + +# Silence repeating messages. At most 20 +# sequential messages of the same message +# category will be output to the log. +;mute 20 diff --git a/app/openvpn/sample/sample-config-files/static-home.conf b/app/openvpn/sample/sample-config-files/static-home.conf new file mode 100644 index 00000000..c9666874 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/static-home.conf @@ -0,0 +1,72 @@ +# +# Sample OpenVPN configuration file for +# home using a pre-shared static key. +# +# '#' or ';' may be used to delimit comments. + +# Use a dynamic tun device. +# For Linux 2.2 or non-Linux OSes, +# you may want to use an explicit +# unit number such as "tun1". +# OpenVPN also supports virtual +# ethernet "tap" devices. +dev tun + +# Our OpenVPN peer is the office gateway. +remote 1.2.3.4 + +# 10.1.0.2 is our local VPN endpoint (home). +# 10.1.0.1 is our remote VPN endpoint (office). +ifconfig 10.1.0.2 10.1.0.1 + +# Our up script will establish routes +# once the VPN is alive. +up ./home.up + +# Our pre-shared static key +secret static.key + +# OpenVPN 2.0 uses UDP port 1194 by default +# (official port assignment by iana.org 11/04). +# OpenVPN 1.x uses UDP port 5000 by default. +# Each OpenVPN tunnel must use +# a different port number. +# lport or rport can be used +# to denote different ports +# for local and remote. +; port 1194 + +# Downgrade UID and GID to +# "nobody" after initialization +# for extra security. +; user nobody +; group nobody + +# If you built OpenVPN with +# LZO compression, uncomment +# out the following line. +; comp-lzo + +# Send a UDP ping to remote once +# every 15 seconds to keep +# stateful firewall connection +# alive. Uncomment this +# out if you are using a stateful +# firewall. +; ping 15 + +# Uncomment this section for a more reliable detection when a system +# loses its connection. For example, dial-ups or laptops that +# travel to other locations. +; ping 15 +; ping-restart 45 +; ping-timer-rem +; persist-tun +; persist-key + +# Verbosity level. +# 0 -- quiet except for fatal errors. +# 1 -- mostly quiet, but display non-fatal network errors. +# 3 -- medium output, good for normal operation. +# 9 -- verbose, good for troubleshooting +verb 3 diff --git a/app/openvpn/sample/sample-config-files/static-office.conf b/app/openvpn/sample/sample-config-files/static-office.conf new file mode 100644 index 00000000..68030cc9 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/static-office.conf @@ -0,0 +1,69 @@ +# +# Sample OpenVPN configuration file for +# office using a pre-shared static key. +# +# '#' or ';' may be used to delimit comments. + +# Use a dynamic tun device. +# For Linux 2.2 or non-Linux OSes, +# you may want to use an explicit +# unit number such as "tun1". +# OpenVPN also supports virtual +# ethernet "tap" devices. +dev tun + +# 10.1.0.1 is our local VPN endpoint (office). +# 10.1.0.2 is our remote VPN endpoint (home). +ifconfig 10.1.0.1 10.1.0.2 + +# Our up script will establish routes +# once the VPN is alive. +up ./office.up + +# Our pre-shared static key +secret static.key + +# OpenVPN 2.0 uses UDP port 1194 by default +# (official port assignment by iana.org 11/04). +# OpenVPN 1.x uses UDP port 5000 by default. +# Each OpenVPN tunnel must use +# a different port number. +# lport or rport can be used +# to denote different ports +# for local and remote. +; port 1194 + +# Downgrade UID and GID to +# "nobody" after initialization +# for extra security. +; user nobody +; group nobody + +# If you built OpenVPN with +# LZO compression, uncomment +# out the following line. +; comp-lzo + +# Send a UDP ping to remote once +# every 15 seconds to keep +# stateful firewall connection +# alive. Uncomment this +# out if you are using a stateful +# firewall. +; ping 15 + +# Uncomment this section for a more reliable detection when a system +# loses its connection. For example, dial-ups or laptops that +# travel to other locations. +; ping 15 +; ping-restart 45 +; ping-timer-rem +; persist-tun +; persist-key + +# Verbosity level. +# 0 -- quiet except for fatal errors. +# 1 -- mostly quiet, but display non-fatal network errors. +# 3 -- medium output, good for normal operation. +# 9 -- verbose, good for troubleshooting +verb 3 diff --git a/app/openvpn/sample/sample-config-files/tls-home.conf b/app/openvpn/sample/sample-config-files/tls-home.conf new file mode 100644 index 00000000..daa4ea1e --- /dev/null +++ b/app/openvpn/sample/sample-config-files/tls-home.conf @@ -0,0 +1,83 @@ +# +# Sample OpenVPN configuration file for +# home using SSL/TLS mode and RSA certificates/keys. +# +# '#' or ';' may be used to delimit comments. + +# Use a dynamic tun device. +# For Linux 2.2 or non-Linux OSes, +# you may want to use an explicit +# unit number such as "tun1". +# OpenVPN also supports virtual +# ethernet "tap" devices. +dev tun + +# Our OpenVPN peer is the office gateway. +remote 1.2.3.4 + +# 10.1.0.2 is our local VPN endpoint (home). +# 10.1.0.1 is our remote VPN endpoint (office). +ifconfig 10.1.0.2 10.1.0.1 + +# Our up script will establish routes +# once the VPN is alive. +up ./home.up + +# In SSL/TLS key exchange, Office will +# assume server role and Home +# will assume client role. +tls-client + +# Certificate Authority file +ca my-ca.crt + +# Our certificate/public key +cert home.crt + +# Our private key +key home.key + +# OpenVPN 2.0 uses UDP port 1194 by default +# (official port assignment by iana.org 11/04). +# OpenVPN 1.x uses UDP port 5000 by default. +# Each OpenVPN tunnel must use +# a different port number. +# lport or rport can be used +# to denote different ports +# for local and remote. +; port 1194 + +# Downgrade UID and GID to +# "nobody" after initialization +# for extra security. +; user nobody +; group nobody + +# If you built OpenVPN with +# LZO compression, uncomment +# out the following line. +; comp-lzo + +# Send a UDP ping to remote once +# every 15 seconds to keep +# stateful firewall connection +# alive. Uncomment this +# out if you are using a stateful +# firewall. +; ping 15 + +# Uncomment this section for a more reliable detection when a system +# loses its connection. For example, dial-ups or laptops that +# travel to other locations. +; ping 15 +; ping-restart 45 +; ping-timer-rem +; persist-tun +; persist-key + +# Verbosity level. +# 0 -- quiet except for fatal errors. +# 1 -- mostly quiet, but display non-fatal network errors. +# 3 -- medium output, good for normal operation. +# 9 -- verbose, good for troubleshooting +verb 3 diff --git a/app/openvpn/sample/sample-config-files/tls-office.conf b/app/openvpn/sample/sample-config-files/tls-office.conf new file mode 100644 index 00000000..f790f469 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/tls-office.conf @@ -0,0 +1,83 @@ +# +# Sample OpenVPN configuration file for +# office using SSL/TLS mode and RSA certificates/keys. +# +# '#' or ';' may be used to delimit comments. + +# Use a dynamic tun device. +# For Linux 2.2 or non-Linux OSes, +# you may want to use an explicit +# unit number such as "tun1". +# OpenVPN also supports virtual +# ethernet "tap" devices. +dev tun + +# 10.1.0.1 is our local VPN endpoint (office). +# 10.1.0.2 is our remote VPN endpoint (home). +ifconfig 10.1.0.1 10.1.0.2 + +# Our up script will establish routes +# once the VPN is alive. +up ./office.up + +# In SSL/TLS key exchange, Office will +# assume server role and Home +# will assume client role. +tls-server + +# Diffie-Hellman Parameters (tls-server only) +dh dh1024.pem + +# Certificate Authority file +ca my-ca.crt + +# Our certificate/public key +cert office.crt + +# Our private key +key office.key + +# OpenVPN 2.0 uses UDP port 1194 by default +# (official port assignment by iana.org 11/04). +# OpenVPN 1.x uses UDP port 5000 by default. +# Each OpenVPN tunnel must use +# a different port number. +# lport or rport can be used +# to denote different ports +# for local and remote. +; port 1194 + +# Downgrade UID and GID to +# "nobody" after initialization +# for extra security. +; user nobody +; group nobody + +# If you built OpenVPN with +# LZO compression, uncomment +# out the following line. +; comp-lzo + +# Send a UDP ping to remote once +# every 15 seconds to keep +# stateful firewall connection +# alive. Uncomment this +# out if you are using a stateful +# firewall. +; ping 15 + +# Uncomment this section for a more reliable detection when a system +# loses its connection. For example, dial-ups or laptops that +# travel to other locations. +; ping 15 +; ping-restart 45 +; ping-timer-rem +; persist-tun +; persist-key + +# Verbosity level. +# 0 -- quiet except for fatal errors. +# 1 -- mostly quiet, but display non-fatal network errors. +# 3 -- medium output, good for normal operation. +# 9 -- verbose, good for troubleshooting +verb 3 diff --git a/app/openvpn/sample/sample-config-files/xinetd-client-config b/app/openvpn/sample/sample-config-files/xinetd-client-config new file mode 100644 index 00000000..03c5c1fa --- /dev/null +++ b/app/openvpn/sample/sample-config-files/xinetd-client-config @@ -0,0 +1,11 @@ +# This OpenVPN config file +# is the client side counterpart +# of xinetd-server-config + +dev tun +ifconfig 10.4.0.1 10.4.0.2 +remote my-server +port 1194 +user nobody +secret /root/openvpn/key +inactive 600 diff --git a/app/openvpn/sample/sample-config-files/xinetd-server-config b/app/openvpn/sample/sample-config-files/xinetd-server-config new file mode 100644 index 00000000..803a6f8f --- /dev/null +++ b/app/openvpn/sample/sample-config-files/xinetd-server-config @@ -0,0 +1,25 @@ +# An xinetd configuration file for OpenVPN. +# +# This file should be renamed to openvpn or something suitably +# descriptive and copied to the /etc/xinetd.d directory. +# xinetd can then be made aware of this file by restarting +# it or sending it a SIGHUP signal. +# +# For each potential incoming client, create a separate version +# of this configuration file on a unique port number. Also note +# that the key file and ifconfig endpoints should be unique for +# each client. This configuration assumes that the OpenVPN +# executable and key live in /root/openvpn. Change this to fit +# your environment. + +service openvpn_1 +{ + type = UNLISTED + port = 1194 + socket_type = dgram + protocol = udp + wait = yes + user = root + server = /root/openvpn/openvpn + server_args = --inetd --dev tun --ifconfig 10.4.0.2 10.4.0.1 --secret /root/openvpn/key --inactive 600 --user nobody +} -- cgit v1.2.3 From 3c3421afd8f74a3aa8d1011de07a8c18f9549210 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Parm=C3=A9nides=20GV?= Date: Tue, 8 Apr 2014 12:04:17 +0200 Subject: Rename app->bitmask_android This way, gradle commands generate apks correctly named. --- app/openvpn/sample/sample-config-files/README | 6 - app/openvpn/sample/sample-config-files/client.conf | 123 --------- app/openvpn/sample/sample-config-files/firewall.sh | 108 -------- app/openvpn/sample/sample-config-files/home.up | 2 - .../sample/sample-config-files/loopback-client | 25 -- .../sample/sample-config-files/loopback-server | 26 -- app/openvpn/sample/sample-config-files/office.up | 2 - .../sample/sample-config-files/openvpn-shutdown.sh | 5 - .../sample/sample-config-files/openvpn-startup.sh | 34 --- app/openvpn/sample/sample-config-files/server.conf | 299 --------------------- .../sample/sample-config-files/static-home.conf | 72 ----- .../sample/sample-config-files/static-office.conf | 69 ----- .../sample/sample-config-files/tls-home.conf | 83 ------ .../sample/sample-config-files/tls-office.conf | 83 ------ .../sample-config-files/xinetd-client-config | 11 - .../sample-config-files/xinetd-server-config | 25 -- 16 files changed, 973 deletions(-) delete mode 100644 app/openvpn/sample/sample-config-files/README delete mode 100644 app/openvpn/sample/sample-config-files/client.conf delete mode 100755 app/openvpn/sample/sample-config-files/firewall.sh delete mode 100755 app/openvpn/sample/sample-config-files/home.up delete mode 100644 app/openvpn/sample/sample-config-files/loopback-client delete mode 100644 app/openvpn/sample/sample-config-files/loopback-server delete mode 100755 app/openvpn/sample/sample-config-files/office.up delete mode 100755 app/openvpn/sample/sample-config-files/openvpn-shutdown.sh delete mode 100755 app/openvpn/sample/sample-config-files/openvpn-startup.sh delete mode 100644 app/openvpn/sample/sample-config-files/server.conf delete mode 100644 app/openvpn/sample/sample-config-files/static-home.conf delete mode 100644 app/openvpn/sample/sample-config-files/static-office.conf delete mode 100644 app/openvpn/sample/sample-config-files/tls-home.conf delete mode 100644 app/openvpn/sample/sample-config-files/tls-office.conf delete mode 100644 app/openvpn/sample/sample-config-files/xinetd-client-config delete mode 100644 app/openvpn/sample/sample-config-files/xinetd-server-config (limited to 'app/openvpn/sample/sample-config-files') diff --git a/app/openvpn/sample/sample-config-files/README b/app/openvpn/sample/sample-config-files/README deleted file mode 100644 index d53ac79a..00000000 --- a/app/openvpn/sample/sample-config-files/README +++ /dev/null @@ -1,6 +0,0 @@ -Sample OpenVPN Configuration Files. - -These files are part of the OpenVPN HOWTO -which is located at: - -http://openvpn.net/howto.html diff --git a/app/openvpn/sample/sample-config-files/client.conf b/app/openvpn/sample/sample-config-files/client.conf deleted file mode 100644 index 58b2038b..00000000 --- a/app/openvpn/sample/sample-config-files/client.conf +++ /dev/null @@ -1,123 +0,0 @@ -############################################## -# Sample client-side OpenVPN 2.0 config file # -# for connecting to multi-client server. # -# # -# This configuration can be used by multiple # -# clients, however each client should have # -# its own cert and key files. # -# # -# On Windows, you might want to rename this # -# file so it has a .ovpn extension # -############################################## - -# Specify that we are a client and that we -# will be pulling certain config file directives -# from the server. -client - -# Use the same setting as you are using on -# the server. -# On most systems, the VPN will not function -# unless you partially or fully disable -# the firewall for the TUN/TAP interface. -;dev tap -dev tun - -# Windows needs the TAP-Win32 adapter name -# from the Network Connections panel -# if you have more than one. On XP SP2, -# you may need to disable the firewall -# for the TAP adapter. -;dev-node MyTap - -# Are we connecting to a TCP or -# UDP server? Use the same setting as -# on the server. -;proto tcp -proto udp - -# The hostname/IP and port of the server. -# You can have multiple remote entries -# to load balance between the servers. -remote my-server-1 1194 -;remote my-server-2 1194 - -# Choose a random host from the remote -# list for load-balancing. Otherwise -# try hosts in the order specified. -;remote-random - -# Keep trying indefinitely to resolve the -# host name of the OpenVPN server. Very useful -# on machines which are not permanently connected -# to the internet such as laptops. -resolv-retry infinite - -# Most clients don't need to bind to -# a specific local port number. -nobind - -# Downgrade privileges after initialization (non-Windows only) -;user nobody -;group nobody - -# Try to preserve some state across restarts. -persist-key -persist-tun - -# If you are connecting through an -# HTTP proxy to reach the actual OpenVPN -# server, put the proxy server/IP and -# port number here. See the man page -# if your proxy server requires -# authentication. -;http-proxy-retry # retry on connection failures -;http-proxy [proxy server] [proxy port #] - -# Wireless networks often produce a lot -# of duplicate packets. Set this flag -# to silence duplicate packet warnings. -;mute-replay-warnings - -# SSL/TLS parms. -# See the server config file for more -# description. It's best to use -# a separate .crt/.key file pair -# for each client. A single ca -# file can be used for all clients. -ca ca.crt -cert client.crt -key client.key - -# Verify server certificate by checking -# that the certicate has the nsCertType -# field set to "server". This is an -# important precaution to protect against -# a potential attack discussed here: -# http://openvpn.net/howto.html#mitm -# -# To use this feature, you will need to generate -# your server certificates with the nsCertType -# field set to "server". The build-key-server -# script in the easy-rsa folder will do this. -ns-cert-type server - -# If a tls-auth key is used on the server -# then every client must also have the key. -;tls-auth ta.key 1 - -# Select a cryptographic cipher. -# If the cipher option is used on the server -# then you must also specify it here. -;cipher x - -# Enable compression on the VPN link. -# Don't enable this unless it is also -# enabled in the server config file. -comp-lzo - -# Set log file verbosity. -verb 3 - -# Silence repeating messages -;mute 20 diff --git a/app/openvpn/sample/sample-config-files/firewall.sh b/app/openvpn/sample/sample-config-files/firewall.sh deleted file mode 100755 index 19d75ee9..00000000 --- a/app/openvpn/sample/sample-config-files/firewall.sh +++ /dev/null @@ -1,108 +0,0 @@ -#!/bin/sh - -# A Sample OpenVPN-aware firewall. - -# eth0 is connected to the internet. -# eth1 is connected to a private subnet. - -# Change this subnet to correspond to your private -# ethernet subnet. Home will use HOME_NET/24 and -# Office will use OFFICE_NET/24. -PRIVATE=10.0.0.0/24 - -# Loopback address -LOOP=127.0.0.1 - -# Delete old iptables rules -# and temporarily block all traffic. -iptables -P OUTPUT DROP -iptables -P INPUT DROP -iptables -P FORWARD DROP -iptables -F - -# Set default policies -iptables -P OUTPUT ACCEPT -iptables -P INPUT DROP -iptables -P FORWARD DROP - -# Prevent external packets from using loopback addr -iptables -A INPUT -i eth0 -s $LOOP -j DROP -iptables -A FORWARD -i eth0 -s $LOOP -j DROP -iptables -A INPUT -i eth0 -d $LOOP -j DROP -iptables -A FORWARD -i eth0 -d $LOOP -j DROP - -# Anything coming from the Internet should have a real Internet address -iptables -A FORWARD -i eth0 -s 192.168.0.0/16 -j DROP -iptables -A FORWARD -i eth0 -s 172.16.0.0/12 -j DROP -iptables -A FORWARD -i eth0 -s 10.0.0.0/8 -j DROP -iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DROP -iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP -iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP - -# Block outgoing NetBios (if you have windows machines running -# on the private subnet). This will not affect any NetBios -# traffic that flows over the VPN tunnel, but it will stop -# local windows machines from broadcasting themselves to -# the internet. -iptables -A FORWARD -p tcp --sport 137:139 -o eth0 -j DROP -iptables -A FORWARD -p udp --sport 137:139 -o eth0 -j DROP -iptables -A OUTPUT -p tcp --sport 137:139 -o eth0 -j DROP -iptables -A OUTPUT -p udp --sport 137:139 -o eth0 -j DROP - -# Check source address validity on packets going out to internet -iptables -A FORWARD -s ! $PRIVATE -i eth1 -j DROP - -# Allow local loopback -iptables -A INPUT -s $LOOP -j ACCEPT -iptables -A INPUT -d $LOOP -j ACCEPT - -# Allow incoming pings (can be disabled) -iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT - -# Allow services such as www and ssh (can be disabled) -iptables -A INPUT -p tcp --dport http -j ACCEPT -iptables -A INPUT -p tcp --dport ssh -j ACCEPT - -# Allow incoming OpenVPN packets -# Duplicate the line below for each -# OpenVPN tunnel, changing --dport n -# to match the OpenVPN UDP port. -# -# In OpenVPN, the port number is -# controlled by the --port n option. -# If you put this option in the config -# file, you can remove the leading '--' -# -# If you taking the stateful firewall -# approach (see the OpenVPN HOWTO), -# then comment out the line below. - -iptables -A INPUT -p udp --dport 1194 -j ACCEPT - -# Allow packets from TUN/TAP devices. -# When OpenVPN is run in a secure mode, -# it will authenticate packets prior -# to their arriving on a tun or tap -# interface. Therefore, it is not -# necessary to add any filters here, -# unless you want to restrict the -# type of packets which can flow over -# the tunnel. - -iptables -A INPUT -i tun+ -j ACCEPT -iptables -A FORWARD -i tun+ -j ACCEPT -iptables -A INPUT -i tap+ -j ACCEPT -iptables -A FORWARD -i tap+ -j ACCEPT - -# Allow packets from private subnets -iptables -A INPUT -i eth1 -j ACCEPT -iptables -A FORWARD -i eth1 -j ACCEPT - -# Keep state of connections from local machine and private subnets -iptables -A OUTPUT -m state --state NEW -o eth0 -j ACCEPT -iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -iptables -A FORWARD -m state --state NEW -o eth0 -j ACCEPT -iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT - -# Masquerade local subnet -iptables -t nat -A POSTROUTING -s $PRIVATE -o eth0 -j MASQUERADE diff --git a/app/openvpn/sample/sample-config-files/home.up b/app/openvpn/sample/sample-config-files/home.up deleted file mode 100755 index 9c347cc5..00000000 --- a/app/openvpn/sample/sample-config-files/home.up +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -route add -net 10.0.0.0 netmask 255.255.255.0 gw $5 diff --git a/app/openvpn/sample/sample-config-files/loopback-client b/app/openvpn/sample/sample-config-files/loopback-client deleted file mode 100644 index d7f59e69..00000000 --- a/app/openvpn/sample/sample-config-files/loopback-client +++ /dev/null @@ -1,25 +0,0 @@ -# Perform a TLS loopback test -- client side. -# -# This test performs a TLS negotiation once every 10 seconds, -# and will terminate after 2 minutes. -# -# From the root directory of the OpenVPN distribution, -# after openvpn has been built, run: -# -# ./openvpn --config sample-config-files/loopback-client (In one window) -# ./openvpn --config sample-config-files/loopback-server (Simultaneously in another window) - -rport 16000 -lport 16001 -remote localhost -local localhost -dev null -verb 3 -reneg-sec 10 -tls-client -ca sample-keys/ca.crt -key sample-keys/client.key -cert sample-keys/client.crt -cipher DES-EDE3-CBC -ping 1 -inactive 120 10000000 diff --git a/app/openvpn/sample/sample-config-files/loopback-server b/app/openvpn/sample/sample-config-files/loopback-server deleted file mode 100644 index 9d21bcec..00000000 --- a/app/openvpn/sample/sample-config-files/loopback-server +++ /dev/null @@ -1,26 +0,0 @@ -# Perform a TLS loopback test -- server side. -# -# This test performs a TLS negotiation once every 10 seconds, -# and will terminate after 2 minutes. -# -# From the root directory of the OpenVPN distribution, -# after openvpn has been built, run: -# -# ./openvpn --config sample-config-files/loopback-client (In one window) -# ./openvpn --config sample-config-files/loopback-server (Simultaneously in another window) - -rport 16001 -lport 16000 -remote localhost -local localhost -dev null -verb 3 -reneg-sec 10 -tls-server -dh sample-keys/dh1024.pem -ca sample-keys/ca.crt -key sample-keys/server.key -cert sample-keys/server.crt -cipher DES-EDE3-CBC -ping 1 -inactive 120 10000000 diff --git a/app/openvpn/sample/sample-config-files/office.up b/app/openvpn/sample/sample-config-files/office.up deleted file mode 100755 index 74a71a33..00000000 --- a/app/openvpn/sample/sample-config-files/office.up +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -route add -net 10.0.1.0 netmask 255.255.255.0 gw $5 diff --git a/app/openvpn/sample/sample-config-files/openvpn-shutdown.sh b/app/openvpn/sample/sample-config-files/openvpn-shutdown.sh deleted file mode 100755 index 8ed2d1d5..00000000 --- a/app/openvpn/sample/sample-config-files/openvpn-shutdown.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -# stop all openvpn processes - -killall -TERM openvpn diff --git a/app/openvpn/sample/sample-config-files/openvpn-startup.sh b/app/openvpn/sample/sample-config-files/openvpn-startup.sh deleted file mode 100755 index 0ee006bc..00000000 --- a/app/openvpn/sample/sample-config-files/openvpn-startup.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh - -# A sample OpenVPN startup script -# for Linux. - -# openvpn config file directory -dir=/etc/openvpn - -# load the firewall -$dir/firewall.sh - -# load TUN/TAP kernel module -modprobe tun - -# enable IP forwarding -echo 1 > /proc/sys/net/ipv4/ip_forward - -# Invoke openvpn for each VPN tunnel -# in daemon mode. Alternatively, -# you could remove "--daemon" from -# the command line and add "daemon" -# to the config file. -# -# Each tunnel should run on a separate -# UDP port. Use the "port" option -# to control this. Like all of -# OpenVPN's options, you can -# specify "--port 8000" on the command -# line or "port 8000" in the config -# file. - -openvpn --cd $dir --daemon --config vpn1.conf -openvpn --cd $dir --daemon --config vpn2.conf -openvpn --cd $dir --daemon --config vpn2.conf diff --git a/app/openvpn/sample/sample-config-files/server.conf b/app/openvpn/sample/sample-config-files/server.conf deleted file mode 100644 index f483b6bb..00000000 --- a/app/openvpn/sample/sample-config-files/server.conf +++ /dev/null @@ -1,299 +0,0 @@ -################################################# -# Sample OpenVPN 2.0 config file for # -# multi-client server. # -# # -# This file is for the server side # -# of a many-clients <-> one-server # -# OpenVPN configuration. # -# # -# OpenVPN also supports # -# single-machine <-> single-machine # -# configurations (See the Examples page # -# on the web site for more info). # -# # -# This config should work on Windows # -# or Linux/BSD systems. Remember on # -# Windows to quote pathnames and use # -# double backslashes, e.g.: # -# "C:\\Program Files\\OpenVPN\\config\\foo.key" # -# # -# Comments are preceded with '#' or ';' # -################################################# - -# Which local IP address should OpenVPN -# listen on? (optional) -;local a.b.c.d - -# Which TCP/UDP port should OpenVPN listen on? -# If you want to run multiple OpenVPN instances -# on the same machine, use a different port -# number for each one. You will need to -# open up this port on your firewall. -port 1194 - -# TCP or UDP server? -;proto tcp -proto udp - -# "dev tun" will create a routed IP tunnel, -# "dev tap" will create an ethernet tunnel. -# Use "dev tap0" if you are ethernet bridging -# and have precreated a tap0 virtual interface -# and bridged it with your ethernet interface. -# If you want to control access policies -# over the VPN, you must create firewall -# rules for the the TUN/TAP interface. -# On non-Windows systems, you can give -# an explicit unit number, such as tun0. -# On Windows, use "dev-node" for this. -# On most systems, the VPN will not function -# unless you partially or fully disable -# the firewall for the TUN/TAP interface. -;dev tap -dev tun - -# Windows needs the TAP-Win32 adapter name -# from the Network Connections panel if you -# have more than one. On XP SP2 or higher, -# you may need to selectively disable the -# Windows firewall for the TAP adapter. -# Non-Windows systems usually don't need this. -;dev-node MyTap - -# SSL/TLS root certificate (ca), certificate -# (cert), and private key (key). Each client -# and the server must have their own cert and -# key file. The server and all clients will -# use the same ca file. -# -# See the "easy-rsa" directory for a series -# of scripts for generating RSA certificates -# and private keys. Remember to use -# a unique Common Name for the server -# and each of the client certificates. -# -# Any X509 key management system can be used. -# OpenVPN can also use a PKCS #12 formatted key file -# (see "pkcs12" directive in man page). -ca ca.crt -cert server.crt -key server.key # This file should be kept secret - -# Diffie hellman parameters. -# Generate your own with: -# openssl dhparam -out dh1024.pem 1024 -# Substitute 2048 for 1024 if you are using -# 2048 bit keys. -dh dh1024.pem - -# Configure server mode and supply a VPN subnet -# for OpenVPN to draw client addresses from. -# The server will take 10.8.0.1 for itself, -# the rest will be made available to clients. -# Each client will be able to reach the server -# on 10.8.0.1. Comment this line out if you are -# ethernet bridging. See the man page for more info. -server 10.8.0.0 255.255.255.0 - -# Maintain a record of client <-> virtual IP address -# associations in this file. If OpenVPN goes down or -# is restarted, reconnecting clients can be assigned -# the same virtual IP address from the pool that was -# previously assigned. -ifconfig-pool-persist ipp.txt - -# Configure server mode for ethernet bridging. -# You must first use your OS's bridging capability -# to bridge the TAP interface with the ethernet -# NIC interface. Then you must manually set the -# IP/netmask on the bridge interface, here we -# assume 10.8.0.4/255.255.255.0. Finally we -# must set aside an IP range in this subnet -# (start=10.8.0.50 end=10.8.0.100) to allocate -# to connecting clients. Leave this line commented -# out unless you are ethernet bridging. -;server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100 - -# Configure server mode for ethernet bridging -# using a DHCP-proxy, where clients talk -# to the OpenVPN server-side DHCP server -# to receive their IP address allocation -# and DNS server addresses. You must first use -# your OS's bridging capability to bridge the TAP -# interface with the ethernet NIC interface. -# Note: this mode only works on clients (such as -# Windows), where the client-side TAP adapter is -# bound to a DHCP client. -;server-bridge - -# Push routes to the client to allow it -# to reach other private subnets behind -# the server. Remember that these -# private subnets will also need -# to know to route the OpenVPN client -# address pool (10.8.0.0/255.255.255.0) -# back to the OpenVPN server. -;push "route 192.168.10.0 255.255.255.0" -;push "route 192.168.20.0 255.255.255.0" - -# To assign specific IP addresses to specific -# clients or if a connecting client has a private -# subnet behind it that should also have VPN access, -# use the subdirectory "ccd" for client-specific -# configuration files (see man page for more info). - -# EXAMPLE: Suppose the client -# having the certificate common name "Thelonious" -# also has a small subnet behind his connecting -# machine, such as 192.168.40.128/255.255.255.248. -# First, uncomment out these lines: -;client-config-dir ccd -;route 192.168.40.128 255.255.255.248 -# Then create a file ccd/Thelonious with this line: -# iroute 192.168.40.128 255.255.255.248 -# This will allow Thelonious' private subnet to -# access the VPN. This example will only work -# if you are routing, not bridging, i.e. you are -# using "dev tun" and "server" directives. - -# EXAMPLE: Suppose you want to give -# Thelonious a fixed VPN IP address of 10.9.0.1. -# First uncomment out these lines: -;client-config-dir ccd -;route 10.9.0.0 255.255.255.252 -# Then add this line to ccd/Thelonious: -# ifconfig-push 10.9.0.1 10.9.0.2 - -# Suppose that you want to enable different -# firewall access policies for different groups -# of clients. There are two methods: -# (1) Run multiple OpenVPN daemons, one for each -# group, and firewall the TUN/TAP interface -# for each group/daemon appropriately. -# (2) (Advanced) Create a script to dynamically -# modify the firewall in response to access -# from different clients. See man -# page for more info on learn-address script. -;learn-address ./script - -# If enabled, this directive will configure -# all clients to redirect their default -# network gateway through the VPN, causing -# all IP traffic such as web browsing and -# and DNS lookups to go through the VPN -# (The OpenVPN server machine may need to NAT -# or bridge the TUN/TAP interface to the internet -# in order for this to work properly). -;push "redirect-gateway def1 bypass-dhcp" - -# Certain Windows-specific network settings -# can be pushed to clients, such as DNS -# or WINS server addresses. CAVEAT: -# http://openvpn.net/faq.html#dhcpcaveats -# The addresses below refer to the public -# DNS servers provided by opendns.com. -;push "dhcp-option DNS 208.67.222.222" -;push "dhcp-option DNS 208.67.220.220" - -# Uncomment this directive to allow different -# clients to be able to "see" each other. -# By default, clients will only see the server. -# To force clients to only see the server, you -# will also need to appropriately firewall the -# server's TUN/TAP interface. -;client-to-client - -# Uncomment this directive if multiple clients -# might connect with the same certificate/key -# files or common names. This is recommended -# only for testing purposes. For production use, -# each client should have its own certificate/key -# pair. -# -# IF YOU HAVE NOT GENERATED INDIVIDUAL -# CERTIFICATE/KEY PAIRS FOR EACH CLIENT, -# EACH HAVING ITS OWN UNIQUE "COMMON NAME", -# UNCOMMENT THIS LINE OUT. -;duplicate-cn - -# The keepalive directive causes ping-like -# messages to be sent back and forth over -# the link so that each side knows when -# the other side has gone down. -# Ping every 10 seconds, assume that remote -# peer is down if no ping received during -# a 120 second time period. -keepalive 10 120 - -# For extra security beyond that provided -# by SSL/TLS, create an "HMAC firewall" -# to help block DoS attacks and UDP port flooding. -# -# Generate with: -# openvpn --genkey --secret ta.key -# -# The server and each client must have -# a copy of this key. -# The second parameter should be '0' -# on the server and '1' on the clients. -;tls-auth ta.key 0 # This file is secret - -# Select a cryptographic cipher. -# This config item must be copied to -# the client config file as well. -;cipher BF-CBC # Blowfish (default) -;cipher AES-128-CBC # AES -;cipher DES-EDE3-CBC # Triple-DES - -# Enable compression on the VPN link. -# If you enable it here, you must also -# enable it in the client config file. -comp-lzo - -# The maximum number of concurrently connected -# clients we want to allow. -;max-clients 100 - -# It's a good idea to reduce the OpenVPN -# daemon's privileges after initialization. -# -# You can uncomment this out on -# non-Windows systems. -;user nobody -;group nobody - -# The persist options will try to avoid -# accessing certain resources on restart -# that may no longer be accessible because -# of the privilege downgrade. -persist-key -persist-tun - -# Output a short status file showing -# current connections, truncated -# and rewritten every minute. -status openvpn-status.log - -# By default, log messages will go to the syslog (or -# on Windows, if running as a service, they will go to -# the "\Program Files\OpenVPN\log" directory). -# Use log or log-append to override this default. -# "log" will truncate the log file on OpenVPN startup, -# while "log-append" will append to it. Use one -# or the other (but not both). -;log openvpn.log -;log-append openvpn.log - -# Set the appropriate level of log -# file verbosity. -# -# 0 is silent, except for fatal errors -# 4 is reasonable for general usage -# 5 and 6 can help to debug connection problems -# 9 is extremely verbose -verb 3 - -# Silence repeating messages. At most 20 -# sequential messages of the same message -# category will be output to the log. -;mute 20 diff --git a/app/openvpn/sample/sample-config-files/static-home.conf b/app/openvpn/sample/sample-config-files/static-home.conf deleted file mode 100644 index c9666874..00000000 --- a/app/openvpn/sample/sample-config-files/static-home.conf +++ /dev/null @@ -1,72 +0,0 @@ -# -# Sample OpenVPN configuration file for -# home using a pre-shared static key. -# -# '#' or ';' may be used to delimit comments. - -# Use a dynamic tun device. -# For Linux 2.2 or non-Linux OSes, -# you may want to use an explicit -# unit number such as "tun1". -# OpenVPN also supports virtual -# ethernet "tap" devices. -dev tun - -# Our OpenVPN peer is the office gateway. -remote 1.2.3.4 - -# 10.1.0.2 is our local VPN endpoint (home). -# 10.1.0.1 is our remote VPN endpoint (office). -ifconfig 10.1.0.2 10.1.0.1 - -# Our up script will establish routes -# once the VPN is alive. -up ./home.up - -# Our pre-shared static key -secret static.key - -# OpenVPN 2.0 uses UDP port 1194 by default -# (official port assignment by iana.org 11/04). -# OpenVPN 1.x uses UDP port 5000 by default. -# Each OpenVPN tunnel must use -# a different port number. -# lport or rport can be used -# to denote different ports -# for local and remote. -; port 1194 - -# Downgrade UID and GID to -# "nobody" after initialization -# for extra security. -; user nobody -; group nobody - -# If you built OpenVPN with -# LZO compression, uncomment -# out the following line. -; comp-lzo - -# Send a UDP ping to remote once -# every 15 seconds to keep -# stateful firewall connection -# alive. Uncomment this -# out if you are using a stateful -# firewall. -; ping 15 - -# Uncomment this section for a more reliable detection when a system -# loses its connection. For example, dial-ups or laptops that -# travel to other locations. -; ping 15 -; ping-restart 45 -; ping-timer-rem -; persist-tun -; persist-key - -# Verbosity level. -# 0 -- quiet except for fatal errors. -# 1 -- mostly quiet, but display non-fatal network errors. -# 3 -- medium output, good for normal operation. -# 9 -- verbose, good for troubleshooting -verb 3 diff --git a/app/openvpn/sample/sample-config-files/static-office.conf b/app/openvpn/sample/sample-config-files/static-office.conf deleted file mode 100644 index 68030cc9..00000000 --- a/app/openvpn/sample/sample-config-files/static-office.conf +++ /dev/null @@ -1,69 +0,0 @@ -# -# Sample OpenVPN configuration file for -# office using a pre-shared static key. -# -# '#' or ';' may be used to delimit comments. - -# Use a dynamic tun device. -# For Linux 2.2 or non-Linux OSes, -# you may want to use an explicit -# unit number such as "tun1". -# OpenVPN also supports virtual -# ethernet "tap" devices. -dev tun - -# 10.1.0.1 is our local VPN endpoint (office). -# 10.1.0.2 is our remote VPN endpoint (home). -ifconfig 10.1.0.1 10.1.0.2 - -# Our up script will establish routes -# once the VPN is alive. -up ./office.up - -# Our pre-shared static key -secret static.key - -# OpenVPN 2.0 uses UDP port 1194 by default -# (official port assignment by iana.org 11/04). -# OpenVPN 1.x uses UDP port 5000 by default. -# Each OpenVPN tunnel must use -# a different port number. -# lport or rport can be used -# to denote different ports -# for local and remote. -; port 1194 - -# Downgrade UID and GID to -# "nobody" after initialization -# for extra security. -; user nobody -; group nobody - -# If you built OpenVPN with -# LZO compression, uncomment -# out the following line. -; comp-lzo - -# Send a UDP ping to remote once -# every 15 seconds to keep -# stateful firewall connection -# alive. Uncomment this -# out if you are using a stateful -# firewall. -; ping 15 - -# Uncomment this section for a more reliable detection when a system -# loses its connection. For example, dial-ups or laptops that -# travel to other locations. -; ping 15 -; ping-restart 45 -; ping-timer-rem -; persist-tun -; persist-key - -# Verbosity level. -# 0 -- quiet except for fatal errors. -# 1 -- mostly quiet, but display non-fatal network errors. -# 3 -- medium output, good for normal operation. -# 9 -- verbose, good for troubleshooting -verb 3 diff --git a/app/openvpn/sample/sample-config-files/tls-home.conf b/app/openvpn/sample/sample-config-files/tls-home.conf deleted file mode 100644 index daa4ea1e..00000000 --- a/app/openvpn/sample/sample-config-files/tls-home.conf +++ /dev/null @@ -1,83 +0,0 @@ -# -# Sample OpenVPN configuration file for -# home using SSL/TLS mode and RSA certificates/keys. -# -# '#' or ';' may be used to delimit comments. - -# Use a dynamic tun device. -# For Linux 2.2 or non-Linux OSes, -# you may want to use an explicit -# unit number such as "tun1". -# OpenVPN also supports virtual -# ethernet "tap" devices. -dev tun - -# Our OpenVPN peer is the office gateway. -remote 1.2.3.4 - -# 10.1.0.2 is our local VPN endpoint (home). -# 10.1.0.1 is our remote VPN endpoint (office). -ifconfig 10.1.0.2 10.1.0.1 - -# Our up script will establish routes -# once the VPN is alive. -up ./home.up - -# In SSL/TLS key exchange, Office will -# assume server role and Home -# will assume client role. -tls-client - -# Certificate Authority file -ca my-ca.crt - -# Our certificate/public key -cert home.crt - -# Our private key -key home.key - -# OpenVPN 2.0 uses UDP port 1194 by default -# (official port assignment by iana.org 11/04). -# OpenVPN 1.x uses UDP port 5000 by default. -# Each OpenVPN tunnel must use -# a different port number. -# lport or rport can be used -# to denote different ports -# for local and remote. -; port 1194 - -# Downgrade UID and GID to -# "nobody" after initialization -# for extra security. -; user nobody -; group nobody - -# If you built OpenVPN with -# LZO compression, uncomment -# out the following line. -; comp-lzo - -# Send a UDP ping to remote once -# every 15 seconds to keep -# stateful firewall connection -# alive. Uncomment this -# out if you are using a stateful -# firewall. -; ping 15 - -# Uncomment this section for a more reliable detection when a system -# loses its connection. For example, dial-ups or laptops that -# travel to other locations. -; ping 15 -; ping-restart 45 -; ping-timer-rem -; persist-tun -; persist-key - -# Verbosity level. -# 0 -- quiet except for fatal errors. -# 1 -- mostly quiet, but display non-fatal network errors. -# 3 -- medium output, good for normal operation. -# 9 -- verbose, good for troubleshooting -verb 3 diff --git a/app/openvpn/sample/sample-config-files/tls-office.conf b/app/openvpn/sample/sample-config-files/tls-office.conf deleted file mode 100644 index f790f469..00000000 --- a/app/openvpn/sample/sample-config-files/tls-office.conf +++ /dev/null @@ -1,83 +0,0 @@ -# -# Sample OpenVPN configuration file for -# office using SSL/TLS mode and RSA certificates/keys. -# -# '#' or ';' may be used to delimit comments. - -# Use a dynamic tun device. -# For Linux 2.2 or non-Linux OSes, -# you may want to use an explicit -# unit number such as "tun1". -# OpenVPN also supports virtual -# ethernet "tap" devices. -dev tun - -# 10.1.0.1 is our local VPN endpoint (office). -# 10.1.0.2 is our remote VPN endpoint (home). -ifconfig 10.1.0.1 10.1.0.2 - -# Our up script will establish routes -# once the VPN is alive. -up ./office.up - -# In SSL/TLS key exchange, Office will -# assume server role and Home -# will assume client role. -tls-server - -# Diffie-Hellman Parameters (tls-server only) -dh dh1024.pem - -# Certificate Authority file -ca my-ca.crt - -# Our certificate/public key -cert office.crt - -# Our private key -key office.key - -# OpenVPN 2.0 uses UDP port 1194 by default -# (official port assignment by iana.org 11/04). -# OpenVPN 1.x uses UDP port 5000 by default. -# Each OpenVPN tunnel must use -# a different port number. -# lport or rport can be used -# to denote different ports -# for local and remote. -; port 1194 - -# Downgrade UID and GID to -# "nobody" after initialization -# for extra security. -; user nobody -; group nobody - -# If you built OpenVPN with -# LZO compression, uncomment -# out the following line. -; comp-lzo - -# Send a UDP ping to remote once -# every 15 seconds to keep -# stateful firewall connection -# alive. Uncomment this -# out if you are using a stateful -# firewall. -; ping 15 - -# Uncomment this section for a more reliable detection when a system -# loses its connection. For example, dial-ups or laptops that -# travel to other locations. -; ping 15 -; ping-restart 45 -; ping-timer-rem -; persist-tun -; persist-key - -# Verbosity level. -# 0 -- quiet except for fatal errors. -# 1 -- mostly quiet, but display non-fatal network errors. -# 3 -- medium output, good for normal operation. -# 9 -- verbose, good for troubleshooting -verb 3 diff --git a/app/openvpn/sample/sample-config-files/xinetd-client-config b/app/openvpn/sample/sample-config-files/xinetd-client-config deleted file mode 100644 index 03c5c1fa..00000000 --- a/app/openvpn/sample/sample-config-files/xinetd-client-config +++ /dev/null @@ -1,11 +0,0 @@ -# This OpenVPN config file -# is the client side counterpart -# of xinetd-server-config - -dev tun -ifconfig 10.4.0.1 10.4.0.2 -remote my-server -port 1194 -user nobody -secret /root/openvpn/key -inactive 600 diff --git a/app/openvpn/sample/sample-config-files/xinetd-server-config b/app/openvpn/sample/sample-config-files/xinetd-server-config deleted file mode 100644 index 803a6f8f..00000000 --- a/app/openvpn/sample/sample-config-files/xinetd-server-config +++ /dev/null @@ -1,25 +0,0 @@ -# An xinetd configuration file for OpenVPN. -# -# This file should be renamed to openvpn or something suitably -# descriptive and copied to the /etc/xinetd.d directory. -# xinetd can then be made aware of this file by restarting -# it or sending it a SIGHUP signal. -# -# For each potential incoming client, create a separate version -# of this configuration file on a unique port number. Also note -# that the key file and ifconfig endpoints should be unique for -# each client. This configuration assumes that the OpenVPN -# executable and key live in /root/openvpn. Change this to fit -# your environment. - -service openvpn_1 -{ - type = UNLISTED - port = 1194 - socket_type = dgram - protocol = udp - wait = yes - user = root - server = /root/openvpn/openvpn - server_args = --inetd --dev tun --ifconfig 10.4.0.2 10.4.0.1 --secret /root/openvpn/key --inactive 600 --user nobody -} -- cgit v1.2.3 From 1684c8f398922065a97e7da4dac4ac6a33cc5218 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Parm=C3=A9nides=20GV?= Date: Wed, 9 Apr 2014 16:03:55 +0200 Subject: Back to the standard "app" module. This return to "app" instead of "bitmask_android" is due to this reading: https://developer.android.com/sdk/installing/studio-build.html#projectStructure I'll have to tweak the final apk name in build.gradle. --- app/openvpn/sample/sample-config-files/README | 6 + app/openvpn/sample/sample-config-files/client.conf | 123 +++++++++ app/openvpn/sample/sample-config-files/firewall.sh | 108 ++++++++ app/openvpn/sample/sample-config-files/home.up | 2 + .../sample/sample-config-files/loopback-client | 25 ++ .../sample/sample-config-files/loopback-server | 26 ++ app/openvpn/sample/sample-config-files/office.up | 2 + .../sample/sample-config-files/openvpn-shutdown.sh | 5 + .../sample/sample-config-files/openvpn-startup.sh | 34 +++ app/openvpn/sample/sample-config-files/server.conf | 299 +++++++++++++++++++++ .../sample/sample-config-files/static-home.conf | 72 +++++ .../sample/sample-config-files/static-office.conf | 69 +++++ .../sample/sample-config-files/tls-home.conf | 83 ++++++ .../sample/sample-config-files/tls-office.conf | 83 ++++++ .../sample-config-files/xinetd-client-config | 11 + .../sample-config-files/xinetd-server-config | 25 ++ 16 files changed, 973 insertions(+) create mode 100644 app/openvpn/sample/sample-config-files/README create mode 100644 app/openvpn/sample/sample-config-files/client.conf create mode 100755 app/openvpn/sample/sample-config-files/firewall.sh create mode 100755 app/openvpn/sample/sample-config-files/home.up create mode 100644 app/openvpn/sample/sample-config-files/loopback-client create mode 100644 app/openvpn/sample/sample-config-files/loopback-server create mode 100755 app/openvpn/sample/sample-config-files/office.up create mode 100755 app/openvpn/sample/sample-config-files/openvpn-shutdown.sh create mode 100755 app/openvpn/sample/sample-config-files/openvpn-startup.sh create mode 100644 app/openvpn/sample/sample-config-files/server.conf create mode 100644 app/openvpn/sample/sample-config-files/static-home.conf create mode 100644 app/openvpn/sample/sample-config-files/static-office.conf create mode 100644 app/openvpn/sample/sample-config-files/tls-home.conf create mode 100644 app/openvpn/sample/sample-config-files/tls-office.conf create mode 100644 app/openvpn/sample/sample-config-files/xinetd-client-config create mode 100644 app/openvpn/sample/sample-config-files/xinetd-server-config (limited to 'app/openvpn/sample/sample-config-files') diff --git a/app/openvpn/sample/sample-config-files/README b/app/openvpn/sample/sample-config-files/README new file mode 100644 index 00000000..d53ac79a --- /dev/null +++ b/app/openvpn/sample/sample-config-files/README @@ -0,0 +1,6 @@ +Sample OpenVPN Configuration Files. + +These files are part of the OpenVPN HOWTO +which is located at: + +http://openvpn.net/howto.html diff --git a/app/openvpn/sample/sample-config-files/client.conf b/app/openvpn/sample/sample-config-files/client.conf new file mode 100644 index 00000000..58b2038b --- /dev/null +++ b/app/openvpn/sample/sample-config-files/client.conf @@ -0,0 +1,123 @@ +############################################## +# Sample client-side OpenVPN 2.0 config file # +# for connecting to multi-client server. # +# # +# This configuration can be used by multiple # +# clients, however each client should have # +# its own cert and key files. # +# # +# On Windows, you might want to rename this # +# file so it has a .ovpn extension # +############################################## + +# Specify that we are a client and that we +# will be pulling certain config file directives +# from the server. +client + +# Use the same setting as you are using on +# the server. +# On most systems, the VPN will not function +# unless you partially or fully disable +# the firewall for the TUN/TAP interface. +;dev tap +dev tun + +# Windows needs the TAP-Win32 adapter name +# from the Network Connections panel +# if you have more than one. On XP SP2, +# you may need to disable the firewall +# for the TAP adapter. +;dev-node MyTap + +# Are we connecting to a TCP or +# UDP server? Use the same setting as +# on the server. +;proto tcp +proto udp + +# The hostname/IP and port of the server. +# You can have multiple remote entries +# to load balance between the servers. +remote my-server-1 1194 +;remote my-server-2 1194 + +# Choose a random host from the remote +# list for load-balancing. Otherwise +# try hosts in the order specified. +;remote-random + +# Keep trying indefinitely to resolve the +# host name of the OpenVPN server. Very useful +# on machines which are not permanently connected +# to the internet such as laptops. +resolv-retry infinite + +# Most clients don't need to bind to +# a specific local port number. +nobind + +# Downgrade privileges after initialization (non-Windows only) +;user nobody +;group nobody + +# Try to preserve some state across restarts. +persist-key +persist-tun + +# If you are connecting through an +# HTTP proxy to reach the actual OpenVPN +# server, put the proxy server/IP and +# port number here. See the man page +# if your proxy server requires +# authentication. +;http-proxy-retry # retry on connection failures +;http-proxy [proxy server] [proxy port #] + +# Wireless networks often produce a lot +# of duplicate packets. Set this flag +# to silence duplicate packet warnings. +;mute-replay-warnings + +# SSL/TLS parms. +# See the server config file for more +# description. It's best to use +# a separate .crt/.key file pair +# for each client. A single ca +# file can be used for all clients. +ca ca.crt +cert client.crt +key client.key + +# Verify server certificate by checking +# that the certicate has the nsCertType +# field set to "server". This is an +# important precaution to protect against +# a potential attack discussed here: +# http://openvpn.net/howto.html#mitm +# +# To use this feature, you will need to generate +# your server certificates with the nsCertType +# field set to "server". The build-key-server +# script in the easy-rsa folder will do this. +ns-cert-type server + +# If a tls-auth key is used on the server +# then every client must also have the key. +;tls-auth ta.key 1 + +# Select a cryptographic cipher. +# If the cipher option is used on the server +# then you must also specify it here. +;cipher x + +# Enable compression on the VPN link. +# Don't enable this unless it is also +# enabled in the server config file. +comp-lzo + +# Set log file verbosity. +verb 3 + +# Silence repeating messages +;mute 20 diff --git a/app/openvpn/sample/sample-config-files/firewall.sh b/app/openvpn/sample/sample-config-files/firewall.sh new file mode 100755 index 00000000..19d75ee9 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/firewall.sh @@ -0,0 +1,108 @@ +#!/bin/sh + +# A Sample OpenVPN-aware firewall. + +# eth0 is connected to the internet. +# eth1 is connected to a private subnet. + +# Change this subnet to correspond to your private +# ethernet subnet. Home will use HOME_NET/24 and +# Office will use OFFICE_NET/24. +PRIVATE=10.0.0.0/24 + +# Loopback address +LOOP=127.0.0.1 + +# Delete old iptables rules +# and temporarily block all traffic. +iptables -P OUTPUT DROP +iptables -P INPUT DROP +iptables -P FORWARD DROP +iptables -F + +# Set default policies +iptables -P OUTPUT ACCEPT +iptables -P INPUT DROP +iptables -P FORWARD DROP + +# Prevent external packets from using loopback addr +iptables -A INPUT -i eth0 -s $LOOP -j DROP +iptables -A FORWARD -i eth0 -s $LOOP -j DROP +iptables -A INPUT -i eth0 -d $LOOP -j DROP +iptables -A FORWARD -i eth0 -d $LOOP -j DROP + +# Anything coming from the Internet should have a real Internet address +iptables -A FORWARD -i eth0 -s 192.168.0.0/16 -j DROP +iptables -A FORWARD -i eth0 -s 172.16.0.0/12 -j DROP +iptables -A FORWARD -i eth0 -s 10.0.0.0/8 -j DROP +iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DROP +iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP +iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP + +# Block outgoing NetBios (if you have windows machines running +# on the private subnet). This will not affect any NetBios +# traffic that flows over the VPN tunnel, but it will stop +# local windows machines from broadcasting themselves to +# the internet. +iptables -A FORWARD -p tcp --sport 137:139 -o eth0 -j DROP +iptables -A FORWARD -p udp --sport 137:139 -o eth0 -j DROP +iptables -A OUTPUT -p tcp --sport 137:139 -o eth0 -j DROP +iptables -A OUTPUT -p udp --sport 137:139 -o eth0 -j DROP + +# Check source address validity on packets going out to internet +iptables -A FORWARD -s ! $PRIVATE -i eth1 -j DROP + +# Allow local loopback +iptables -A INPUT -s $LOOP -j ACCEPT +iptables -A INPUT -d $LOOP -j ACCEPT + +# Allow incoming pings (can be disabled) +iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT + +# Allow services such as www and ssh (can be disabled) +iptables -A INPUT -p tcp --dport http -j ACCEPT +iptables -A INPUT -p tcp --dport ssh -j ACCEPT + +# Allow incoming OpenVPN packets +# Duplicate the line below for each +# OpenVPN tunnel, changing --dport n +# to match the OpenVPN UDP port. +# +# In OpenVPN, the port number is +# controlled by the --port n option. +# If you put this option in the config +# file, you can remove the leading '--' +# +# If you taking the stateful firewall +# approach (see the OpenVPN HOWTO), +# then comment out the line below. + +iptables -A INPUT -p udp --dport 1194 -j ACCEPT + +# Allow packets from TUN/TAP devices. +# When OpenVPN is run in a secure mode, +# it will authenticate packets prior +# to their arriving on a tun or tap +# interface. Therefore, it is not +# necessary to add any filters here, +# unless you want to restrict the +# type of packets which can flow over +# the tunnel. + +iptables -A INPUT -i tun+ -j ACCEPT +iptables -A FORWARD -i tun+ -j ACCEPT +iptables -A INPUT -i tap+ -j ACCEPT +iptables -A FORWARD -i tap+ -j ACCEPT + +# Allow packets from private subnets +iptables -A INPUT -i eth1 -j ACCEPT +iptables -A FORWARD -i eth1 -j ACCEPT + +# Keep state of connections from local machine and private subnets +iptables -A OUTPUT -m state --state NEW -o eth0 -j ACCEPT +iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT +iptables -A FORWARD -m state --state NEW -o eth0 -j ACCEPT +iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT + +# Masquerade local subnet +iptables -t nat -A POSTROUTING -s $PRIVATE -o eth0 -j MASQUERADE diff --git a/app/openvpn/sample/sample-config-files/home.up b/app/openvpn/sample/sample-config-files/home.up new file mode 100755 index 00000000..9c347cc5 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/home.up @@ -0,0 +1,2 @@ +#!/bin/sh +route add -net 10.0.0.0 netmask 255.255.255.0 gw $5 diff --git a/app/openvpn/sample/sample-config-files/loopback-client b/app/openvpn/sample/sample-config-files/loopback-client new file mode 100644 index 00000000..d7f59e69 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/loopback-client @@ -0,0 +1,25 @@ +# Perform a TLS loopback test -- client side. +# +# This test performs a TLS negotiation once every 10 seconds, +# and will terminate after 2 minutes. +# +# From the root directory of the OpenVPN distribution, +# after openvpn has been built, run: +# +# ./openvpn --config sample-config-files/loopback-client (In one window) +# ./openvpn --config sample-config-files/loopback-server (Simultaneously in another window) + +rport 16000 +lport 16001 +remote localhost +local localhost +dev null +verb 3 +reneg-sec 10 +tls-client +ca sample-keys/ca.crt +key sample-keys/client.key +cert sample-keys/client.crt +cipher DES-EDE3-CBC +ping 1 +inactive 120 10000000 diff --git a/app/openvpn/sample/sample-config-files/loopback-server b/app/openvpn/sample/sample-config-files/loopback-server new file mode 100644 index 00000000..9d21bcec --- /dev/null +++ b/app/openvpn/sample/sample-config-files/loopback-server @@ -0,0 +1,26 @@ +# Perform a TLS loopback test -- server side. +# +# This test performs a TLS negotiation once every 10 seconds, +# and will terminate after 2 minutes. +# +# From the root directory of the OpenVPN distribution, +# after openvpn has been built, run: +# +# ./openvpn --config sample-config-files/loopback-client (In one window) +# ./openvpn --config sample-config-files/loopback-server (Simultaneously in another window) + +rport 16001 +lport 16000 +remote localhost +local localhost +dev null +verb 3 +reneg-sec 10 +tls-server +dh sample-keys/dh1024.pem +ca sample-keys/ca.crt +key sample-keys/server.key +cert sample-keys/server.crt +cipher DES-EDE3-CBC +ping 1 +inactive 120 10000000 diff --git a/app/openvpn/sample/sample-config-files/office.up b/app/openvpn/sample/sample-config-files/office.up new file mode 100755 index 00000000..74a71a33 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/office.up @@ -0,0 +1,2 @@ +#!/bin/sh +route add -net 10.0.1.0 netmask 255.255.255.0 gw $5 diff --git a/app/openvpn/sample/sample-config-files/openvpn-shutdown.sh b/app/openvpn/sample/sample-config-files/openvpn-shutdown.sh new file mode 100755 index 00000000..8ed2d1d5 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/openvpn-shutdown.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +# stop all openvpn processes + +killall -TERM openvpn diff --git a/app/openvpn/sample/sample-config-files/openvpn-startup.sh b/app/openvpn/sample/sample-config-files/openvpn-startup.sh new file mode 100755 index 00000000..0ee006bc --- /dev/null +++ b/app/openvpn/sample/sample-config-files/openvpn-startup.sh @@ -0,0 +1,34 @@ +#!/bin/sh + +# A sample OpenVPN startup script +# for Linux. + +# openvpn config file directory +dir=/etc/openvpn + +# load the firewall +$dir/firewall.sh + +# load TUN/TAP kernel module +modprobe tun + +# enable IP forwarding +echo 1 > /proc/sys/net/ipv4/ip_forward + +# Invoke openvpn for each VPN tunnel +# in daemon mode. Alternatively, +# you could remove "--daemon" from +# the command line and add "daemon" +# to the config file. +# +# Each tunnel should run on a separate +# UDP port. Use the "port" option +# to control this. Like all of +# OpenVPN's options, you can +# specify "--port 8000" on the command +# line or "port 8000" in the config +# file. + +openvpn --cd $dir --daemon --config vpn1.conf +openvpn --cd $dir --daemon --config vpn2.conf +openvpn --cd $dir --daemon --config vpn2.conf diff --git a/app/openvpn/sample/sample-config-files/server.conf b/app/openvpn/sample/sample-config-files/server.conf new file mode 100644 index 00000000..f483b6bb --- /dev/null +++ b/app/openvpn/sample/sample-config-files/server.conf @@ -0,0 +1,299 @@ +################################################# +# Sample OpenVPN 2.0 config file for # +# multi-client server. # +# # +# This file is for the server side # +# of a many-clients <-> one-server # +# OpenVPN configuration. # +# # +# OpenVPN also supports # +# single-machine <-> single-machine # +# configurations (See the Examples page # +# on the web site for more info). # +# # +# This config should work on Windows # +# or Linux/BSD systems. Remember on # +# Windows to quote pathnames and use # +# double backslashes, e.g.: # +# "C:\\Program Files\\OpenVPN\\config\\foo.key" # +# # +# Comments are preceded with '#' or ';' # +################################################# + +# Which local IP address should OpenVPN +# listen on? (optional) +;local a.b.c.d + +# Which TCP/UDP port should OpenVPN listen on? +# If you want to run multiple OpenVPN instances +# on the same machine, use a different port +# number for each one. You will need to +# open up this port on your firewall. +port 1194 + +# TCP or UDP server? +;proto tcp +proto udp + +# "dev tun" will create a routed IP tunnel, +# "dev tap" will create an ethernet tunnel. +# Use "dev tap0" if you are ethernet bridging +# and have precreated a tap0 virtual interface +# and bridged it with your ethernet interface. +# If you want to control access policies +# over the VPN, you must create firewall +# rules for the the TUN/TAP interface. +# On non-Windows systems, you can give +# an explicit unit number, such as tun0. +# On Windows, use "dev-node" for this. +# On most systems, the VPN will not function +# unless you partially or fully disable +# the firewall for the TUN/TAP interface. +;dev tap +dev tun + +# Windows needs the TAP-Win32 adapter name +# from the Network Connections panel if you +# have more than one. On XP SP2 or higher, +# you may need to selectively disable the +# Windows firewall for the TAP adapter. +# Non-Windows systems usually don't need this. +;dev-node MyTap + +# SSL/TLS root certificate (ca), certificate +# (cert), and private key (key). Each client +# and the server must have their own cert and +# key file. The server and all clients will +# use the same ca file. +# +# See the "easy-rsa" directory for a series +# of scripts for generating RSA certificates +# and private keys. Remember to use +# a unique Common Name for the server +# and each of the client certificates. +# +# Any X509 key management system can be used. +# OpenVPN can also use a PKCS #12 formatted key file +# (see "pkcs12" directive in man page). +ca ca.crt +cert server.crt +key server.key # This file should be kept secret + +# Diffie hellman parameters. +# Generate your own with: +# openssl dhparam -out dh1024.pem 1024 +# Substitute 2048 for 1024 if you are using +# 2048 bit keys. +dh dh1024.pem + +# Configure server mode and supply a VPN subnet +# for OpenVPN to draw client addresses from. +# The server will take 10.8.0.1 for itself, +# the rest will be made available to clients. +# Each client will be able to reach the server +# on 10.8.0.1. Comment this line out if you are +# ethernet bridging. See the man page for more info. +server 10.8.0.0 255.255.255.0 + +# Maintain a record of client <-> virtual IP address +# associations in this file. If OpenVPN goes down or +# is restarted, reconnecting clients can be assigned +# the same virtual IP address from the pool that was +# previously assigned. +ifconfig-pool-persist ipp.txt + +# Configure server mode for ethernet bridging. +# You must first use your OS's bridging capability +# to bridge the TAP interface with the ethernet +# NIC interface. Then you must manually set the +# IP/netmask on the bridge interface, here we +# assume 10.8.0.4/255.255.255.0. Finally we +# must set aside an IP range in this subnet +# (start=10.8.0.50 end=10.8.0.100) to allocate +# to connecting clients. Leave this line commented +# out unless you are ethernet bridging. +;server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100 + +# Configure server mode for ethernet bridging +# using a DHCP-proxy, where clients talk +# to the OpenVPN server-side DHCP server +# to receive their IP address allocation +# and DNS server addresses. You must first use +# your OS's bridging capability to bridge the TAP +# interface with the ethernet NIC interface. +# Note: this mode only works on clients (such as +# Windows), where the client-side TAP adapter is +# bound to a DHCP client. +;server-bridge + +# Push routes to the client to allow it +# to reach other private subnets behind +# the server. Remember that these +# private subnets will also need +# to know to route the OpenVPN client +# address pool (10.8.0.0/255.255.255.0) +# back to the OpenVPN server. +;push "route 192.168.10.0 255.255.255.0" +;push "route 192.168.20.0 255.255.255.0" + +# To assign specific IP addresses to specific +# clients or if a connecting client has a private +# subnet behind it that should also have VPN access, +# use the subdirectory "ccd" for client-specific +# configuration files (see man page for more info). + +# EXAMPLE: Suppose the client +# having the certificate common name "Thelonious" +# also has a small subnet behind his connecting +# machine, such as 192.168.40.128/255.255.255.248. +# First, uncomment out these lines: +;client-config-dir ccd +;route 192.168.40.128 255.255.255.248 +# Then create a file ccd/Thelonious with this line: +# iroute 192.168.40.128 255.255.255.248 +# This will allow Thelonious' private subnet to +# access the VPN. This example will only work +# if you are routing, not bridging, i.e. you are +# using "dev tun" and "server" directives. + +# EXAMPLE: Suppose you want to give +# Thelonious a fixed VPN IP address of 10.9.0.1. +# First uncomment out these lines: +;client-config-dir ccd +;route 10.9.0.0 255.255.255.252 +# Then add this line to ccd/Thelonious: +# ifconfig-push 10.9.0.1 10.9.0.2 + +# Suppose that you want to enable different +# firewall access policies for different groups +# of clients. There are two methods: +# (1) Run multiple OpenVPN daemons, one for each +# group, and firewall the TUN/TAP interface +# for each group/daemon appropriately. +# (2) (Advanced) Create a script to dynamically +# modify the firewall in response to access +# from different clients. See man +# page for more info on learn-address script. +;learn-address ./script + +# If enabled, this directive will configure +# all clients to redirect their default +# network gateway through the VPN, causing +# all IP traffic such as web browsing and +# and DNS lookups to go through the VPN +# (The OpenVPN server machine may need to NAT +# or bridge the TUN/TAP interface to the internet +# in order for this to work properly). +;push "redirect-gateway def1 bypass-dhcp" + +# Certain Windows-specific network settings +# can be pushed to clients, such as DNS +# or WINS server addresses. CAVEAT: +# http://openvpn.net/faq.html#dhcpcaveats +# The addresses below refer to the public +# DNS servers provided by opendns.com. +;push "dhcp-option DNS 208.67.222.222" +;push "dhcp-option DNS 208.67.220.220" + +# Uncomment this directive to allow different +# clients to be able to "see" each other. +# By default, clients will only see the server. +# To force clients to only see the server, you +# will also need to appropriately firewall the +# server's TUN/TAP interface. +;client-to-client + +# Uncomment this directive if multiple clients +# might connect with the same certificate/key +# files or common names. This is recommended +# only for testing purposes. For production use, +# each client should have its own certificate/key +# pair. +# +# IF YOU HAVE NOT GENERATED INDIVIDUAL +# CERTIFICATE/KEY PAIRS FOR EACH CLIENT, +# EACH HAVING ITS OWN UNIQUE "COMMON NAME", +# UNCOMMENT THIS LINE OUT. +;duplicate-cn + +# The keepalive directive causes ping-like +# messages to be sent back and forth over +# the link so that each side knows when +# the other side has gone down. +# Ping every 10 seconds, assume that remote +# peer is down if no ping received during +# a 120 second time period. +keepalive 10 120 + +# For extra security beyond that provided +# by SSL/TLS, create an "HMAC firewall" +# to help block DoS attacks and UDP port flooding. +# +# Generate with: +# openvpn --genkey --secret ta.key +# +# The server and each client must have +# a copy of this key. +# The second parameter should be '0' +# on the server and '1' on the clients. +;tls-auth ta.key 0 # This file is secret + +# Select a cryptographic cipher. +# This config item must be copied to +# the client config file as well. +;cipher BF-CBC # Blowfish (default) +;cipher AES-128-CBC # AES +;cipher DES-EDE3-CBC # Triple-DES + +# Enable compression on the VPN link. +# If you enable it here, you must also +# enable it in the client config file. +comp-lzo + +# The maximum number of concurrently connected +# clients we want to allow. +;max-clients 100 + +# It's a good idea to reduce the OpenVPN +# daemon's privileges after initialization. +# +# You can uncomment this out on +# non-Windows systems. +;user nobody +;group nobody + +# The persist options will try to avoid +# accessing certain resources on restart +# that may no longer be accessible because +# of the privilege downgrade. +persist-key +persist-tun + +# Output a short status file showing +# current connections, truncated +# and rewritten every minute. +status openvpn-status.log + +# By default, log messages will go to the syslog (or +# on Windows, if running as a service, they will go to +# the "\Program Files\OpenVPN\log" directory). +# Use log or log-append to override this default. +# "log" will truncate the log file on OpenVPN startup, +# while "log-append" will append to it. Use one +# or the other (but not both). +;log openvpn.log +;log-append openvpn.log + +# Set the appropriate level of log +# file verbosity. +# +# 0 is silent, except for fatal errors +# 4 is reasonable for general usage +# 5 and 6 can help to debug connection problems +# 9 is extremely verbose +verb 3 + +# Silence repeating messages. At most 20 +# sequential messages of the same message +# category will be output to the log. +;mute 20 diff --git a/app/openvpn/sample/sample-config-files/static-home.conf b/app/openvpn/sample/sample-config-files/static-home.conf new file mode 100644 index 00000000..c9666874 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/static-home.conf @@ -0,0 +1,72 @@ +# +# Sample OpenVPN configuration file for +# home using a pre-shared static key. +# +# '#' or ';' may be used to delimit comments. + +# Use a dynamic tun device. +# For Linux 2.2 or non-Linux OSes, +# you may want to use an explicit +# unit number such as "tun1". +# OpenVPN also supports virtual +# ethernet "tap" devices. +dev tun + +# Our OpenVPN peer is the office gateway. +remote 1.2.3.4 + +# 10.1.0.2 is our local VPN endpoint (home). +# 10.1.0.1 is our remote VPN endpoint (office). +ifconfig 10.1.0.2 10.1.0.1 + +# Our up script will establish routes +# once the VPN is alive. +up ./home.up + +# Our pre-shared static key +secret static.key + +# OpenVPN 2.0 uses UDP port 1194 by default +# (official port assignment by iana.org 11/04). +# OpenVPN 1.x uses UDP port 5000 by default. +# Each OpenVPN tunnel must use +# a different port number. +# lport or rport can be used +# to denote different ports +# for local and remote. +; port 1194 + +# Downgrade UID and GID to +# "nobody" after initialization +# for extra security. +; user nobody +; group nobody + +# If you built OpenVPN with +# LZO compression, uncomment +# out the following line. +; comp-lzo + +# Send a UDP ping to remote once +# every 15 seconds to keep +# stateful firewall connection +# alive. Uncomment this +# out if you are using a stateful +# firewall. +; ping 15 + +# Uncomment this section for a more reliable detection when a system +# loses its connection. For example, dial-ups or laptops that +# travel to other locations. +; ping 15 +; ping-restart 45 +; ping-timer-rem +; persist-tun +; persist-key + +# Verbosity level. +# 0 -- quiet except for fatal errors. +# 1 -- mostly quiet, but display non-fatal network errors. +# 3 -- medium output, good for normal operation. +# 9 -- verbose, good for troubleshooting +verb 3 diff --git a/app/openvpn/sample/sample-config-files/static-office.conf b/app/openvpn/sample/sample-config-files/static-office.conf new file mode 100644 index 00000000..68030cc9 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/static-office.conf @@ -0,0 +1,69 @@ +# +# Sample OpenVPN configuration file for +# office using a pre-shared static key. +# +# '#' or ';' may be used to delimit comments. + +# Use a dynamic tun device. +# For Linux 2.2 or non-Linux OSes, +# you may want to use an explicit +# unit number such as "tun1". +# OpenVPN also supports virtual +# ethernet "tap" devices. +dev tun + +# 10.1.0.1 is our local VPN endpoint (office). +# 10.1.0.2 is our remote VPN endpoint (home). +ifconfig 10.1.0.1 10.1.0.2 + +# Our up script will establish routes +# once the VPN is alive. +up ./office.up + +# Our pre-shared static key +secret static.key + +# OpenVPN 2.0 uses UDP port 1194 by default +# (official port assignment by iana.org 11/04). +# OpenVPN 1.x uses UDP port 5000 by default. +# Each OpenVPN tunnel must use +# a different port number. +# lport or rport can be used +# to denote different ports +# for local and remote. +; port 1194 + +# Downgrade UID and GID to +# "nobody" after initialization +# for extra security. +; user nobody +; group nobody + +# If you built OpenVPN with +# LZO compression, uncomment +# out the following line. +; comp-lzo + +# Send a UDP ping to remote once +# every 15 seconds to keep +# stateful firewall connection +# alive. Uncomment this +# out if you are using a stateful +# firewall. +; ping 15 + +# Uncomment this section for a more reliable detection when a system +# loses its connection. For example, dial-ups or laptops that +# travel to other locations. +; ping 15 +; ping-restart 45 +; ping-timer-rem +; persist-tun +; persist-key + +# Verbosity level. +# 0 -- quiet except for fatal errors. +# 1 -- mostly quiet, but display non-fatal network errors. +# 3 -- medium output, good for normal operation. +# 9 -- verbose, good for troubleshooting +verb 3 diff --git a/app/openvpn/sample/sample-config-files/tls-home.conf b/app/openvpn/sample/sample-config-files/tls-home.conf new file mode 100644 index 00000000..daa4ea1e --- /dev/null +++ b/app/openvpn/sample/sample-config-files/tls-home.conf @@ -0,0 +1,83 @@ +# +# Sample OpenVPN configuration file for +# home using SSL/TLS mode and RSA certificates/keys. +# +# '#' or ';' may be used to delimit comments. + +# Use a dynamic tun device. +# For Linux 2.2 or non-Linux OSes, +# you may want to use an explicit +# unit number such as "tun1". +# OpenVPN also supports virtual +# ethernet "tap" devices. +dev tun + +# Our OpenVPN peer is the office gateway. +remote 1.2.3.4 + +# 10.1.0.2 is our local VPN endpoint (home). +# 10.1.0.1 is our remote VPN endpoint (office). +ifconfig 10.1.0.2 10.1.0.1 + +# Our up script will establish routes +# once the VPN is alive. +up ./home.up + +# In SSL/TLS key exchange, Office will +# assume server role and Home +# will assume client role. +tls-client + +# Certificate Authority file +ca my-ca.crt + +# Our certificate/public key +cert home.crt + +# Our private key +key home.key + +# OpenVPN 2.0 uses UDP port 1194 by default +# (official port assignment by iana.org 11/04). +# OpenVPN 1.x uses UDP port 5000 by default. +# Each OpenVPN tunnel must use +# a different port number. +# lport or rport can be used +# to denote different ports +# for local and remote. +; port 1194 + +# Downgrade UID and GID to +# "nobody" after initialization +# for extra security. +; user nobody +; group nobody + +# If you built OpenVPN with +# LZO compression, uncomment +# out the following line. +; comp-lzo + +# Send a UDP ping to remote once +# every 15 seconds to keep +# stateful firewall connection +# alive. Uncomment this +# out if you are using a stateful +# firewall. +; ping 15 + +# Uncomment this section for a more reliable detection when a system +# loses its connection. For example, dial-ups or laptops that +# travel to other locations. +; ping 15 +; ping-restart 45 +; ping-timer-rem +; persist-tun +; persist-key + +# Verbosity level. +# 0 -- quiet except for fatal errors. +# 1 -- mostly quiet, but display non-fatal network errors. +# 3 -- medium output, good for normal operation. +# 9 -- verbose, good for troubleshooting +verb 3 diff --git a/app/openvpn/sample/sample-config-files/tls-office.conf b/app/openvpn/sample/sample-config-files/tls-office.conf new file mode 100644 index 00000000..f790f469 --- /dev/null +++ b/app/openvpn/sample/sample-config-files/tls-office.conf @@ -0,0 +1,83 @@ +# +# Sample OpenVPN configuration file for +# office using SSL/TLS mode and RSA certificates/keys. +# +# '#' or ';' may be used to delimit comments. + +# Use a dynamic tun device. +# For Linux 2.2 or non-Linux OSes, +# you may want to use an explicit +# unit number such as "tun1". +# OpenVPN also supports virtual +# ethernet "tap" devices. +dev tun + +# 10.1.0.1 is our local VPN endpoint (office). +# 10.1.0.2 is our remote VPN endpoint (home). +ifconfig 10.1.0.1 10.1.0.2 + +# Our up script will establish routes +# once the VPN is alive. +up ./office.up + +# In SSL/TLS key exchange, Office will +# assume server role and Home +# will assume client role. +tls-server + +# Diffie-Hellman Parameters (tls-server only) +dh dh1024.pem + +# Certificate Authority file +ca my-ca.crt + +# Our certificate/public key +cert office.crt + +# Our private key +key office.key + +# OpenVPN 2.0 uses UDP port 1194 by default +# (official port assignment by iana.org 11/04). +# OpenVPN 1.x uses UDP port 5000 by default. +# Each OpenVPN tunnel must use +# a different port number. +# lport or rport can be used +# to denote different ports +# for local and remote. +; port 1194 + +# Downgrade UID and GID to +# "nobody" after initialization +# for extra security. +; user nobody +; group nobody + +# If you built OpenVPN with +# LZO compression, uncomment +# out the following line. +; comp-lzo + +# Send a UDP ping to remote once +# every 15 seconds to keep +# stateful firewall connection +# alive. Uncomment this +# out if you are using a stateful +# firewall. +; ping 15 + +# Uncomment this section for a more reliable detection when a system +# loses its connection. For example, dial-ups or laptops that +# travel to other locations. +; ping 15 +; ping-restart 45 +; ping-timer-rem +; persist-tun +; persist-key + +# Verbosity level. +# 0 -- quiet except for fatal errors. +# 1 -- mostly quiet, but display non-fatal network errors. +# 3 -- medium output, good for normal operation. +# 9 -- verbose, good for troubleshooting +verb 3 diff --git a/app/openvpn/sample/sample-config-files/xinetd-client-config b/app/openvpn/sample/sample-config-files/xinetd-client-config new file mode 100644 index 00000000..03c5c1fa --- /dev/null +++ b/app/openvpn/sample/sample-config-files/xinetd-client-config @@ -0,0 +1,11 @@ +# This OpenVPN config file +# is the client side counterpart +# of xinetd-server-config + +dev tun +ifconfig 10.4.0.1 10.4.0.2 +remote my-server +port 1194 +user nobody +secret /root/openvpn/key +inactive 600 diff --git a/app/openvpn/sample/sample-config-files/xinetd-server-config b/app/openvpn/sample/sample-config-files/xinetd-server-config new file mode 100644 index 00000000..803a6f8f --- /dev/null +++ b/app/openvpn/sample/sample-config-files/xinetd-server-config @@ -0,0 +1,25 @@ +# An xinetd configuration file for OpenVPN. +# +# This file should be renamed to openvpn or something suitably +# descriptive and copied to the /etc/xinetd.d directory. +# xinetd can then be made aware of this file by restarting +# it or sending it a SIGHUP signal. +# +# For each potential incoming client, create a separate version +# of this configuration file on a unique port number. Also note +# that the key file and ifconfig endpoints should be unique for +# each client. This configuration assumes that the OpenVPN +# executable and key live in /root/openvpn. Change this to fit +# your environment. + +service openvpn_1 +{ + type = UNLISTED + port = 1194 + socket_type = dgram + protocol = udp + wait = yes + user = root + server = /root/openvpn/openvpn + server_args = --inetd --dev tun --ifconfig 10.4.0.2 10.4.0.1 --secret /root/openvpn/key --inactive 600 --user nobody +} -- cgit v1.2.3