RWTH MoPS VPN-Zugang auf Symbian Handys

Ein anstrengender Nachmittag hat mich jetzt endlich bis zur Vollendung des Projektes MoPS-Zugang für Symbian Handys gebracht.

 

ACHTUNG: Dieser Artikel ist nicht mehr aktuell. Eine aktuelle Version findet ihr hier -> RWTH MoPS auf dem N82

 

MoPS (Mobile Professoren und Studenten) ist das Wlan-Netz der RWTH Aachen. Leider reicht es nicht sich zu verbinden, man muss sich nach einer Verbindung auch noch in das VPN Netz der RWTH einwählen. Kein Problem mit PCs und Laptops: dafür kann man sich entweder eine PPTP Verbindung einrichten oder den bereitgestellten VPN Client von Cisco nutzen.

Auf Handys ist das etwas komplizierter. Im folgenden ein kleines Schritt für Schritt Tutorial. Getestet hab ich das ganze unter Windows Vista und mit meinem Nokia E70 S60 3rd Edition mit Symbian 9.1

Aber erstmal die Quellen :)

LRZ: VPN mit Symbian S60 Smartphones

Rechen- und Kommunikationszentrum: Nokia Symbian

Symbian Developer Network - IDE

Symbian Signed

Die Quelldateien

Ok, los gehts mit einem Workspace (meiner ist c:vpnner ). Dort benötigt ihr drei Dateien. Die bekommt ihr auf dieser Seite: Rechen- und Kommunikationszentrum: Nokia Symbian von Christoph Viethen. Ich hoffe der Autor hat nichts dagegen, daß ich den Inhalt der Dateien hier poste.

Die erste Datei nennt ihr VPN-Policy-RWTH-MoPS.pkg und füllt sie mit diesem Inhalt:

 

;
; A VPN POLICY PACKAGE
;
; LANGUAGES
&EN
; - None (English only by default)
; INSTALLATION HEADER
; - Only one component name is needed to support English only
; - UID is the UID of the VPN Policy Installer application
#{"VPN Policy"},(0x1000597E),1,0,0,TYPE = SISCONFIG


;Localised Vendor name
%{"Christoph Viethen, RWTH Aachen"}

;Unique Vendor name
:"Christoph Viethen, RWTH Aachen"

;Supports Series 60 v 3.0
[0x101F7961], 0, 0, 0, {"Series60ProductID"}

; LIST OF FILES
; Policy file
"VPN-Policy-RWTH-MoPS.pol"-
"C:SystemDataSecurityInstallVPN-Policy-RWTH-MoPS.pol"
; Policy-information file
; - NOTE: The policy-information file MUST be the last file in this list!
; - FM (FILEMIME) passes the file to the respective MIME handler
; (in this case, the VPN Policy Installer ; application).
"VPN-Policy-RWTH-MoPS.pin"-
"C:SystemDataSecurityInstallVPN-Policy-RWTH-MoPS.pin", FM,
"application/x-ipsec-policy-info"

; REQUIRED FILES
; - The VPN Policy Installer application
(0x1000597E), 1, 0, 0, {"VPN Policy Installer"}

Die nächste nennt ihr VPN-Policy-RWTH-MoPS.pin und gebt ihr diesen Inhalt

 

 

[POLICYNAME]
VPN Policy MoPS (RWTH)
[POLICYDESCRIPTION]
VPN-Policy-RWTH-MoPS.pol for Nokia Mobile VPN Client v3.0.
[POLICYVERSION]
1.1
[ISSUERNAME]
Do not edit
[CONTACTINFO]
Do not edit

 

und die letzte muss VPN-Policy-RWTH-MoPS.pol heissen und diesen Inhalt bekommen.

 

SECURITY_FILE_VERSION: 3
[INFO]
VPN-Policy-RWTH-MoPS.pol for Nokia Mobile VPN Client v3.0.
[POLICY]
sa ipsec_1 = {
esp
encrypt_alg 3
auth_alg 2
identity_remote 0.0.0.0/0
src_specific
hard_lifetime_bytes 0
hard_lifetime_addtime 3600
hard_lifetime_usetime 3600
soft_lifetime_bytes 0
soft_lifetime_addtime 3600
soft_lifetime_usetime 3600
}
remote 0.0.0.0 0.0.0.0 = { ipsec_1(134.130.5.234) }
inbound = { }
outbound = { }
[IKE]
ADDR: 134.130.5.234 255.255.255.255
MODE: Aggressive
SEND_NOTIFICATION: TRUE
ID_TYPE: 11
FQDN: MoPS
GROUP_DESCRIPTION_II: MODP_1024
USE_COMMIT: FALSE
IPSEC_EXPIRE: FALSE
SEND_CERT: FALSE
INITIAL_CONTACT: FALSE
RESPONDER_LIFETIME: TRUE
REPLAY_STATUS: TRUE
USE_INTERNAL_ADDR: FALSE
USE_NAT_PROBE: FALSE
ESP_UDP_PORT: 0
NAT_KEEPALIVE: 60
USE_XAUTH: TRUE
USE_MODE_CFG: TRUE
REKEYING_THRESHOLD: 90
PROPOSALS: 1
ENC_ALG: 3DES-CBC
AUTH_METHOD: PRE-SHARED
HASH_ALG: MD5
GROUP_DESCRIPTION: MODP_1024
GROUP_TYPE: DEFAULT
LIFETIME_KBYTES: 0
LIFETIME_SECONDS: 2147483
PRF: NONE
PRESHARED_KEYS:
FORMAT: STRING_FORMAT
KEY: 8 mopsWLAN

 

 

Ich habe an den Dateien für mein E70 rein gar nichts ändern müssen. Es kann aber je nach Telefon-Modell sein, dass die Verzeichnisstrukturen anders sind und ihr in der ersten Datei VPN-Policy-RWTH-MoPS.pkg die Verzeichnispfade anpassen müsst.

Makesis

Wenn ihr diese drei Dateien habt, braucht ihr die Tools makesis und signsis um eine SIS Datei zu erstellen, die ihr auf eurem Handy installieren könnt. Dazu müsst ihr auf die Webseite Forum Nokia gehen und dann Tools & SDKs -> All Tools & SDKs -> S60 Platform SDKs for Symbian OS, for C++ -> 3rd Edition FP1 (355 MB) -> Download Now auswählen.

Ihr bekommt jetzt das komplette Self Development Kit. Im Grunde braucht ihr nur die Dateien makesis.exe und signsis.exe, die je ein paar kB groß sind. Also wenn ihr die Dinger auch wo anders finden könnt, spart euch den riesen Download.

Bei der Installation des SDK wurde Perl vorausgesetzt, also habe ich mir schnell ActivePerl 5.6.1 installiert. Nach der Installation findet ihr je nach Installationspfad unter ~S60_3rd_FP1Epoc32 ools die beiden ersehnten Tools. Also ab in die Eingabeaufforderung (Start -> Ausführen -> "cmd") und in c:vpnner wechseln ("cd c:vpnner"). dann mit "makesis VPN-Policy-RWTH-MoPS.pkg" aus den drei Quelldateien eine SIS erstellen.

Signsis

Wenn ihr eine Symbian Version vor 9.1 habt, kann es sein, daß ihr diesen Schritt überspringen könnt. Schaden wirds auf jeden Fall nicht, es ist aber etwas umständlich. Die "neuen" Symbian Versionen benötigen ein Zertifikat für alle SIS Dateien. Zwar kann man im Programmmanager einschalten, daß auch nicht-signierte Dateien installiert werden dürfen, aber wie ich feststellen musste, muss diese Datei trotzdem signiert sein. Keine Ahnung was das soll. Aber auch dafür gibts eine Lösung.

Aaaaals erstes müsst ihr auf symbiansigned.com ein Developers Certificate speziell für euer Handy erstellen (ja, ihr könnt die Datei dann auch nur speziell auf eurem Handy benutzen), dann mit signsis die bereits erstellte SIS Datei signieren und dann könnt ihr den Kram auf eurem Handy installieren.

Dazu ladet ihr euch ein Tool namens DevCertRequest runter. Das gibts hier: Symbian Developer Network. Lustig ist, daß das DevCert Request Tool for Windows irgendeinen dämlichen Bug hat, der dafür sorgt, daß nicht alle Auswahlmöglichkeiten im Programm angezeigt werden und natürlich nicht für unsere Zwecke funktioniert. Funktioniert hat das ganze bei mir mit der Standalone Version. Die ist im Endeffekt eh angenehmer, weil man da nichts installieren muss.

Also runterladen, entpacken und dann unter standSymbianDevServicesTools die Datei Symbian Developer Services Tools.exe ausführen. Im Bildschirm der sich öffnet geht ihr auf Tools -> Symbian Signed -> Developer Certificate Request. Hier klickt ihr auf Specify CSR File und browsed zu eurem Ordner c:vpnner und gebt einen dateinamen an. ich habe mynokiae70.csr eingetippt. Als nächstes entfernt ihr den Haken bei ACS Publisher ID (falls er nicht schon entfernt ist) und klickt auf Select Private Key File. Dort tippt ihr ebenfalls einen Namen ein und klickt Ok. Ihr bekommt dann eine Nachricht, daß die Datei nicht gefunden wurde und jetzt für euch erstellt wird. Jetzt noch ein Passwort eintippen und auf Next klicken.

Im nächsten Fenster dann irgendwas für Country, State und Company eintippen und im darauffolgenden Bild unter Table of IMEIS die IMEI eures Handys eingeben. IMEI nennt sich auch Seriennummer und kann für gewöhnlich mit *#06# auf eurem Handy angezeigt werden. Dann klickt ihr bei Standard Capabilities und bei Additional Capabilities auf Select All und dann auf Finish.

Glückwunsch, der erste Teil ist geschafft, es wurden eine *.csr Datei und eine *.key Datei in eurem Workspace erstellt. Jetzt schnell zu symbiansigned.com wechseln und einen Account registrieren. Dann loggt ihr euch ein und klickt oben auf My Symbian Signed -> Developer Certificates -> Request. Dort könnt ihr eure frisch erstellte CSR Datei hochladen und damit ein Zertifikat anfordern. Das Zertifikat wird dann direkt erstellt und ihr könnt es downloaden und auch in eurem Workspace c:vpnner z.B. unter dem Namen mynokiae70.cer speichern.

Jetzt wieder über die Eingabeaufforderung in c:vpnner wechseln und mit

signsis VPN-Policy-RWTH-MoPS.SIS VPN-Policy-RWTH-MoPS-signed.sis mynokiae70.cer mynokiae70.key passwort

die SIS Datei signieren, wobei ihr in dem Befehl die Stelle wo passwort steht mit dem Passwort ersetzen müsst, das ihr im DevCertRequest Tool für eure mynokiae70.key eingegeben habt.

Einstellungen im Handy

Ihr könnt die SIS Datei jetzt mit der Nokia PC Suite oder über eine Speicherkarte auf eurem Handy installieren. Falls ihr die Meldung bekommt Zertifikat noch nicht/nicht mehr gültig, dann wartet ein paar Minuten und probiert es nochmal. Bei mir hats knapp 10 Minuten gedauert. Macht euch n schön heißen schwarzen Kaffee oder so.

Ist das Ding installiert könnt ihr unter System -> Einstellungen -> Verbindung -> VPN -> VPN-Zugangspunkte -> Neuer Zugangspunkt den Zugang einrichten. Gebt irgendwas für Verbindungsname ein und klickt dann auf VPN-Richtlinie. Hier muss jetzt sowas wie VPN Policy MoPS (RWTH) stehen (wenn ihr die Dateien oben unverändert gelassen habt). Ist das nicht der Fall, kann es sein, daß ihr die Pfade in der ersten Datei anpassen müsst. Prüft mit der Nokia PC Suite das Dateisystem eures Handys um rauszufinden, was für einen Pfad ihr braucht. Für Internetzugangspunkt wählt ihr einen mops Zugangspunkt oder euer WLAN zuhause oder was auch immer aus. Den Rest könnt ihr so lassen.

Fertig! Echt jetzt :) Wenn ihr euch das nächste Mal einwählt habt ihr einen Zugangspunkt mit dem Namen, den ihr unter Verbindungsname eingetippt habt und werdet damit automatisch getunnelt. Ihr seit dann im RWTH Netz und könnt surfen. Wird ja auch Zeit.