SECURE PIPES 2 Guida per l'utente

Le schermate mostrano l’interfaccia in inglese; i diagrammi seguono la lingua della guida. I nomi dei controlli possono variare in base alla lingua scelta nell’app.

AppleScript — Riferimento dei comandi

Le descrizioni dei comandi e gli esempi da copiare corrispondono alla sezione Automazione dell’app per Mac. I riferimenti includono i comandi esistenti e le aggiunte della versione 2.0.17.

Riferimento dei comandi AppleScript

Spiegazioni e script completi sono sincronizzati dalla documentazione integrata nell’app Mac. Sostituisci nomi e ID di esempio prima di eseguire. Gli esempi possono cambiare connessioni e impostazioni reali: non eseguire l’intera pagina come script.

Riferimento dei comandi

Usa la frase di comando mostrata. Racchiudi tra virgolette il nome della connessione o il tag del gruppo.

start

Avvia Secure Pipes senza mostrare la finestra.

tell application "Secure Pipes" to start

show

Mostra la finestra di Secure Pipes.

tell application "Secure Pipes" to show

hide

Nasconde la finestra lasciando Secure Pipes e le connessioni in esecuzione.

tell application "Secure Pipes" to hide

shutdown

Chiude Secure Pipes e interrompe le connessioni attive.

tell application "Secure Pipes" to shutdown

list connections

Elenca le connessioni salvate.

tell application "Secure Pipes" to list connections

list connection groups

Elenca i tag usati come gruppi di connessioni.

tell application "Secure Pipes" to list connection groups

connect connection "Build Tunnel (Local Forward)"

Avvia una connessione salvata.

tell application "Secure Pipes" to connect connection "Build Tunnel (Local Forward)"

disconnect connection "Build Tunnel (Local Forward)"

Interrompe una connessione salvata.

tell application "Secure Pipes" to disconnect connection "Build Tunnel (Local Forward)"

connection status "Build Tunnel (Local Forward)"

Legge lo stato attuale della connessione.

tell application "Secure Pipes" to connection status "Build Tunnel (Local Forward)"

connect group "engineering"

Avvia un gruppo con le impostazioni salvate.

tell application "Secure Pipes" to connect group "engineering"

disconnect group "engineering"

Arresta il gruppo e le connessioni dei membri.

tell application "Secure Pipes" to disconnect group "engineering"

Usa l’UUID della connessione negli script perché continuino a funzionare dopo una rinomina. Sono supportati anche nomi univoci e nomi completi con il tipo. In caso di nomi duplicati, usa un UUID.

Desktop remoto

list remote desktops

Elenca le connessioni RDP/VNC salvate.

tell application "Secure Pipes" to list remote desktops

get remote desktop "<ID>"

Leggi una connessione per ID, senza credenziali.

tell application "Secure Pipes" to get remote desktop "DESKTOP-ID"

create remote desktop <JSON>

Crea con name e values. Usa hostProfileUUID per un host predefinito.

tell application "Secure Pipes" to create remote desktop "{\"name\":\"Office desktop\",\"values\":{\"hostProfileUUID\":\"PRESET-HOST-ID\",\"remoteDesktopType\":\"rdp\",\"remoteDesktopUsername\":\"alice\",\"remoteHost\":\"192.168.1.91\"}}"
tell application "Secure Pipes" to create remote desktop "{\"name\":\"Office VNC\",\"values\":{\"hostProfileUUID\":\"PRESET-HOST-ID\",\"remoteDesktopType\":\"vnc\",\"remoteDesktopVNCOpenMode\":\"screenSharing\"}}"

update remote desktop <JSON>

Aggiorna per id; name e values sono facoltativi.

tell application "Secure Pipes" to update remote desktop "{\"id\":\"DESKTOP-ID\",\"values\":{\"remoteDesktopOptions\":{\"screen mode id\":1,\"audiomode\":2}}}"

open remote desktop "<ID>"

Avvia il tunnel SSH se necessario, poi apri il client RDP/VNC salvato.

tell application "Secure Pipes" to open remote desktop "DESKTOP-ID"

delete remote desktop "<ID>"

Elimina una connessione disconnessa tramite ID.

tell application "Secure Pipes" to delete remote desktop "DESKTOP-ID"

I nomi utente possono essere scritti, ma non vengono mai restituiti. Imposta password SSH e file di identità in Secure Pipes; inserisci la password del desktop nel client.

Piani attività

Creare e controllare azioni pianificate. Le letture non restituiscono password o contenuto delle chiavi private.

list task plans

Elencare piani come JSON privo di dati sensibili.

tell application "Secure Pipes" to list task plans

get task plan "work-start"

Leggere per ID un piano come JSON privo di dati sensibili.

tell application "Secure Pipes" to get task plan "work-start"

create task plan <JSON>

Creare piano validato con ID connessione/gruppo nelle azioni, senza credenziali.

tell application "Secure Pipes"
    create task plan "{\"id\":\"work-start\",\"hour\":9,\"minute\":0,\"repeat\":2,\"actions\":[{\"type\":\"start_group\",\"id\":\"work\"}]}"
end tell

update task plan <JSON>

Aggiornare con ID esistente e campi da cambiare.

tell application "Secure Pipes"
    update task plan "{\"id\":\"work-start\",\"hour\":8,\"minute\":45,\"repeat\":2,\"actions\":[{\"type\":\"start_group\",\"id\":\"work\"}]}"
end tell

set task plan enabled "work-start"

Attivare/disattivare senza cambiare calendario. Parametro true per impostazione predefinita.

tell application "Secure Pipes" to set task plan enabled "work-start" enabled false
tell application "Secure Pipes" to set task plan enabled "work-start" enabled true

run task plan "work-start"

Eseguire subito un piano e restituire il risultato JSON.

tell application "Secure Pipes" to run task plan "work-start"

delete task plan "work-start"

Eliminare piano salvato per ID.

tell application "Secure Pipes" to delete task plan "work-start"

JSON supporta repeat 0–6, giorni personalizzati, intervalli ISO 8601 o YYYY-MM-DD e azioni validate. Prima ottieni gli ID con list connections e list connection groups.

Regole e scenari d’uso

Usa un ID o un nome univoco per modificare una regola o cambiare scenario. Il cambio interrompe e ristabilisce le connessioni attive. Eliminare uno scenario conserva le sue regole; quelle senza altri scenari diventano comuni.

list proxy rules

Elenca le regole in ordine con ID, nome, stato di attivazione, azione e ID degli scenari.

tell application "Secure Pipes" to list proxy rules

list scenarios

Elenca gli scenari, incluso Universal, con ID, nome e stato attivo.

tell application "Secure Pipes" to list scenarios

current scenario

Mostra il nome dello scenario attualmente attivo.

tell application "Secure Pipes" to current scenario

switch scenario "Office"

Cambia scenario tramite ID o nome univoco e riconnette le connessioni interessate con le regole selezionate.

tell application "Secure Pipes" to switch scenario "Office"

enable proxy rule "Work websites"

Attiva una regola tramite ID o nome univoco.

tell application "Secure Pipes" to enable proxy rule "Work websites"

disable proxy rule "Work websites"

Disattiva una regola senza eliminarla.

tell application "Secure Pipes" to disable proxy rule "Work websites"

set rule scenarios "Work websites" scenarios {"Office", "Travel"}

Sostituisce gli scenari assegnati a una regola. Universal la rende una regola universale.

tell application "Secure Pipes" to set rule scenarios "Work websites" scenarios {"Office", "Travel"}

create scenario "Travel"

Crea uno scenario con nome univoco e restituisce il suo ID.

tell application "Secure Pipes" to create scenario "Travel"

rename scenario "Travel" to "Mobile work"

Rinomina uno scenario mantenendo le assegnazioni delle regole.

tell application "Secure Pipes" to rename scenario "Travel" to "Mobile work"

delete scenario "Travel"

Elimina uno scenario senza eliminare le sue regole. Le regole senza altri scenari diventano universali.

tell application "Secure Pipes" to delete scenario "Travel"

Esempio completo

tell application "Secure Pipes"
    set savedRules to list proxy rules
    set savedScenarios to list scenarios
    set selectedScenario to current scenario
    switch scenario "Office"
    enable proxy rule "Work websites"
    disable proxy rule "Work websites"
    set rule scenarios "Work websites" scenarios {"Office", "Travel"}
    set rule scenarios "Work websites" scenarios {}
    set newScenarioID to create scenario "Travel"
    rename scenario newScenarioID to "Mobile work"
    delete scenario newScenarioID
end tell

Proxy e condivisione di rete

La condivisione usa indirizzo, porta e autenticazione salvati. Se necessario, all’avvio si apre la finestra di conferma. La modalità gateway richiede ancora la conferma dei rischi e l’autorizzazione di macOS.

list proxy servers

Elenca i server proxy configurati con ID, nome, tipo e indirizzo, senza credenziali.

tell application "Secure Pipes" to list proxy servers

transparent proxy status

Mostra lo stato del proxy trasparente, dell'estensione di sistema e la corrispondenza delle versioni.

tell application "Secure Pipes" to transparent proxy status

initialize transparent proxy

Installa o ripara l'estensione di sistema. macOS potrebbe richiedere l'autorizzazione; il proxy trasparente non viene avviato.

tell application "Secure Pipes" to initialize transparent proxy

start transparent proxy

Avvia il proxy trasparente con le regole di instradamento correnti quando l'estensione è pronta.

tell application "Secure Pipes" to start transparent proxy

stop transparent proxy

Arresta il proxy trasparente. La condivisione di rete dipende da questo servizio.

tell application "Secure Pipes" to stop transparent proxy

network sharing status

Mostra lo stato della condivisione e del gateway. In esecuzione mostra le modalità attive; da fermo, quelle salvate.

tell application "Secure Pipes" to network sharing status

set sharing modes "both"

Seleziona proxy, gateway, entrambi o disattivato per il prossimo avvio manuale. Arresta la condivisione prima di cambiare modalità.

tell application "Secure Pipes" to set sharing modes "both"

start network sharing

Avvia le modalità selezionate con indirizzo, porta e autenticazione salvati. Potrebbe essere necessaria una conferma.

tell application "Secure Pipes" to start network sharing

stop network sharing

Arresta il gateway e il listener del proxy condiviso. Il proxy trasparente resta in esecuzione.

tell application "Secure Pipes" to stop network sharing

Esempio completo

tell application "Secure Pipes"
    set servers to list proxy servers
    set proxyState to transparent proxy status
    initialize transparent proxy
    start transparent proxy
    set sharing modes "both"
    set sharingState to network sharing status
    start network sharing
    stop network sharing
    stop transparent proxy
end tell

Connessioni, attività e registri

Usa gli ID degli elenchi per individuare esattamente le voci. I dettagli vengono restituiti come testo JSON.

group status "engineering"

Mostra il risultato del gruppo e lo stato di ogni membro.

tell application "Secure Pipes" to group status "engineering"

wait for connection "Build Tunnel" timeout 30

Attende che la connessione sia pronta; errori e timeout vengono segnalati.

tell application "Secure Pipes" to wait for connection "Build Tunnel" timeout 30

preview route "example.com" port 443

Prevede la regola locale nello scenario corrente; non verifica la connettività.

tell application "Secure Pipes" to preview route "example.com" port 443 application "com.apple.Safari" transport "TCP"

test proxy server "proxy-id"

Verifica un proxy salvato e restituisce risultato, motivo e durata.

tell application "Secure Pipes" to test proxy server "proxy-id"

list active flows "PROXY"

Mostra l’attività del proxy; LAN mostra la condivisione e ALL entrambe.

tell application "Secure Pipes" to list active flows "PROXY"

list active flows "LAN"

Mostra le connessioni della condivisione di rete.

tell application "Secure Pipes" to list active flows "LAN"

end active flow "flow-id"

Chiude un flusso connesso tramite il suo ID.

tell application "Secure Pipes" to end active flow "flow-id"

list recent logs

Mostra fino a 200 registri recenti privi di dati sensibili, dal più recente.

tell application "Secure Pipes" to list recent logs

log detail "log-id"

Mostra il record completo di un registro recente tramite ID.

tell application "Secure Pipes" to log detail "log-id"

Esempi nel Terminale

Esegui un comando AppleScript da Terminale con osascript. macOS potrebbe chiederti di consentire a Terminale di controllare Secure Pipes.

Elencare i gruppi di connessioni

osascript -e 'tell application "Secure Pipes" to list connection groups'

Risultato di esempio

engineering, on-call

I tag determinano i membri del gruppo. L’avvio segue ordine, modalità parallela o sequenziale e gestione degli errori salvati.

Avviare o interrompere un gruppo

osascript -e 'tell application "Secure Pipes" to connect group "engineering"'
osascript -e 'tell application "Secure Pipes" to disconnect group "engineering"'

Consultare e controllare una connessione

osascript -e 'tell application "Secure Pipes" to list connections'
osascript -e 'tell application "Secure Pipes" to connection status "Build Tunnel (Local Forward)"'
osascript -e 'tell application "Secure Pipes" to connect connection "Build Tunnel (Local Forward)"'

Eseguire da Terminale

Salva il file e passa il relativo percorso a osascript:

osascript ~/Scripts/Connect\ Tunnel.applescript

Esegui da un file script

Salva un esempio con estensione .applescript ed eseguilo con Script Editor o osascript.

Connettersi per nome

Sostituisci il nome di esempio con un nome restituito da list connections.

on run
    -- Leave this blank to skip opening a URL after connecting.
    set postConnectURL to ""
    -- Get the saved connections.
    tell application "Secure Pipes"
        set availableConnections to list connections
    end tell
    if (count of availableConnections) is 0 then return

    set selectedConnection to choose from list availableConnections
    if selectedConnection is false then return
    set targetConnection to item 1 of selectedConnection

    -- Start the selected connection and wait up to 90 seconds.
    tell application "Secure Pipes"
        connect connection targetConnection
        set currentState to "connecting"
        repeat with attempt from 1 to 90
            set currentState to connection status targetConnection
            if currentState is "connected" then exit repeat
            if currentState is "authentication failed" or currentState is "unknown host key" or currentState is "host key changed" or currentState is "invalid" or currentState is "error" then exit repeat
            delay 1
        end repeat
    end tell
    -- Open the URL only if the connection comes up.
    if currentState is "connected" and postConnectURL is not "" then
        open location postConnectURL
    end if
    return currentState
end run

Scegliere e avviare un gruppo

Elenca i tag disponibili, consente di sceglierne uno e avvia tutte le connessioni del gruppo.

on run
    -- Get the groups saved in Secure Pipes.
    tell application "Secure Pipes"
        set availableGroups to list connection groups
    end tell
    -- Let the user know if there are no groups to choose from.
    if (count of availableGroups) is 0 then
        display dialog "No tagged connection groups are available." buttons {"OK"}
        return
    end if

    -- Ask which group to start.
    set selectedGroup to choose from list availableGroups
    if selectedGroup is false then return
    set targetGroup to item 1 of selectedGroup

    tell application "Secure Pipes"
        connect group targetGroup
    end tell
end run

Permesso di automazione

Quando macOS lo richiede, consenti all’app che esegue lo script, ad esempio Terminale o Script Editor, di controllare Secure Pipes in Impostazioni di Sistema > Privacy e sicurezza > Automazione.

Basato su Secure Pipes 2.0.17 · Aggiornato il 9 novembre 2026