You are on page 1of 27

OpenVPN Configuration Step by Step - MikroTik Wiki

Log in

Go

Advanced search

Create a book

Download as PDF

Printable version

Main Page

Recent changes
Page

View source

modified on 7 April 2013 at 11:35 15,048 views

OpenVPN Configuration Step by Step


In this article i will talk about Open VPN , And How to Setup that as completly , such Basic Configuration , Certificate , OpenVPN Configurations .
in many topics and Forums Users talk about OpenVPN and proximate 90% of their have problem to run and correct installations of OpenVPN .
so , i decide to show you how you can do it correctly , Let's go !
What is OpenVPN ?
OpenVPN has been ported to various platforms, including Linux and Windows, and it's configuration is throughout likewise on each of these systems,
so it makes it easier to support and maintain.
Also, OpenVPN is one of the few VPN protocols that can make use of a proxy, which might be handy sometimes.
and You are able to use Various Port ( TCP Port ) for Your VPN Connections .
For More Information Click Here
Requirements :
RouterOS or Routerboard ( In This Article I have RB493AH , Version 6 RC 13 )
Public or Private IP Address or Valid Domain Name ( My Router 91.108.151.193 , Domain Name : Reza.IPExperts.Ir )
If you have a Domain Name same as this Article , you can Point all request for Certificate to your Domain , Unless you should use
your IP Address !
Public or Private Certificate for OpenVPN ( i will use CaCert

Free Certificate )

PPP Package ( To Install Openvpn Service )


OpenVPN GUI for Windows ( if you OpenVPN Client is Windows User OpenVPN GUI

, in this Article Client is another Routerboard )

Linux Operation System with Openssl Service


Basic Configuration :
Please Set IP Address and Default Route and other Basic Configurations in Your MikroTik ( DNS , NTP , etc. )

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

ip address
add address=91.108.151.193/28 comment="Public IP" interface="WLAN 1 - Home" \
network=91.108.151.192

Add a Default Route

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

ip route
add distance=1 gateway=91.108.151.194

Certificate :
OpenVPN use Certificate to setup Connections , So Open a New Terminal window and create a certificate request with your Information :

certificate create-certificate-request

You will be asked a number of questions , Some of them are important , some of them is not .
select name for certificate request file.
it will be created after you finish entering all required information.
certificate request file name: certificate-request.pem
select name of private key file.
if such file does not exist, it will be created later.

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

file name: private-key.pem


private key file already exists and will be overwritten if you continue.
please enter passphrase that will be used to encrypt generated private key file.
you must enter it twice to be sure you have not made any typing errors.

passphrase: 123456 [IMPORTANT]


verify passphrase: 123456 [IMPORTANT]
enter number of bits for RSA key.

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki


longer keys take more time to generate.

rsa key bits: 2048 [Default]


now you will be asked to enter values that make up distinguished name of your certificate.
you can leave some of them empty.
CA may reject your certificate request if some of these values are incorrect or missing, so please check what are the requirements of your CA.

enter two character country code.


country name: IR [NOT IMPORTANT]

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

enter full name of state or province.


state or province name: Khuzestan [NOT IMPORTANT]

enter locality (e.g. city) name


locality name: Ahvaz [NOT IMPORTANT]

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

enter name of the organization


organization name: IPExperts [NOT IMPORTANT]

enter organizational unit name


organization unit name: IT Department [NOT IMPORTANT]

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

enter common name.


for ssl web servers this must be the fully qualified domain name (FQDN) of the server that will use this certificate (like
www.someverysecuresitename.com) .
this is checked by browsers.
common name: reza.ipexperts.ir [IMPORTANT] or common name : 91.108.151.193 [IMPORTANT]

enter email address


email address: R.Moghadam@Hotmail.Com [NOT IMPORTANT]

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

now you can enter challenge password.


it's use depends on your CA.
it may be used to revoke this certificate.
challenge password: 123456 [NOT IMPORTANT]

you can enter unstructured address, if your CA accepts or requires it.


unstructured address: Reza Moghadam [NOT IMPORTANT]

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

After a few seconds you will receive notification that the Certificate Request file was created:

You can see Certificate-Request.pem and Private-key.pem is added in Files Menu

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

CaCerts :
Please Drag and Drop Request Files Include ( Certificate-Request.pem and Private-Key.pem ) to your Desktop .
first open Certificate-Request.pem file with Wordpad , Copy All String Include Begin and Ends of Certificate Request , Then Login to your Account in
Cacert and Make a New Server Certificate .

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

Paste your Certificate-Request.pem Strings to CSR Fields in Your Account ( New Server Certificate ) and Submit That .

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

Domain is Accepted .

Copy and Paste your Certificate Response from Cacert in a Wordpad and save that with .pem file ( In Here : certificate-response.pem )

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

Private Key :
We need a Private-Key as Key file , But Generated private keys will be in pkcs8 format, which is not supported in RouterOS.
To import such keys we should use Openssl Tool in Linux Distributes and make a Privat-Key File .
We can setup Openssl via these command :
apt-get install openssl
or
yum install openssl

Upload or Move Private-Key.pem file to That Linux OS with Openssl Service ( Bitvise SSH Client )

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

make your Private-Key.key file via these command :

openssl rsa -in private-key.pem -text

copy and paste export String ( Include Begin and End ) to a New File ( Ex. Private-Key.Key )

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

Import Certificate
Import Files ( Certificate-Response.pem , Private-Key.Key ) to Your MikroTik Files Menu .

First Import Certificate-Response.pem file with that Paraphrase

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

Second Import Private-Key.Key file with that Paraphrase

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

Once you have imported the private key, your certificate should get a "KR" written next to it K: Decrypted-Private-Key R: RSA
Now you will be able to use this key for OVPN.

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

OpenVPN Server Configuration :


we should make a IP Pool for Openvpn clients .

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

ip pool
add name=PPP ranges=1.1.1.1-1.1.1.100,1.1.1.150-1.1.1.200

Make a Profile for OpenVPN Service .

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

ppp profile
set 0 dns-server=4.2.2.4,8.8.8.8
add dns-server=4.2.2.4,8.8.8.8 local-address=10.1.1.254 name=\
"OpenVPN Profile" remote-address=PPP

Make a Username & Passowrd for OpenVPN Client

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

ppp secret
add name=1 password=1 profile="OpenVPN Profile"

Enable OpenVPN Service and Select Valid Certificate .

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

interface ovpn-server server


set certificate=cert1 enabled=yes

NAT :
add a masquared firewall nat rule to share internet with OpenVPN Client .

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

ip firewall nat
add action=masquerade chain=srcnat src-address=1.1.1.0/24

OpenVPN Client :
Make a OpenVPN Client and Set Address of OpenVPN Server and Username & Password .

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

interface ovpn-client
add auth=none cipher=none connect-to=reza.ipexperts.ir mac-address=\
02:FB:D1:D8:20:B7 name=ovpn-out1 password=1 user=1

Finally :
you can see OpenVPN Client is Connected and you will able to Ping it .

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

OpenVPN Configuration Step by Step - MikroTik Wiki

Reza Moghadam
--MikroTik Certified Trainer 12:02, 4 April 2013 (UTC)

Privacy policy / About MikroTik Wiki / Disclaimers / Powered by MediaWiki / Designed by Paul Gu

http://wiki.mikrotik.com/wiki/OpenVPN_Configuration_Step_by_Step[8/8/2013 12:43:34 ]

You might also like