Linking Remote Sites With OpenVPN

Slides:



Advertisements
Similar presentations
Module 13: Implementing ISA Server 2004 Enterprise Edition: Site-to-Site VPN Scenario.
Advertisements

Module 5: Configuring Access for Remote Clients and Networks.
1 Configuring Virtual Private Networks for Remote Clients and Networks.
Lesson 11-Virtual Private Networks. Overview Define Virtual Private Networks (VPNs). Deploy User VPNs. Deploy Site VPNs. Understand standard VPN techniques.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
M2M Gateway Features Jari Lahti, CTO
hotEx RADIUS Manager Installation
Windows Server 2008 Chapter 8 Last Update
Hands-On Microsoft Windows Server 2008 Chapter 8 Managing Windows Server 2008 Network Services.
Untangle and OpenVPN. ‏ What is OpenVPN? Allows secure remote connection Based on SSL Uses UDP 1194 Supports – Site to Site (hardware to hardware) – Site.
© 2012 Cisco and/or its affiliates. All rights reserved. 1 CCNA Security 1.1 Instructional Resource Chapter 10 – Implementing the Cisco Adaptive Security.
4-1 PSe_4Konf.503 EAGLE Getting Started and Configuration.
Linux Operations and Administration
Week #10 Objectives: Remote Access and Mobile Computing Configure Mobile Computer and Device Settings Configure Remote Desktop and Remote Assistance for.
Course 201 – Administration, Content Inspection and SSL VPN
Chapter 7: Using Windows Servers to Share Information.
© 2005,2006 NeoAccel Inc. Partners Presentation SSL VPN-Plus 2.0 Quick Start Guide.
Microsoft Internet Security and Acceleration (ISA) Server 2004 is an advanced packet checking and application-layer firewall, virtual private network.
Implementing ISA Server Publishing. Introduction What Are Web Publishing Rules? ISA Server uses Web publishing rules to make Web sites on protected networks.
Module 8 Configuring Mobile Computing and Remote Access in Windows® 7.
FTP Server and FTP Commands By Nanda Ganesan, Ph.D. © Nanda Ganesan, All Rights Reserved.
MCTS Guide to Microsoft Windows Server 2008 Applications Infrastructure Configuration (Exam # ) Chapter Four Windows Server 2008 Remote Desktop Services,
BZUPAGES.COM. What is a VPN VPN is an acronym for Virtual Private Network. A VPN provides an encrypted and secure connection "tunnel" path from a user's.
Module 11: Implementing ISA Server 2004 Enterprise Edition.
Hands-On Microsoft Windows Server Implementing Microsoft Internet Information Services Microsoft Internet Information Services (IIS) –Software included.
Integrating and Troubleshooting Citrix Access Gateway.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco PublicITE I Chapter 6 1 Router Initialization steps.
1 IPSec Lab. 2 Install openvpn To install openvpn type: To install openvpn type: yum install openvpnyum install openvpn Note: both openvpn and lzo are.
©2010 Check Point Software Technologies Ltd. | [Unrestricted] For everyone Endpoint Security VPN R75 (SecureClient Next Generation)
Setting up Client Tunnel Endpoints Lucent Security Products Configuration Example Series.
Basic Edge Core switch Training for Summit Communication.
Virtual Private Network Access for Remote Networks
Getting Connected to NGS while on the Road…
Chapter 7: Using Windows Servers
Building Distributed Networks using VPNs David R Newman.
Virtual Private Networks and IPSec
Palo Alto Networks Certified Network Security Engineer
VMware ESX and ESXi Module 3.
Ssh: secure shell.
FIREWALL configuration in linux
Configuring ALSMS Remote Navigation
Virtual Private Networking with OpenVPN
Set up your own Cloud The search for a secure and acceptable means of gaining access to your files stored at the office from a remote location.
Securing the Network Perimeter with ISA 2004
Building Distributed Networks using VPNs David R Newman.
SUBMITTED BY: NAIMISHYA ATRI(7TH SEM) IT BRANCH
Welcome To : Group 1 VC Presentation
VPN-Implementation Using UBUNTU OS and OpenVPN and Hamachi in client-server environment. By Ruphin Byamungu, Kusinza United States International University-Nairobi.
Unit 27: Network Operating Systems
Utilize Group Policy Terminal Server Settings
INSTALLING AND SETTING UP APACHE2 IN A LINUX ENVIRONMENT
DHCP, DNS, Client Connection, Assignment 1 1.3
IIS.
* Essential Network Security Book Slides.
SSH SSH is “Secure SHell” Secure, compressed, widely supported, fast
Microsoft Virtual Academy
Goals Introduce the Windows Server 2003 family of operating systems
Setting Up Firewall using Netfilter and Iptables
Getting Connected to NGS while on the Road…
OPS235: Configuring a Network Using Virtual Machines – Part 2
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 4: Planning and Configuring Routing and Switching.
AbbottLink™ - IP Address Overview
Chapter 10: Advanced Cisco Adaptive Security Appliance
Module 12 Network Configuration
Designing IIS Security (IIS – Internet Information Service)
PerformanceBridge Application Suite and Practice 2.0 IT Specifications
WireGuard zswu.
OpenVPN zswu.
Securing web applications Externally
How to install and manage exchange server 2010 OP Saklani.
Presentation transcript:

Linking Remote Sites With OpenVPN Matt Gracie Information Security Administrator Canisius College Buffalo, NY

The Problem Often, there are times when a geographically separate network needs to be able to access resources on your central campus network – and vice-versa.

Possible Solutions Install a fiber path Use microwave technology Lease a line from a telecom Use an independent Internet connection Use a VPN (Proprietary or Otherwise)

What is OpenVPN? From the OpenVPN web site: “OpenVPN is a full-featured open source SSL VPN solution that accommodates a wide range of configurations, including remote access, site-to- site VPNs, Wi-Fi security, and enterprise-scale remote access solutions with load balancing, failover, and fine-grained access-controls. “

What is OpenVPN? Other important features of OpenVPN: It operates in user space Cross-platform compatibility Uses OpenSSL for encryption Free, open source, well-audited The same software is both client and server

Our Example Network

Our Example Network

Prerequisites Both sites must have commodity Internet access You must be able to configure the firewall and the border router at the main campus site You must be able to assign static IP addresses You must be able to publish DNS records for your domain

Initial Network Setup The computer that will be used as a VPN server (vpn.maincampus.edu) must have a static IP, a published DNS record, and be accessible from the Internet using port 1194/tcp. A static route for 172.16.0.0/24 needs to be installed on the border router, pointing to the IP address of vpn.maincampus.edu. This will allow computers on the maincampus.edu network to route traffic to computers at the remote office.

Building the OpenVPN Server This presentation assumes that the OpenVPN server will be a Linux environment, either running on dedicated hardware or as a virtual machine. These configuration directions were derived from an installation on Ubuntu 9.10. Other Linux variants may require slight changes in syntax.

Install the Software The necessary software is available in the standard Ubuntu repositories. Simply update your package cache and then install the “openvpn” and “openssl” packages along with any requirements. # apt-get update # apt-get install openvpn openssl

Establish the CA The OpenVPN software ships with default example SSL CA configurations that are usable in production. These commands will copy them from the documentation directory into the OpenVPN configuration directory. # cp -R /usr/share/doc/openvpn/examples/easy-rsa /etc/openvpn/ # cd /etc/openvpn/easy-rsa/2.0

Establish the CA The file “vars” in /etc/openvpn/easy-rsa/2.0 contains some default configuration information for the CA. Edit the last configuration stanza to match your environment, then run the appropriate scripts to build the certificates for the CA. # vi vars # . ./vars # ./clean-all # ./build-ca # ./build-key-server server # ./build-dh

Move Keys By default, all of the keys that we've generated so far are in a subdirectory of /etc/openvpn. They need to be moved to the proper place in the filesystem so that the OpenVPN software can find them. # cd /etc/openvpn/easy-rsa/2.0/keys # cp ca.crt ca.key dh1024.pem server.crt \ server.key /etc/openvpn # cd /etc/openvpn # mkdir ccd

Configure the Software OpenVPN does come with several example configurations in the /usr/share/doc/openvpn directory. For purposes of this deployment, we'll be using something more abbreviated. Put the contents of the next slide into a file named “openvpn.conf” in the /etc/openvpn configuration directory.

Sample Configuration port 1194 proto tcp dev tun ca ca.crt cert server.crt key server.key dh dh1024.pem server 172.16.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt keepalive 10 120 comp-lzo user nobody group users persist-key persist-tun status openvpn-status.log verb 3 client-to-client client-config-dir /etc/openvpn/ccd

Start the Server Daemon Now, the server should be configured and ready to launch. # /etc/init.d/openvpn start * Starting virtual private network daemon(s)... * Autostarting VPN 'openvpn' [OK]

Building the Client Gateway Now that the server is up and running, we need to configure a client gateway to connect to it and properly route traffic. For purposes of this presentation, I will assume the use of a Linksys WRT54GL router, reflashed with DD-WRT, and a cable Internet connection.

WRT54GL

DD-WRT DD-WRT is a third party firmware that works on the Linksys WRT54GL as well as many other models of home router. It is a full Linux distribution with a web-based GUI for ease of administration. There are many different versions of DD-WRT available, depending on the router that you're using. Make sure that you install one that supports OpenVPN as a client.

Flash Your Router Using the instructions provided on the DD-WRT web site, flash your router firmware with the newest stable version of the software. If you are using something besides a WRT54GL, be sure to completely read and understand the documentation; some models have odd quirks that must be dealt with to avoid bricking.

Build a Client Key Because OpenVPN uses SSL certificates for authentication, a certificate pair must be generated for each client. Here we build one for a client named “remote1”. # cd /etc/openvpn/easy-rsa/2.0 # ./build-key remote1

Retrieve Client Key Once the keys are generated, download them to your desktop computer. You will need the following files from the /etc/openvpn/easy-rsa/2.0/keys directory: ca.crt remote1.crt remote1.key

Install Client Keys Log into the DD-WRT web interface. Click on the Administration tab, then the Services subtab, and enable the OpenVPN client. Fill in the appropriate parameters: IP Address: vpn.maincampus.edu Port: 1194 LZO Compression: on Tunnel Protocol: tcp Public Server Cert: The contents of ca.crt Public Client Cert: The contents of remote1.crt Private Client Key: The contents of remote1.key

Install Routes on Server As part of the client configuration process, the OpenVPN configuration on the server must be modified so that it is aware of the remote network. Add the following to /etc/openvpn/openvpn.conf: push “route 192.168.1.0 255.255.255.0” #remote1 network route 192.168.2.0 255.255.255.0 push “route 192.168.2.0 255.255.255.0” Put this in /etc/openvpn/ccd/remote1: iroute 192.168.2.0 255.255.255.0

Restart OpenVPN Daemon Restart the OpenVPN daemon on the server so that your changes can take effect. # /etc/init.d/openvpn restart

Ingress Filtering Note that, by default, the DD-WRT appliance is a stateful firewall. This means that traffic initiated from the “outside” of the device will be dropped. If you want to exempt VPN-originated traffic from this, SSH into the router and type: # iptables --insert INPUT --in-interface tun0 -- protocol 0 -j ACCEPT # iptables --insert FORWARD --in-interface tun0 -- protocol 0 -j ACCEPT

Finished! That should be all that you need to do to set up a routed VPN between two sites using OpenVPN. To confirm that everything is operating properly, try pinging something on the main campus network from the remote network, and vice-versa.

Additional Information OpenVPN Homepage http://www.openvpn.net DD-WRT Project http://www.dd-wrt.com OpenVPN 2.0 HOWTO http://www.imped.net/oss/misc/openvpn-2.0- howto-edit.html

Additional Information OpenVPN on Debian http://www.annoying.dk/2007/10/14/quick- simple-tutorialhowto-on-openvpn- with-debian/ OpenVPN – Community Ubuntu Docs https://help.ubuntu.com/community/OpenVP N

Questions?

Information Security Administrator Contact Information Matt Gracie Information Security Administrator Canisius College ITS graciem@canisius.edu (716) 888-8378