[Openswan Users] Fwd: Re: VPN with FVL328
David Clymer
david at hrcsb.org
Fri Aug 20 12:32:46 CEST 2004
Speaking of documentation, I had a devil of a time setting up a vpn with
openswan & a Netgear FVL328 using x509 certificates. I'm sure other
folks have done it, but though I searched the web till I sweat blood, I
could find nary a mention of such a set up. Being new to VPNs and x509
certs both, this made things difficult. So, for the archives, and anyone
else who may be interested, below is a rather terse step by step howto
based on my experience.
Note: Although it claims to do so, the FVL328 does not do 2048
certificate requests, at least as of firmware 2.0
-davidc
----- Forwarded message from David Clymer <david at hrcsb.org> -----
> To: xxxxxxx
> From: David Clymer <david at hrcsb.org>
> Subject: Re: VPN with FVL328
>
> Thus quoth xxxxxxx:
> > To: dclyme at hrcsb.org
> > From: xxxxxxx
> > Subject: VPN with FVL328
> >
> > David,
> > I hope you don't mind me e-mailing you directly.
>
> not a problem.
>
> > I am setting up a Netgear FVL328 VPN system and I have had no luck
> > getting the CA stuff to work. I did manage to get the PSK to work using
> > superswan in aggressive mode. The FVL328 seems to be very picky about
> > the settings. I even had trouble using the windows client purchased from
> > Netgear when I tried md5 encoding.
> > If it is not too much trouble could you write out how you have the
> > router set up, which version of openswan you are using and which version
> > of Linux and kernel you are using? It helps to know that this is
> > actually working somewhere.
>
>
>
> jekyl:/etc# uname -r
> 2.4.26-router
>
> jekyl:/etc# ipsec version
> Linux Openswan U2.1.3/K2.4.26-router (native) (native)
> See `ipsec --copyright' for copyright information.
>
> Netgear model/firmware: System Name FVL328
> Firmware Version V2.0_02
>
>
> Kernel setup:
>
> I'm using the native IPsec rather than using the KLIPS patch.
>
> Openswan setup:
>
> /etc/ipsec.conf:
>
> ----------8<----------
>
> version 2.0 # conforms to second version of ipsec.conf specification
>
> # basic configuration
> config setup
> # Debug-logging controls: "none" for (almost) none, "all" for lots.
> # klipsdebug=all
> # plutodebug=dns
>
> #Disable Opportunistic Encryption
> include /etc/ipsec.d/examples/no_oe.conf
>
> conn block
> auto=ignore
>
> conn private
> auto=ignore
>
> conn private-or-clear
> auto=ignore
>
> conn clear-or-private
> auto=ignore
>
> conn clear
> auto=ignore
>
> conn packetdefault
> auto=ignore
>
> # netgear VPN connection
> conn netgear1
> # general options
> type=tunnel
> keyexchange=ike
> pfs=yes
> authby=rsasig
> # Left security gateway, subnet behind it
> left=192.168.10.1
> leftsubnet=192.168.2.0/24
> leftid=router at mydomain.org
> leftcert=jekylCert.pem
> # Right security gateway, subnet behind it
> right=192.168.10.192
> rightsubnet=192.168.9.0/24
> rightid=steveB at microsoft.com
> rightcert=netgear1.pem
> auto=start
>
> ---------->8----------
>
>
> /etc/ipsec.secrets:
>
> ----------8<----------
>
> # use this as the key for any connection
> : RSA /etc/ipsec.d/private/jekylKey.pem
>
> ---------->8----------
>
>
> To generate these certificates, I did the following:
>
> I used /usr/lib/ssl/misc/CA.sh to create my Certificate Authority.
>
> jekyl:~/certificates# /usr/lib/ssl/misc/CA.sh -newca
> CA certificate filename (or enter to create)
>
> Making CA certificate ...
> Generating a 1024 bit RSA private key
> ...++++++
> ...........................................++++++
> writing new private key to './demoCA/private/./cakey.pem'
> Enter PEM pass phrase:
> Verifying - Enter PEM pass phrase:
> -----
> You are about to be asked to enter information that will be incorporated
> into your certificate request.
> What you are about to enter is what is called a Distinguished Name or a
> DN.
> There are quite a few fields but you can leave some blank
> For some fields there will be a default value,
> If you enter '.', the field will be left blank.
> -----
> Country Name (2 letter code) [AU]:US
> State or Province Name (full name) [Some-State]:Virginia
> Locality Name (eg, city) []:City
> Organization Name (eg, company) [Internet Widgits Pty Ltd]:Blah corp.
> Organizational Unit Name (eg, section) []:MIS
> Common Name (eg, YOUR name) []:Bob Dole
> Email Address []:bdole at yahoo.com
>
> jekyl:~/certificates# ls
> demoCA
>
> All the CA stuff is in the demoCA folder.
>
> I took the certificate request from the netgear, pasted it into a text
> file (removing any leading or trailing empty lines) I called netgcr.pem
>
> I added some subjectAltName extensions to a file a called netg.cnf (see
> /usr/share/doc/openssl/doc/openssl.txt.gz for more details)
>
> netg.cnf
> ---------->8----------
> subjectAltName=email:steveB at microsoft.com,IP:192.168.10.192
> ----------8<----------
>
> rtr.cnf
> ---------->8----------
> subjectAltName=email:billG at microsoft.com,IP:192.168.10.1
> ----------8<----------
>
> I then generated a cert for the netgear and the router:
>
> openssl x509 -req -CA demoCA/cacert.pem -CAkey demoCA/private/cakey.pem -extfile netg.cnf -in netcr.pem -out netgcert.pem
>
> openssl req -new -newkey rsa:2048 -out rtrcr.pem # this also creates a file called privkey.pem
> openssl x509 -req -CA demoCA/cacert.pem -CAkey demoCA/private/cakey.pem -extfile netg.cnf -in rtrcr.pem -out rtrcert.pem
>
> copied the certs and keys to the appropriate locations:
>
> cp *cert.pem /etc/ipsec.d/certs/
> cp privkey.pem /etc/ipsec.d/certs/routerkey.pem
> cp demoCA/cacert.pem /etc/ipsec.d/cacerts/demoCA.pem
>
> uploaded demoCA/cacert.pem to the netgear (in the "CA" section)
> followed by netgcert.pem to the ("certificates" section)
>
> I then used the VPN wizard (new in the 2.0 firmware) to set up the vpn.
> I went back in to the IKE policy created by the wizard and changed a few
> settings:
>
> direction/type: both
> exchange mod: main mode
> local and remote identity types: FQ user name.
> local id: steveB at microsoft.com
> remote id: billG at microsoft.com
> authentication method: RSA signature
> DH group: group 2 (1024)
>
> And changed VPN policy settings:
>
> pfs: yes
> DH group: 2 (1024)
> ESP encryption: yes, 3DES
> ESP authentication: yes, SHA-1
>
>
> I think that should do it. Good luck!
>
> -davidc
----- End forwarded message -----
More information about the Users
mailing list