Toon posts:

[OpenVPN] OpenVPN combineren met FreeRadius

Pagina: 1
Acties:
  • 194 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Hallo beste Tweakers,

Korte uitleg:
Ik zit in mijn laatste jaar en dien een project te maken (deadline 6sept) over OpenVPN en FreeRadius. De bedoeling is om een software te testen die wij nooit gezien hebben op school en daarvan een klein verslagje op te stellen hoe je deze software (in mijn geval OpenVPN / FreeRadius) moet installeren en configureren om ermee te kunnen werken. De mogelijkheden zijn groot, elke werkende opstelling die ik kan maken zijn goed zolang ik maar iets kan tonen en dat ik kan uitleggen wat ik gedaan heb.

De opdracht
Als opdracht dien ik zoals reeds gezegd een OpenVPN netwerk op te bouwen en FreeRadius gebruiken om te authenticeren (vermoed ik, de opdracht is vrij vaag, letterlijk stond er: Voor je project zou ik aanraden om OpenVPN en FreeRadius te combineren in een project.).
Ikzelf zou graag 2 opstellingen willen maken, nl: network-network (bridged/routed) en client-network (bridged/routed) en hier dan ergens FreeRadius implementeren maar heb geen idee hoe ik deze 2 met elkaar kan combineren. Dit mag zowel in Linux(liefst Debian) als in Windows.

Wat ik al geprobeerd heb
Momenteel heb ik OpenVPN op een Debian machiene geinstalleerd en probeer ik deze in te stellen.
Maar bij het maken van de keys heb ik wat problemen + heb soms niet echt het idee wat fout doe.
Ik volg momenteel deze howto http://vickeryj.freeshell.org/notes/open_vpn_howto.htm om al een Bridged VPN connection op te kunnen stellen maar krijg al een fout bij stap 10.
Ik heb op GoT ook een howto gevonden voor de Windows versie van OpenVPN en die ga ik ook eens proberen. Ik denk dat het voor mij het beste is eerst een werkende opstelling te krijgen in VPN en dan pas FreeRadius er in te combineren, waar ik momenteel nog niets over gevonden heb hoe dat zou moeten :'(

Mijn kennis
Basis van Linux
Basis van netwerken in Linux/Windows

Vraag:
Zijn er mensen die al ooit met FreeRadius en OpenVpn in combinatie met elkaar gewerkt hebben, en mij een stapje in de goede richting kunnen plaatsen ?
Al is het maar een klein beetje , alle beetjes helpen mij :)

PS: Je mag me altijd berichtje sturen op het forum of als je echt mee wil helpen kunnen we op MSN verder praten, stuur dan wel een berichtje met je addres

[ Voor 3% gewijzigd door Verwijderd op 31-08-2006 11:12 ]


  • TrailBlazer
  • Registratie: Oktober 2000
  • Laatst online: 07-02 09:48

TrailBlazer

Karnemelk FTW

het combineren van freeradius en openvpn is niet heel erg moeilijk. Als er een binnenkomende connectie komt dan zal er door openvpn een script worden aangeroepen met als argument een filename met daarin de user en pass. Vervolgens zal dit script bij, in jouw geval freeradius, een database of iets dergelijks een check uitvoeren of de username/pass ok is.
Ik heb ooit een poging gedaan om hier op GoT een VPN op te zetten met openVPN maar uitendelijk kostte het me helaas te veel tijd en moeite om het op te zetten.
Bij dit VPN werd bijvoorbeeld een MySQL DB gebruikt om userinfo in op te slaan. Er werden namelijk on the fly configs gemaakt die dan weer naar de clients gepushed werden.

Verwijderd

Topicstarter
TrailBlazer schreef op donderdag 31 augustus 2006 @ 11:32:
het combineren van freeradius en openvpn is niet heel erg moeilijk. Als er een binnenkomende connectie komt dan zal er door openvpn een script worden aangeroepen met als argument een filename met daarin de user en pass. Vervolgens zal dit script bij, in jouw geval freeradius, een database of iets dergelijks een check uitvoeren of de username/pass ok is.
Ik heb ooit een poging gedaan om hier op GoT een VPN op te zetten met openVPN maar uitendelijk kostte het me helaas te veel tijd en moeite om het op te zetten.
Bij dit VPN werd bijvoorbeeld een MySQL DB gebruikt om userinfo in op te slaan. Er werden namelijk on the fly configs gemaakt die dan weer naar de clients gepushed werden.
Bij FreeRadius kon ik zelf in een file een user file aanmaken, "dacht ik" zonder dat ik nog extra DB software moest installeren. Dus dan hoef ik niet een extra DB te laten draaien

Bedankt voor de tip:

Dus bij OpenVPN moet ik zorgen dat er een script aangeroepen wordt bij een binnekomende connectie. Dit script verwijst door naar FreeRadius waar dan User en Pass gecontroleerd worden.

Eigenlijk dan een soort script die variabelen forward naar de FreeRadius server ?
Nu eerst nog OpenVPN werkende krijgen

  • TrailBlazer
  • Registratie: Oktober 2000
  • Laatst online: 07-02 09:48

TrailBlazer

Karnemelk FTW

ja dit klopt

  • KillerAce_NL
  • Registratie: Juni 2001
  • Niet online

KillerAce_NL

If it ain't broke...

OpenVPN gebruik ik hier icm IPCOP, werkt prima en simpel te installen/configureren.
Is een aagepaste versie: Zerina for IPCOP.

Verwijderd

Topicstarter
KillerAce_NL schreef op donderdag 31 augustus 2006 @ 12:45:
OpenVPN gebruik ik hier icm IPCOP, werkt prima en simpel te installen/configureren.
Is een aagepaste versie: Zerina for IPCOP.
Ik denk niet dat ik dat mag gebruiken , ik denk dat ik de originele versie van openvpn site moet gebruiken, kan wel wat uit de screenshots leren voor het configureren, bedankt.Staat een mooie howto.

Verwijderd

Topicstarter
Heb nu VPN ingesteld zoals op de site dat ik boven al vermelde.
Error die ik nu krijg als ik mijn server start is dit:

Server Side Fout:

Fri Sep 1 16:37:00 2006 MULTI: multi_create_instance called
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 Re-using SSL/TLS context
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 LZO compression initialized
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 Control Channel MTU parms [ L:1574 D:138 EF:38 EB:0 ET:0 EL:0 ]
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 Data Channel MTU parms [ L:1574 D:1450 EF:42 EB:23 ET:32 EL:0 AF:3/1 ]
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 Local Options hash (VER=V4): 'f7df56b8'
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 Expected Remote Options hash (VER=V4): 'd79ca330'
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 TLS: Initial packet from 81.245.225.237:1058, sid=900f5577 41dfd3bf
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 VERIFY ERROR: depth=0, error=unsupported certificate purpose: /C=BE/ST=Vlaams-Brabant/O=OpenVPN-TEST/CN=client1/emailAddress=vpn@germeys.eu
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 TLS_ERROR: BIO read tls_read_plaintext error: error:140890B2:SSL routines:SSL3_GET_CLIENT_CERTIFICATE:no certificate returned
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 TLS Error: TLS object -> incoming plaintext read error
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 TLS Error: TLS handshake failed
Fri Sep 1 16:37:00 2006 81.245.225.237:1058 SIGUSR1[soft,tls-error] received, client-instance restarting

Ik heb al de keys gecopierd en aan men vriend gegeven die probeerd te connecteren en toch geeft ie nog handshake fout.

Client-Side fout:

Fri Sep 1 17:39:16 2006 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA. OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Fri Sep 1 17:39:16 2006 Re-using SSL/TLS context
Fri Sep 1 17:39:16 2006 LZO compression initialized
Fri Sep 1 17:39:16 2006 Control Channel MTU parms [ L:1574 D:138 EF:38 EB:0 ET:0 EL:0 ]
Fri Sep 1 17:39:16 2006 Data Channel MTU parms [ L:1574 D:1450 EF:42 EB:23 ET:32 EL:0 AF:3/1 ]
Fri Sep 1 17:39:16 2006 Local Options hash (VER=V4): 'd79ca330'
Fri Sep 1 17:39:16 2006 Expected Remote Options hash (VER=V4): 'f7df56b8'
Fri Sep 1 17:39:16 2006 UDPv4 link local: [undef]
Fri Sep 1 17:39:16 2006 UDPv4 link remote: 81.243.179.22:1194
Fri Sep 1 17:39:16 2006 TLS: Initial packet from 81.243.179.22:1194, sid=2ca09c2c 55ce70e6
Fri Sep 1 17:39:16 2006 VERIFY OK: depth=1, /C=BE/ST=Vlaams-Brabant/L=GRIMBERGEN/O=OpenVPN-TEST/CN=server/emailAddress=vpn@germeys.eu
Fri Sep 1 17:39:16 2006 VERIFY OK: nsCertType=SERVER
Fri Sep 1 17:39:16 2006 VERIFY OK: depth=0, /C=BE/ST=Vlaams-Brabant/O=OpenVPN-TEST/CN=server/emailAddress=vpn@germeys.eu
Fri Sep 1 17:40:16 2006 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Fri Sep 1 17:40:16 2006 TLS Error: TLS handshake failed
Fri Sep 1 17:40:16 2006 TCP/UDP: Closing socket
Fri Sep 1 17:40:16 2006 SIGUSR1[soft,tls-error] received, process restarting
Fri Sep 1 17:40:16 2006 Restart pause, 2 second(s)


server:~# ifconfig
br0 Link encap:Ethernet HWaddr 00:03:FF:37:24:B5
inet addr:10.0.0.22 Bcast:10.0.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:384 errors:0 dropped:0 overruns:0 frame:0
TX packets:116 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:57983 (56.6 KiB) TX bytes:12644 (12.3 KiB)

eth0 Link encap:Ethernet HWaddr 00:03:FF:37:24:B5
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:2362 errors:0 dropped:0 overruns:0 frame:0
TX packets:1171 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:322564 (315.0 KiB) TX bytes:160076 (156.3 KiB)
Interrupt:11 Base address:0xec00

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:21 errors:0 dropped:0 overruns:0 frame:0
TX packets:21 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2216 (2.1 KiB) TX bytes:2216 (2.1 KiB)

tap0 Link encap:Ethernet HWaddr 00:FF:BD:AB:6A:05
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:118 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:28658 (27.9 KiB)


Server starten lukt probleemloos lijkt mij:

server:~# openvpn /etc/openvpn/server.conf
Fri Sep 1 17:49:02 2006 OpenVPN 2.0 i386-pc-linux [SSL] [LZO] [EPOLL] built on Apr 6 2006
Fri Sep 1 17:49:02 2006 Diffie-Hellman initialized with 1024 bit key
Fri Sep 1 17:49:02 2006 TLS-Auth MTU parms [ L:1574 D:138 EF:38 EB:0 ET:0 EL:0 ]
Fri Sep 1 17:49:02 2006 TUN/TAP device tap0 opened
Fri Sep 1 17:49:02 2006 Data Channel MTU parms [ L:1574 D:1450 EF:42 EB:23 ET:32 EL:0 AF:3/1 ]
Fri Sep 1 17:49:02 2006 GID set to openvpn
Fri Sep 1 17:49:02 2006 UID set to openvpn
Fri Sep 1 17:49:02 2006 UDPv4 link local (bound): [undef]:1194
Fri Sep 1 17:49:02 2006 UDPv4 link remote: [undef]
Fri Sep 1 17:49:02 2006 MULTI: multi_init called, r=256 v=256
Fri Sep 1 17:49:02 2006 IFCONFIG POOL: base=10.0.0.50 size=51
Fri Sep 1 17:49:02 2006 IFCONFIG POOL LIST
Fri Sep 1 17:49:02 2006 Initialization Sequence Completed

[ Voor 28% gewijzigd door Verwijderd op 01-09-2006 17:57 ]


Verwijderd

Topicstarter
Wat ik mij net bedenk stel dat ik freeradius zou willen gebruiken voor authenticatie dan heb ik die certificaten niet nodig zeker ?

Maar dat script dat ik dan moet koppelen van OpenVPN naar Freeradius hoe ziet dat er dan juist uit en waar dien ik dit jusit te doen 8)7

  • TrailBlazer
  • Registratie: Oktober 2000
  • Laatst online: 07-02 09:48

TrailBlazer

Karnemelk FTW

plak je configs eens want zo moeilijk is het niet
server
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
proto udp
dev tap
tls-server
ifconfig-pool-linear
ca /root/openvpn/easy-rsa/keys/ca.crt
cert /root/openvpn/easy-rsa/keys/server.crt
dh /root/openvpn/easy-rsa/keys/dh1024.pem
key /root/openvpn/easy-rsa/keys/server.key
server-bridge 172.22.254.9 255.255.255.252 172.22.254.10 172.22.254.10
auth-user-pass-verify /etc/openvpn/scripts/chpass via-file
tmp-dir /tmp
client-config-dir /etc/openvpn/ccd
username-as-common-name
client-to-client
keepalive 10 120
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log

client
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
dev tap
remote 1.2.3.4
lport 5000
client
tls-client
comp-lzo
ca /root/openvpn/easy-rsa/keys/ca.crt
cert /root/openvpn/easy-rsa/keys/trailblazer.crt
key /root/openvpn/easy-rsa/keys/trailblazer.key
pull
auth-user-pass /etc/openvpn/password
#auth-retry interact
verb 3

[ Voor 90% gewijzigd door TrailBlazer op 01-09-2006 18:33 ]


Verwijderd

Topicstarter
Server:
port 1194
proto udp
dev tap0
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key # This file should be kept secret
dh /etc/openvpn/keys/dh1024.pem
ifconfig-pool-persist ipp.txt
server-bridge 10.0.0.4 255.255.255.0 10.0.0.50 10.0.0.100
keepalive 10 120
comp-lzo
user openvpn
group openvpn
persist-key
persist-tun
status openvpn-status.log
verb 3


Client:
client
dev tap
proto udp
resolv-retry infinite
nobind
user openvpn
group openvpn
persist-key
persist-tun
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/client1.crt
key /etc/openvpn/keys/client1.key
ns-cert-type server
comp-lzo
verb 3

Verwijderd

Topicstarter
Ik ga nog eens opnieuw een server van Zero installen en opstarten met jouw config.
Hoop dat het gaat lukken.

Verwijderd

Topicstarter
Als ik de server start "/etc/init.d/openvpn" krijg ik nu op de client dit te zien:
Zou ik nu niet naar elkaar moeten kunnen pingen ?

Syslog SERVER
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
server:/etc/openvpn# tail -20 /var/log/syslog
Sep  2 18:26:12 localhost ovpn-server[1636]: read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
Sep  2 18:26:44 localhost last message repeated 41 times
Sep  2 18:27:02 localhost last message repeated 24 times
Sep  2 18:27:03 localhost ovpn-server[1636]: 81.244.121.156:1050 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Sep  2 18:27:03 localhost ovpn-server[1636]: 81.244.121.156:1050 TLS Error: TLS handshake failed
Sep  2 18:27:05 localhost ovpn-server[1636]: 81.244.121.156:1051 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Sep  2 18:27:05 localhost ovpn-server[1636]: 81.244.121.156:1051 TLS Error: TLS handshake failed
Sep  2 18:27:06 localhost ovpn-server[1636]: 81.244.121.156:1051 Re-using SSL/TLS context
Sep  2 18:27:06 localhost ovpn-server[1636]: 81.244.121.156:1051 LZO compression initialized
Sep  2 18:27:06 localhost ovpn-server[1636]: read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
Sep  2 18:27:08 localhost last message repeated 5 times
Sep  2 18:27:08 localhost ovpn-server[1636]: 81.244.121.156:1053 Re-using SSL/TLS context
Sep  2 18:27:08 localhost ovpn-server[1636]: 81.244.121.156:1053 LZO compression initialized
Sep  2 18:27:08 localhost ovpn-server[1636]: read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
Sep  2 18:27:15 localhost last message repeated 4 times
Sep  2 18:27:15 localhost ovpn-server[1636]: read UDPv4 [ECONNREFUSED|ECONNREFUSED]: Connection refused (code=111)
Sep  2 18:27:16 localhost ovpn-server[1636]: read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
Sep  2 18:27:28 localhost last message repeated 12 times
Sep  2 18:27:29 localhost kernel: i8253 count too high! resetting..
Sep  2 18:27:30 localhost ovpn-server[1636]: read UDPv4 [ECONNREFUSED]: Connection refused (code=111)


Als Client connect krijg ik dit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
original:~# openvpn /etc/openvpn/client.conf
Sat Sep  2 17:44:32 2006 OpenVPN 2.0 i386-pc-linux [SSL] [LZO] [EPOLL] built on Apr  6 2006
Sat Sep  2 17:44:32 2006 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA.  OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Sat Sep  2 17:44:32 2006 WARNING: file '/etc/openvpn/keys/client1.key' is group or others accessible
Sat Sep  2 17:44:32 2006 LZO compression initialized
Sat Sep  2 17:44:32 2006 Control Channel MTU parms [ L:1574 D:138 EF:38 EB:0 ET:0 EL:0 ]
Sat Sep  2 17:44:32 2006 Data Channel MTU parms [ L:1574 D:1450 EF:42 EB:23 ET:32 EL:0 AF:3/1 ]
Sat Sep  2 17:44:32 2006 Local Options hash (VER=V4): 'd79ca330'
Sat Sep  2 17:44:32 2006 Expected Remote Options hash (VER=V4): 'f7df56b8'
Sat Sep  2 17:44:33 2006 NOTE: UID/GID downgrade will be delayed because of --client, --pull, or --up-delay
Sat Sep  2 17:44:33 2006 UDPv4 link local: [undef]
Sat Sep  2 17:44:33 2006 UDPv4 link remote: 81.243.179.22:1194
Sat Sep  2 17:44:33 2006 TLS: Initial packet from 81.243.179.22:1194, sid=efcdf677 7511db12
Sat Sep  2 17:44:33 2006 VERIFY OK: depth=1, /C=BE/ST=Vlaams-Brabant/L=Grimbergen/O=OpenVPN-TEST/CN=server/emailAddress=vpn@germeys.eu
Sat Sep  2 17:44:33 2006 VERIFY OK: nsCertType=SERVER
Sat Sep  2 17:44:33 2006 VERIFY OK: depth=0, /C=BE/ST=Vlaams-Brabant/O=OpenVPN-TEST/CN=server/emailAddress=vpn@germeys.eu
Sat Sep  2 17:44:33 2006 Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key
Sat Sep  2 17:44:33 2006 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Sat Sep  2 17:44:33 2006 Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key
Sat Sep  2 17:44:33 2006 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Sat Sep  2 17:44:33 2006 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 1024 bit RSA
Sat Sep  2 17:44:33 2006 [server] Peer Connection Initiated with 81.243.179.22:1194
Sat Sep  2 17:44:34 2006 SENT CONTROL [server]: 'PUSH_REQUEST' (status=1)
Sat Sep  2 17:44:34 2006 PUSH: Received control message: 'PUSH_REPLY,route-gateway 10.0.0.22,ping 10,ping-restart 120,ifconfig 10.0.0.23 255.255.255.0'
Sat Sep  2 17:44:34 2006 OPTIONS IMPORT: timers and/or timeouts modified
Sat Sep  2 17:44:34 2006 OPTIONS IMPORT: --ifconfig/up options modified
Sat Sep  2 17:44:34 2006 OPTIONS IMPORT: route options modified
Sat Sep  2 17:44:34 2006 TUN/TAP device tap0 opened
Sat Sep  2 17:44:34 2006 /sbin/ifconfig tap0 10.0.0.23 netmask 255.255.255.0 mtu 1500 broadcast 10.0.0.255
Sat Sep  2 17:44:34 2006 GID set to openvpn
Sat Sep  2 17:44:34 2006 UID set to openvpn
Sat Sep  2 17:44:34 2006 Initialization Sequence Completed



SERVER /etc/group :
code:
1
nobody::6001:nobody



SERVER /etc/openvpn/vars
code:
1
2
3
4
5
6
7
8
9
10
export D=`pwd`
export KEY_CONFIG=$D/openssl.cnf
export KEY_DIR=$D/keys
echo NOTE: when you run ./clean-all, I will be doing a rm -rf on $KEY_DIR
export KEY_SIZE=1024
export KEY_COUNTRY=BE
export KEY_PROVINCE=Vlaams-Brabant
export KEY_CITY=Grimbergen
export KEY_ORG="OpenVPN-TEST"
export KEY_EMAIL="vpn@germeys.eu"


CLIENT /etc/openvpn/client.conf
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
client                                                           
dev tap                            
proto udp                                                        
remote blackz.is-a-geek.com 1194   
resolv-retry infinite                                           
nobind                             
user nobody                        
group nobody                       
persist-key                        
persist-tun                        
ca /etc/openvpn/keys/ca.crt        
cert /etc/openvpn/keys/client1.crt 
key /etc/openvpn/keys/client1.key                         
ns-cert-type server                                             
comp-lzo                                                        
verb 3


SERVER /etc/openvpn/server.conf
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
port 1194
proto udp
dev tap
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/keys/dh1024.pem
server-bridge 10.0.0.22 255.255.255.0 10.0.0.23 10.0.0.23
client-to-client
keepalive 10 120
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log



SERVER /usr/local/bin/openvpn-bridge

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#!/bin/bash

#################################
# Set up Ethernet bridge on Linux
# Requires: bridge-utils
#################################

# Define Bridge Interface
br="br0"

# Define list of TAP interfaces to be bridged,
# for example tap="tap0 tap1 tap2".
tap="tap0"

# Define physical ethernet interface to be bridged
# with TAP interface(s) above.
eth="eth0"

eth_ip="10.0.0.22"
eth_netmask="255.255.255.0"
eth_broadcast="10.0.0.255"
gw="10.0.0.138"

case "$1" in
  start)
  for t in $tap; do
      openvpn --mktun --dev $t
  done

  brctl addbr $br
  brctl addif $br $eth

  for t in $tap; do
      brctl addif $br $t
  done

  for t in $tap; do
      ifconfig $t 0.0.0.0 promisc up
  done

  ifconfig $eth 0.0.0.0 promisc up

  ifconfig $br $eth_ip netmask $eth_netmask broadcast $eth_broadcast
  route add default gw $gw
  ;;
  stop)
  ifconfig $br down
  brctl delbr $br

  for t in $tap; do
      openvpn --rmtun --dev $t
  done
  ifconfig $eth $eth_ip netmask $eth_netmask broadcast $eth_broadcast
  route add default gw $gw
  ;;
  *)
  echo "usage openvpn-bridge {start|stop}"

  exit 1
  ;;
esac
exit 0


SERVER /etc/init.d/openvpn
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
#!/bin/sh -e
#
# Original version by Robert Leslie
# <rob@mars.org>, edited by iwj and cs
# Modified for openvpn by Alberto Gonzalez Iniesta <agi@inittab.org>
# Modified for restarting / starting / stopping single tunnels by Richard Mueller <mueller@teamix.net>

# Modified to add bridge control by Josh Vickery <vickeryj@freeshell.org>

test $DEBIAN_SCRIPT_DEBUG && set -v -x

DAEMON=/usr/sbin/openvpn
DESC="virtual private network daemon"
CONFIG_DIR=/etc/openvpn
BRIDGE_CTL=/usr/local/bin/openvpn-bridge
test -x $DAEMON || exit 0
test -d $CONFIG_DIR || exit 0

# Source defaults file; edit that file to configure this script.
AUTOSTART="all"
STATUSREFRESH=10
if test -e /etc/default/openvpn ; then
  . /etc/default/openvpn
fi

start_vpn () {
    if grep -q '^[       ]*daemon' $CONFIG_DIR/$NAME.conf ; then
      # daemon already given in config file
      DAEMONARG=
    else
      # need to daemonize
      DAEMONARG="--daemon ovpn-$NAME"

    fi

    if grep -q '^[       ]*status ' $CONFIG_DIR/$NAME.conf ; then
      # status file already given in config file
      STATUSARG=""
    elif test $STATUSREFRESH -eq 0 ; then
      # default status file disabled in /etc/default/openvpn
      STATUSARG=""
    else
      # prepare default status file
      STATUSARG="--status /var/run/openvpn.$NAME.status $STATUSREFRESH"
    fi
    $BRIDGE_CTL start
    $DAEMON --writepid /var/run/openvpn.$NAME.pid \
            $DAEMONARG $STATUSARG --cd $CONFIG_DIR \
            --config $CONFIG_DIR/$NAME.conf || echo -n " FAILED->"

    echo -n " $NAME"
}
stop_vpn () {
   kill `cat $PIDFILE` || true
  rm $PIDFILE
  [ -e /var/run/openvpn.$NAME.status ] \
    && rm /var/run/openvpn.$NAME.status
  $BRIDGE_CTL stop
}
case "$1" in
start)
  echo -n "Starting $DESC:"

  # autostart VPNs
  if test -z "$2" ; then
    # check if automatic startup is disabled by AUTOSTART=none
    if test "x$AUTOSTART" = "xnone" -o -z "$AUTOSTART" ; then
      echo " Autostart disabled."

      exit 0
    fi
    if test -z "$AUTOSTART" -o "x$AUTOSTART" = "xall" ; then
      # all VPNs shall be started automatically
      for CONFIG in `cd $CONFIG_DIR; ls *.conf 2> /dev/null`; do
        NAME=${CONFIG%%.conf}
        start_vpn
      done
    else
      # start only specified VPNs
      for NAME in $AUTOSTART ; do
        if test -e $CONFIG_DIR/$NAME.conf ; then
          start_vpn
        else
          echo -n " (failure: No such VPN: $NAME)"

        fi
      done
    fi
  #start VPNs from command line
  else
    while shift ; do
      [ -z "$1" ] && break
      if test -e $CONFIG_DIR/$1.conf ; then
        NAME=$1
        start_vpn
      else
        echo -n " (failure: No such VPN: $1)"
      fi
    done
  fi
  echo "."

  ;;
stop)
  echo -n "Stopping $DESC:"

  if test -z "$2" ; then
    for PIDFILE in `ls /var/run/openvpn.*.pid 2> /dev/null`; do
      NAME=`echo $PIDFILE | cut -c18-`
      NAME=${NAME%%.pid}
      stop_vpn
      echo -n " $NAME"
    done
  else
    while shift ; do
      [ -z "$1" ] && break
      if test -e /var/run/openvpn.$1.pid ; then
        PIDFILE=`ls /var/run/openvpn.$1.pid 2> /dev/null`
        NAME=`echo $PIDFILE | cut -c18-`
        NAME=${NAME%%.pid}
        stop_vpn
        echo -n " $NAME"

      else
        echo -n " (failure: No such VPN is running: $1)"
      fi
    done
  fi
  echo "."
  ;;
# We only 'reload' for running VPNs. New ones will only start with 'start' or 'restart'.
reload|force-reload)
  echo -n "Reloading $DESC:"
  for PIDFILE in `ls /var/run/openvpn.*.pid 2> /dev/null`; do
    NAME=`echo $PIDFILE | cut -c18-`
    NAME=${NAME%%.pid}
# If openvpn if running under a different user than root we'll need to restart
    if egrep '^( |\t)*user' $CONFIG_DIR/$NAME.conf > /dev/null 2>&1 ; then
      stop_vpn
      sleep 1
      start_vpn
      echo -n "(restarted)"

    else
      kill -HUP `cat $PIDFILE` || true
    echo -n " $NAME"
    fi
  done
  echo "."
  ;;

restart)
  shift
  $0 stop ${@}
  sleep 1
  $0 start ${@}
  ;;
cond-restart)
  echo -n "Restarting $DESC:"
  for PIDFILE in `ls /var/run/openvpn.*.pid 2> /dev/null`; do
    NAME=`echo $PIDFILE | cut -c18-`
    NAME=${NAME%%.pid}
    stop_vpn
    sleep 1
    start_vpn
  done
  echo "."

  ;;
*)
  echo "Usage: $0 {start|stop|reload|restart|force-reload|cond-restart}" >&2
  exit 1
  ;;
esac



SERVER ifconfig
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
server:~# ifconfig
br0       Link encap:Ethernet  HWaddr 00:03:FF:37:24:B5
          inet addr:10.0.0.22  Bcast:10.0.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2970 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5493 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:547252 (534.4 KiB)  TX bytes:1207093 (1.1 MiB)

eth0      Link encap:Ethernet  HWaddr 00:03:FF:37:24:B5
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:2994 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5494 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:591502 (577.6 KiB)  TX bytes:1207505 (1.1 MiB)
          Interrupt:11 Base address:0xec00

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:11 errors:0 dropped:0 overruns:0 frame:0
          TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:808 (808.0 b)  TX bytes:808 (808.0 b)

tap0      Link encap:Ethernet  HWaddr 00:FF:F9:98:76:A5
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:213 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)



Nieuwe error 21u12

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Sep  2 21:05:09 localhost ovpn-server[863]: 81.245.123.138:1024 LZO compression                                      initialized
Sep  2 21:05:10 localhost ovpn-server[863]: 81.245.123.138:1024 [client1] Peer C                                     onnection Initiated with 81.245.123.138:1024
Sep  2 21:07:51 localhost ovpn-server[863]: 81.245.123.138:1025 Re-using SSL/TLS                                      context
Sep  2 21:07:51 localhost ovpn-server[863]: 81.245.123.138:1025 LZO compression                                      initialized
Sep  2 21:07:51 localhost ovpn-server[863]: 81.245.123.138:1025 [client1] Peer C                                     onnection Initiated with 81.245.123.138:1025
Sep  2 21:09:44 localhost ovpn-server[863]: 81.245.123.138:1026 Re-using SSL/TLS                                      context
Sep  2 21:09:44 localhost ovpn-server[863]: 81.245.123.138:1026 LZO compression                                      initialized
Sep  2 21:09:44 localhost ovpn-server[863]: 81.245.123.138:1026 [client1] Peer C                                     onnection Initiated with 81.245.123.138:1026
Sep  2 21:10:25 localhost ovpn-server[863]: 81.245.123.138:2479 Re-using SSL/TLS                                      context
Sep  2 21:10:25 localhost ovpn-server[863]: 81.245.123.138:2479 LZO compression                                      initialized
Sep  2 21:10:25 localhost ovpn-server[863]: 81.245.123.138:2479 [client1] Peer C                                     onnection Initiated with 81.245.123.138:2479
Sep  2 21:11:06 localhost ovpn-server[863]: read UDPv4 [ECONNREFUSED]: Connectio                                     n refused (code=111)
Sep  2 21:11:11 localhost ovpn-server[863]: 81.245.123.138:2508 Re-using SSL/TLS                                      context
Sep  2 21:11:11 localhost ovpn-server[863]: 81.245.123.138:2508 LZO compression                                      initialized
Sep  2 21:11:11 localhost ovpn-server[863]: 81.245.123.138:2508 [client1] Peer C                                     onnection Initiated with 81.245.123.138:2508

[ Voor 65% gewijzigd door Verwijderd op 02-09-2006 21:12 ]

Pagina: 1