iOS: modalità supervisionata e VPN sempre attiva

4

È possibile su iOS attivare una VPN always-on senza perdite? Ho sentito che questo può essere fatto solo attraverso la modalità supervisionata e con un provider VPN che supporta "IKEv2", è corretto? Ci sono degli svantaggi di questo approccio, per l'uso quotidiano su un telefono personale?

Inoltre, la modalità supervisionata è configurabile su Windows / Linux?

    
posta oaiwjefj 11.08.2016 - 18:32
fonte

2 risposte

3

È invece possibile attivare la VPN "always-on" attivando l'opzione "Connetti su richiesta" tramite un profilo VPN sia in iOS che OSX / MacOS.

Ad esempio, alcuni fornitori di VPN commerciali lo fanno.

Tuttavia ciò si applica solo a qualsiasi tipo di VPN eseguita / configurata tramite il client nativo, e non a VPN di terze parti come OpenVPN.

Il comportamento delle VPN Connect on demand è che non appena un pacchetto TCP / IP tenta di lasciare l'iDevice, la VPN aumenta.

L'ho usato con VPNs con IPsec con IKEv1 in iOS 8 e iOS 9, quindi il requisito IKEv2 non sembra applicabile. Lo usavo anche senza in modalità supervisa.

Il file del profilo è un file xml, che può essere scritto a mano o con l'aiuto di strumenti Apple. Il file deve avere un'estensione .mobileconfig e deve essere caricato dal browser Safari in iOS.

Ad esempio, sto utilizzando questo file, per un tunnel VPN completo, IPSec "Cisco" con password di gruppo e autenticazione utente XAUTH.

Ho inserito "Cisco", perché nel mio caso i server VPN sono rispettivamente un firewall PfSense e un server Debian Linux.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>PayloadContent</key>
    <array>
        <dict>
            <key>IPSec</key>
            <dict>
                <key>AuthenticationMethod</key>
                <string>SharedSecret</string>
                <key>LocalIdentifier</key>
                <string>*group_name*</string>
                <key>LocalIdentifierType</key>
                <string>KeyID</string>
                <key>RemoteAddress</key>
                <string>*11.11.11.11*</string>
                <key>SharedSecret</key>
                <data>
                *ksjksdjksdf*
                </data>
                <key>XAuthEnabled</key>
                <integer>1</integer>
                <key>XAuthName</key>
                <string>*username*</string>
                <key>XAuthPassword</key>
                <string>*password*</string>
                <key>DisconnectOnIdle</key>
                        <integer>0</integer>
                <key>OnDemandEnabled</key>
                        <integer>1</integer>
                <key>OnDemandRules</key>
                <array>
                    <dict>
                    <key>Action</key>
                    <string>Connect</string>
                    </dict>
                </array>
            </dict>
            <key>IPv4</key>
            <dict>
                <key>OverridePrimary</key>
                <integer>1</integer>
            </dict>
            <key>PayloadDescription</key>
            <string>Configures VPN settings, including authentication.</string>
            <key>PayloadDisplayName</key>
            <string>*VPN (MyHOME)*</string>
            <key>PayloadIdentifier</key>
            <string>*com.myhome.pt.vpn*</string>
            <key>PayloadOrganization</key>
            <string>*MY-HOME*</string>
            <key>PayloadType</key>
            <string>com.apple.vpn.managed</string>
            <key>PayloadUUID</key>
            <string>D758D99C-7CCE-44DC-8CAE-B2A5FFC86985</string>
            <key>PayloadVersion</key>
            <integer>1</integer>
            <key>Proxies</key>
            <dict/>
            <key>UserDefinedName</key>
            <string>*VPN My-HOME*</string>
            <key>VPNType</key>
            <string>IPSec</string>
        </dict>
    </array>
    <key>PayloadDescription</key>
    <string>*VPN provisioning for My-HOME*</string>
    <key>PayloadDisplayName</key>
    <string>*MY-HOME*</string>
    <key>PayloadIdentifier</key>
    <string>*com.myhome.pt*</string>
    <key>PayloadOrganization</key>
    <string>*MY-HOME*</string>
    <key>PayloadRemovalDisallowed</key>
    <false/>
    <key>PayloadType</key>
    <string>Configuration</string>
    <key>PayloadUUID</key>
    <string>A8E086BE-C9B1-4EA8-9E6A-F25001E0A293</string>
    <key>PayloadVersion</key>
    <integer>1</integer>
</dict>
</plist>

Come sospetti correttamente, ci sono aspetti negativi di questo approccio. Mentre il profilo connect on demand è attivo, i normali risvegli per il recupero dei dati non sembrano essere fatti (almeno fino a iOS 9, devono ancora testare iOS 10), e come tali le chiamate FaceTime non vengono sempre ricevute mentre il dispositivo sta "dormendo" ").

La documentazione Apple su queste direttive è qui . "IPSec Dictionary Keys" è di particolare interesse.

    
risposta data 12.08.2016 - 12:48
fonte
0

Sì, hai bisogno di IKEv2 e il tuo iDevice deve essere controllato da un mac. Sempre su VPN e su richiesta non è la stessa cosa.

    
risposta data 08.11.2016 - 22:22
fonte

Leggi altre domande sui tag