Wie kann eine mobileconfig für Apple Geräte (iPhone, iPad, iMac …) signiert werden?

Mit dem Apple Configurator erstellte Profile können in Apple Geräte übertragen werden. Diese mobileconfig-Dateien sind XML Dateien. Wenn man die signiert, wird in den Profilen ein grüner Haken und überprüft in grün angezeigt. Sonst steht da, nicht signiert in ROT.

und man hat noch weitere Vorteile. Der Apple Configurator ist ein Tool das hauptsächlich für die Verwaltung von iOS- und macOS-Geräten in Unternehmen, Schulen und anderen Organisationen verwendet wird. Es ermöglicht die Massenkonfiguration und Verwaltung von iOS- und macOS-Geräten über eine benutzerfreundliche grafische Benutzeroberfläche. Es hilft auch schon, wenn man ein Gerät hat, denn mache Einstellungen kann man nur über Profile einstellen, und für meine 6 Geräte wird die Verwaltung auch schon einfacher.

Nun zu einem kleinen Beispiel, wir wollen Zertifikate in ein Profile importieren und die Profile Datei signieren. Hier nun die nötigen Schritte:

Ich habe mal drei Zertifikate (Root, Intermediate und User-Zertifikat) mit meiner XCA erstellt, die auf einem Raspberry Pi 4 (headless) läuft (und auch auf iMac) und zwar so: „Wie kann eine mobileconfig für Apple Geräte (iPhone, iPad, iMac …) signiert werden?“ weiterlesen

Wie kann ein VPN-on-Demand Profil auf das neuen IPhone X bzw. IPad Pro mit webdav installiert werden?

Früher konnte man sich die VPN.mobileconfig Datei einfach (aber unsicher) per E-Mail zusenden und installieren. Das geht nun nicht mehr.

Jetzt kann die Datei z.B. auf die Cloud (verschlüsselt) geladen und von dort mit dem Safari Browser per Web-Dav geöffnet werden. Das geht so:

1. Die VPN.mobileconfig (xml Textdatei) mit den kostenlosen Apple Configurator 2 oder per Hand erstellen (siehe hier auf dem Blog).

2. An die Cloud mit Webdav zugang anmelden (mit User und Passwort) und die VPN.mobileconfig kopieren z.B. nach https://webdav.mediencenter.t-online.de


„Wie kann ein VPN-on-Demand Profil auf das neuen IPhone X bzw. IPad Pro mit webdav installiert werden?“ weiterlesen

iPad Pro: VPN on Demand mit IPSec unter iOS 9.1 mit “shared secret” möglich oder wie kann ich sicher über Hotspots Daten austauschen?

Auch mit dem neuen iPad Pro und iOS 9.1 läuft VPN on Demand so wie in dem Beitrag schon einmal erwähnt (auch hier). Es sind keine Änderungen an der config Datei nötig, obwohl es einige Neuerungen gab, „iPad Pro: VPN on Demand mit IPSec unter iOS 9.1 mit “shared secret” möglich oder wie kann ich sicher über Hotspots Daten austauschen?“ weiterlesen

iPhone 6 plus: VPN on Demand mit IPSec unter iOS 8 mit “shared secret” möglich

Wie kann mit einem iPhone automatisch eine VPN Verbindung hergestellt werden, ohne das man es immer manuell vorher anschalten muss? Also VPN on Demand mit IPSec und „schared secret“. Das ist hilfreich, wenn man in öffentlichen WLANs unterwegs ist, so wird dann immer autom. eine VPN Verbindung aufgebaut, wenn sie benötigt wird. Es wird also nicht einmal vergessen. Und schon cool, wenn Anrufe auf dem Handy per VPN geführt werden können und Push-Benachrichtigungen autom. per VPN kommen.
Und wie kann automatisch das VPN im eigenen bekannten WLAN und Hotspots deaktivert werden? Das alles mit einem orginal iPhone, es ist kein Jailbreak nötig.

Hatte vor einiger Zeit schon mal versucht, mit einem iPhone eine automatische VPN Verbindung (VPN on Demand) aufzubauen. Das hatte nicht geklappt, wie hier beschrieben, weil diese Möglichkeit im Apple Konfigurationsprogramm nicht angeboten wird.

Habe jetzt aber einen Hinweis auf diese Quelle von Thomas Witt erhalten (Danke). Damit klappt es super. Wie muss man vorgehen?

1. Die VPN_FritzBox_OnDemand.mobileconfig laden.
2. Alle stellen die mit REPLACE gekennzeichnet sind, mit eigenen Werten ersetzen.
3. Die Profile Datei per E-Mail an das iPhone senden und das Profile installieren.
4. Manuell testen ob Verbindung läuft.

Habe es mit iPhone 6 Plus und iPadMini unter iOS 8.1.2 mit einer FritzBox 7490 (Version 06.23) getestet.

Hier die nötige Profile Datei von oben, mit Kommentaren von mir aus der Apple Referenz, so kann man auf einem Blick sehen, was man anpassen kann bzw. muss:

In welcher Umbebung läuft es bei Euch? Oder einfach nur einen like hinterlassen.

VPN on Demand mit IPSec unter iOS 7 mit „shared secret“

Suche eine Möglichkeit mit dem iPhone per VNP on Demand mit IPSec zu machen.
Wie ich bei Apple gelesen habe, soll das gehen.
Die Option wird ja auch im Konfigurationsprogramm angeboten:
Bildschirmfoto 2013-12-31 um 14.28.08
Wie ich aber leider feststellen mußte, nur mit Zertifikate und nicht mit Shared Secret.
Da wird die Option auch nicht angeboten:
Bildschirmfoto 2013-12-31 um 14.27.54
Selbst wenn man das exportierte Konfigurations-Profile (XML), manuell anpasst, sagt das Konfigurationsprogramm dann beim import, das der Wert nicht gültig ist.

Somit geht „VPN on Demand“ mit dem iPhone mit der FritzBox 7940 leider nicht, da keine zertifikatsbasierte Authentifizierung möglich ist, wie auch schon die c’t feststellte.

Ok, das ist also ein Feature, und kein Fehler. Oder kennt Ihr eine Möglichkeit ohne jailbreak?

Wie kann mit einer FritzBox 7490 ein VPN Zugang für iPhone, iPad oder iPadMini eingerichtet werden?

Mit der Fritzbox mit aktueller Firmware >= 5.59 kann ein VPN Zugang nun leicht im Menü:
System-Fritz!box-Benutzer-Benutzer bearbeiten eingerichtet werden.
Ganz unten auf der Seite bei VPN auf den Link VPN-Einstellungen anzeigen klicken. Bildschirmfoto 2013-10-26 um 10.36.44Es öffnet sich eine Seite mit den Einstellungen für iPhone, iPad und iPod aber auch für Android-Geräte.
Bildschirmfoto 2013-10-26 um 10.39.26
Es ist nun kein eigenes Tool mehr nötig, und alles geht in ca. 10 min.

Mit welcher Konfiguration kann man lokal per VPN auf ein OpenVPN-Server der auf OpenWtr läuft mit dem Mac Client Tunnelblick zugreifen?

Wenn der VPN Client Tunnelblick installiert ist, ein Verzeichnis anlegen mit der Extension
.tblk

z.B. OpenWRT10.tblk

In diese Verzeichnis die Datei OpenWRT10.ovpn mit folgenden Inhalt kopieren:

remote 192.168.2.223 1194
client
dev tun
proto udp
resolv-retry infinite
nobind
persist-key
persist-tun

ca ca.crt
cert thomas.crt
key thomas.key

cipher bf-cbc
comp-lzo
# Statische IP Adresse: Server 10.0.0.1 Client 10.0.0.2
ifconfig 10.0.0.2 10.0.0.1
verb 3
mute 20

Die folgenden drei Zertifikate müssen auch in diesem Verzeichnis vorhanden sein:

Inhalte de OpenWRT10 Verzeichnis für Tunnelblick
Inhalte de OpenWRT10 Verzeichnis für Tunnelblick

Dann kann mit einem doppelklick auf das Verzeichnis die VPN Verbindung aufgebaut werden. Wenn die Verbindung geklappt hat, erscheint:

Bildschirmfoto 2013-10-13 um 20.10.13

Wie können die verschlüsselungs Modus und Hash Algorithmen von OpenVPN Servern angezeigt werden?

Auf der Konsole bei laufenden OpenVPN Server können alle verfügbaren verschlüsselungs Algorithmen wie folgt angezeigt werden:

root@OpenWrt:/# /usr/sbin/openvpn — –show-ciphers

Das Ergebnis:

DES-CFB 64 bit default key (fixed)
DES-CBC 64 bit default key (fixed)
RC2-CBC 128 bit default key (variable)
RC2-CFB 128 bit default key (variable)
RC2-OFB 128 bit default key (variable)
DES-EDE-CBC 128 bit default key (fixed)
DES-EDE3-CBC 192 bit default key (fixed)
DES-OFB 64 bit default key (fixed)
DES-EDE-CFB 128 bit default key (fixed)
DES-EDE3-CFB 192 bit default key (fixed)
DES-EDE-OFB 128 bit default key (fixed)
DES-EDE3-OFB 192 bit default key (fixed)
DESX-CBC 192 bit default key (fixed)
BF-CBC 128 bit default key (variable)
BF-CFB 128 bit default key (variable)
BF-OFB 128 bit default key (variable)
RC2-40-CBC 40 bit default key (variable)
CAST5-CBC 128 bit default key (variable)
CAST5-CFB 128 bit default key (variable)
CAST5-OFB 128 bit default key (variable)
RC2-64-CBC 64 bit default key (variable)
AES-128-CBC 128 bit default key (fixed)
AES-128-OFB 128 bit default key (fixed)
AES-128-CFB 128 bit default key (fixed)
AES-192-CBC 192 bit default key (fixed)
AES-192-OFB 192 bit default key (fixed)
AES-192-CFB 192 bit default key (fixed)
AES-256-CBC 256 bit default key (fixed)
AES-256-OFB 256 bit default key (fixed)
AES-256-CFB 256 bit default key (fixed)
AES-128-CFB1 128 bit default key (fixed)
AES-192-CFB1 192 bit default key (fixed)
AES-256-CFB1 256 bit default key (fixed)
AES-128-CFB8 128 bit default key (fixed)
AES-192-CFB8 192 bit default key (fixed)
AES-256-CFB8 256 bit default key (fixed)
DES-CFB1 64 bit default key (fixed)
DES-CFB8 64 bit default key (fixed)
DES-EDE3-CFB1 192 bit default key (fixed)
DES-EDE3-CFB8 192 bit default key (fixed)
SEED-CBC 128 bit default key (fixed)
SEED-OFB 128 bit default key (fixed)
SEED-CFB 128 bit default key (fixed)

Die verfügbare Hash Algorithmen können wie folgt angezeigt werden:

/usr/sbin/openvpn — –show-digests

Folgende Liste wird geliefert:

MD5 128 bit digest size
RSA-MD5 128 bit digest size
SHA1 160 bit digest size
RSA-SHA1 160 bit digest size
DSA-SHA1-old 160 bit digest size
DSA-SHA1 160 bit digest size
RSA-SHA1-2 160 bit digest size
DSA 160 bit digest size
MD4 128 bit digest size
RSA-MD4 128 bit digest size
RSA-SHA256 256 bit digest size
RSA-SHA384 384 bit digest size
RSA-SHA512 512 bit digest size
RSA-SHA224 224 bit digest size
SHA256 256 bit digest size
SHA384 384 bit digest size
SHA512 512 bit digest size
SHA224 224 bit digest size
whirlpool 512 bit digest size

Und root@OpenWrt:/# /usr/sbin/openvpn — –show-tls

Available TLS Ciphers,
listed in order of preference:

SRP-DSS-AES-256-CBC-SHA
SRP-RSA-AES-256-CBC-SHA
DHE-DSS-AES256-GCM-SHA384
DHE-RSA-AES256-GCM-SHA384
DHE-RSA-AES256-SHA256
DHE-DSS-AES256-SHA256
DHE-RSA-AES256-SHA
DHE-DSS-AES256-SHA
AES256-GCM-SHA384
AES256-SHA256
AES256-SHA
PSK-AES256-CBC-SHA
SRP-DSS-3DES-EDE-CBC-SHA
SRP-RSA-3DES-EDE-CBC-SHA
EDH-RSA-DES-CBC3-SHA
EDH-DSS-DES-CBC3-SHA
DES-CBC3-SHA
PSK-3DES-EDE-CBC-SHA
SRP-DSS-AES-128-CBC-SHA
SRP-RSA-AES-128-CBC-SHA
DHE-DSS-AES128-GCM-SHA256
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES128-SHA256
DHE-DSS-AES128-SHA256
DHE-RSA-AES128-SHA
DHE-DSS-AES128-SHA
DHE-RSA-SEED-SHA
DHE-DSS-SEED-SHA
AES128-GCM-SHA256
AES128-SHA256
AES128-SHA
SEED-SHA
PSK-AES128-CBC-SHA
RC4-SHA
RC4-MD5
PSK-RC4-SHA
EDH-RSA-DES-CBC-SHA
EDH-DSS-DES-CBC-SHA
DES-CBC-SHA
EXP-EDH-RSA-DES-CBC-SHA
EXP-EDH-DSS-DES-CBC-SHA
EXP-DES-CBC-SHA
EXP-RC2-CBC-MD5
EXP-RC4-MD5

Wie wird ein VPN Client (Tunnelblick) auf einem Mac OS X installiert?

Um auf VPN Server von einem Mac zugreifen zu können, kann der kostenlose VPN-Client Tunnelblick verwendet werden. Also zuerst den Tunnelblick downloaden.
Ich habe die Version 3.3 verwendet.

Dann installieren, so wie hier beschrieben.

Dann die Datei config.ovpn Anlegen mit folgenden Inhalt:

dev tap
proto udp

# Hier die IP-Adresse des VPN Servers eintragen
remote 192.168.2.XXX 1194

resolv-retry infinite
nobind
mute-replay-warning

# Der Name des Static Key
secret secret.key

verb 3

und in ein Verzeichnis mit der Endung .tblk verschieben. In dieses Verzeichnis muss auch der Key (Static Key) kopiert werden.

Nach dem doppelklick auf das Verzeichnis mit der Endung .tblk startet der VPN Client. Oben rechts in der Menüleiste erscheint dann das Icon.

Wie wird ein OpenVPN Server auf OpenWrt (Version 12) auf eiem TP-WR703N Router eingerichtet?

Nach dieser Anleitung vorgehen.
Auf einem lauffähigen OpenWrt mit USB-Stick zuerst OpenVpn installieren:

opkg update
opkg install openvpn

Und einen Static Key generieren.

openvpn --genkey --secret static.key

Dieser Key muss auf allen Geräten, die im VPN Netz sind kopiert werden.
Also den Key nach /etc unter anderen Namen kopieren oder verschieben:

cp static.key /etc/openvpn.key

Die /etc/config/firewall Datei um diese Einträge am Ende ergänzen, damit der Port 1194 durchgelassen wird:

config 'rule'
option 'target' 'ACCEPT'
option 'src' 'wan'
option 'proto' 'tcp'
option 'dest_port' '22'
option '_name' 'ssh-wan'

config 'rule'
option '_name' 'openvpn-udp'
option 'src' 'wan'
option 'target' 'ACCEPT'
option 'proto' 'udp'
option 'dest_port' '1194'

Die Datei /etc/firewall.rules neu anlegen mit folgenden Inhalt:

iptables -I OUTPUT -o tap+ -j ACCEPT
iptables -I INPUT -i tap+ -j ACCEPT

iptables -I FORWARD -o tap+ -j ACCEPT
iptables -I FORWARD -i tap+ -j ACCEPT

Folgendes Start Script anlegen/etc/openvpnbridge mit folgenden Inhalt:

#!/bin/sh

#/etc/openvpnbridge
# OpenVPN Bridge Config File
# Creates TAP devices for use by OpenVPN and bridges them into OpenWRT Bridge
# Taken from http://openvpn.net/bridge.html

# Make sure module is loaded
insmod tun

# Define Bridge Interface
# Preexisting on OpenWRT
br="br0"

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

# Build tap devices
for t in $tap; do
openvpn --mktun --dev $t
done

# Add TAP interfaces to OpenWRT bridge

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

#Configure bridged interfaces

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

Und diese Datei ausführbar machen mit:
chmod +x /etc/openvpnbridge

Nun noch die VPN-Server Konfig Datei /etc/server.ovpn erstellen:

port 1194
proto udp
dev tap
keepalive 10 120
status openvpn-status.log
verb 3
# Pfad zum Static Key evl. noch dem Pfad anpassen
secret /etc/openvpn.key

Restart des OpenWrt.

Jetzt kann der Server gestartet werden mit:

openvpn /etc/server.ovpn

Wenn alles erfolgreich läuft, wird solch eine Nachricht ausgegeben.

root@OpenWrt:/etc# openvpn /etc/server.ovpn
Thu Oct 3 19:55:59 2013 OpenVPN 2.2.2 mips-openwrt-linux [SSL] [LZO2] [EPOLL] built on Mar 14 2013
Thu Oct 3 19:55:59 2013 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Thu Oct 3 19:55:59 2013 Static Encrypt: Cipher 'BF-CBC' initialized with 128 bit key
Thu Oct 3 19:55:59 2013 Static Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Thu Oct 3 19:55:59 2013 Static Decrypt: Cipher 'BF-CBC' initialized with 128 bit key
Thu Oct 3 19:55:59 2013 Static Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Thu Oct 3 19:55:59 2013 Socket Buffers: R=[163840->131072] S=[163840->131072]
Thu Oct 3 19:55:59 2013 TUN/TAP device tap0 opened
Thu Oct 3 19:55:59 2013 TUN/TAP TX queue length set to 100
Thu Oct 3 19:55:59 2013 Data Channel MTU parms [ L:1576 D:1450 EF:44 EB:4 ET:32 EL:0 ]
Thu Oct 3 19:55:59 2013 UDPv4 link local (bound): [undef]:1194
Thu Oct 3 19:55:59 2013 UDPv4 link remote: [undef]
Thu Oct 3 19:56:03 2013 Peer Connection Initiated with 192.168.X.XXX:XXXXX
Thu Oct 3 19:56:04 2013 Initialization Sequence Completed