Mikrotik OpenVPN: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
 
(не показаны 3 промежуточные версии этого же участника)
Строка 5: Строка 5:
 
=OpenVPN server на Mikrotik=
 
=OpenVPN server на Mikrotik=
 
Надо сделать на домашнем роутере, что бы связать ходить в оффис. Инициирует соединение офисная машина. Потом с "откудаугодно" подключаюсь с ноута и попадаю в офисную сеть
 
Надо сделать на домашнем роутере, что бы связать ходить в оффис. Инициирует соединение офисная машина. Потом с "откудаугодно" подключаюсь с ноута и попадаю в офисную сеть
Easy-RSA is part of OpenVPN package at [[1]]. As of OpenVPN version 2.1 the usage is as follows:
 
   
   
 
==Создать сертефикаты==
 
==Создать сертефикаты==
  +
Все делаю на линуксе, easy-rsa
 
<PRE>
 
<PRE>
 
cd easy-rsa
 
cd easy-rsa
Строка 56: Строка 56:
 
client1.crt
 
client1.crt
 
client1.pem
 
client1.pem
  +
</PRE>
  +
  +
==Конфигурация МикроТик==
  +
<PRE>
  +
/ppp profile
  +
set default change-tcp-mss=yes comment="" name=default only-one=default use-compression=default use-encryption=default use-vj-compression=default
  +
add change-tcp-mss=default comment="" local-address=10.15.32.1 name=OpenVPN only-one=default remote-address=ovpn-pool use-compression=default use-encryption=required use-vj-compression=default
  +
set default-encryption change-tcp-mss=yes comment="" name=default-encryption only-one=default use-compression=default use-encryption=yes use-vj-compression=default
  +
</PRE>
  +
  +
Как я понимаю из вики, авторизация ТОЛЬКО по сертефикату невозможна (мне - и не нужна).Создаю пользователей.
  +
<PRE>
  +
/ppp secret
  +
add caller-id="" comment="" disabled=no limit-bytes-in=0 limit-bytes-out=0 name=username1 password=password1 profile=default routes="" service=any
  +
add caller-id="" comment="" disabled=no limit-bytes-in=0 limit-bytes-out=0 name=username2 password=password2 profile=default routes="" service=any
  +
</PRE>
  +
  +
Конфиг собственно сервера:
  +
<PRE>
  +
/interface ovpn-server server
  +
set auth=sha1,md5 certificate=cert1 cipher=blowfish128,aes128,aes192,aes256 default-profile=OpenVPN enabled=yes keepalive-timeout=disabled mac-address=FE:16:B7:A7:D5:5B max-mtu=1500 mode=ip netmask=24 port=\
  +
1194 require-client-certificate=no
  +
</PRE>
  +
Мак конечно вводить не нужно. ip в конфиге означает "tun"
  +
  +
==Linux==
  +
<PRE>
  +
dev tun
  +
proto tcp-client
  +
  +
remote sirmax 1194 # Remote OpenVPN Servername or IP address
  +
  +
ca /etc/openvpn/keys/ca.crt
  +
cert /etc/openvpn/keys/client1.crt
  +
key /etc/openvpn/keys/client1.key
  +
  +
tls-client
  +
port 1194
  +
  +
user root
  +
group root
  +
  +
#comp-lzo # Do not use compression. It doesn't work with RouterOS (at least up to RouterOS 3.0rc9)
  +
  +
# More reliable detection when a system loses its connection.
  +
ping 15
  +
ping-restart 45
  +
ping-timer-rem
  +
persist-tun
  +
persist-key
  +
  +
# Silence the output of replay warnings, which are a common false
  +
# alarm on WiFi networks. This option preserves the security of
  +
# the replay protection code without the verbosity associated with
  +
# warnings about duplicate packets.
  +
mute-replay-warnings
  +
  +
# Verbosity level.
  +
# 0 = quiet, 1 = mostly quiet, 3 = medium output, 9 = verbose
  +
verb 3
  +
  +
cipher AES-256-CBC
  +
auth SHA1
  +
pull
 
</PRE>
 
</PRE>

Текущая версия на 17:23, 1 ноября 2012


OpenVPN server на Mikrotik

Надо сделать на домашнем роутере, что бы связать ходить в оффис. Инициирует соединение офисная машина. Потом с "откудаугодно" подключаюсь с ноута и попадаю в офисную сеть


Создать сертефикаты

Все делаю на линуксе, easy-rsa

cd easy-rsa
less README
vi vars
source vars
./clean-all

Create CA (Certificate Authority, required to sign client and server certificates)

./pkitool --initca 

Create Server Certificate

./pkitool --pass --server RB450  

Convert Server private key to .pem format

openssl rsa -in keys/RB450.key -out keys/RB450.pem

Create Client Certificate

./pkitool --pass client1

Convert Client private key to .pem format

openssl rsa -in keys/client1.key -out keys/client1.pem

Эти соответвенно на Микротик (scp)

RB450.crt
RB450.pem
ca.crt
/certificate
import file=RB450.crt
import file=RB450.pem
import file=ca.crt

На клиентов: (у меня их 2)

ca.crt
client1.crt
client1.pem

Конфигурация МикроТик

/ppp profile
set default change-tcp-mss=yes comment="" name=default only-one=default use-compression=default use-encryption=default use-vj-compression=default
add change-tcp-mss=default comment="" local-address=10.15.32.1 name=OpenVPN only-one=default remote-address=ovpn-pool use-compression=default use-encryption=required use-vj-compression=default
set default-encryption change-tcp-mss=yes comment="" name=default-encryption only-one=default use-compression=default use-encryption=yes use-vj-compression=default

Как я понимаю из вики, авторизация ТОЛЬКО по сертефикату невозможна (мне - и не нужна).Создаю пользователей.

/ppp secret
add caller-id="" comment="" disabled=no limit-bytes-in=0 limit-bytes-out=0 name=username1 password=password1 profile=default routes="" service=any
add caller-id="" comment="" disabled=no limit-bytes-in=0 limit-bytes-out=0 name=username2 password=password2 profile=default routes="" service=any

Конфиг собственно сервера:

/interface ovpn-server server
set auth=sha1,md5 certificate=cert1 cipher=blowfish128,aes128,aes192,aes256 default-profile=OpenVPN enabled=yes keepalive-timeout=disabled mac-address=FE:16:B7:A7:D5:5B max-mtu=1500 mode=ip netmask=24 port=\
    1194 require-client-certificate=no

Мак конечно вводить не нужно. ip в конфиге означает "tun"

Linux

dev tun
proto tcp-client

remote sirmax 1194 # Remote OpenVPN Servername or IP address

ca   /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/client1.crt
key  /etc/openvpn/keys/client1.key

tls-client
port 1194 

user root
group root

#comp-lzo # Do not use compression. It doesn't work with RouterOS (at least up to RouterOS 3.0rc9)

# More reliable detection when a system loses its connection.
ping 15
ping-restart 45
ping-timer-rem
persist-tun
persist-key

# Silence  the output of replay warnings, which are a common false
# alarm on WiFi networks.  This option preserves the  security  of
# the replay protection code without the verbosity associated with
# warnings about duplicate packets.
mute-replay-warnings

# Verbosity level.
# 0 = quiet, 1 = mostly quiet, 3 = medium output, 9 = verbose
verb 3

cipher AES-256-CBC
auth SHA1
pull