Sie könnten ein Framework wie NMSSH verwenden - siehe here on Github.
Hier ist ein Anwendungsbeispiel aus einem project von cagnulein genommen:
var host = "your-host.com"
var username = "user"
var password = "pass"
var session = NMSSHSession(host: host, andUsername: username)
session.connect()
if session.connected == true {
session.authenticateByPassword(password)
if session.authorized == true {
NSLog("Authentication succeeded")
}
var error = NSErrorPointer()
var response = session.channel.execute("ls", error: error)
NSLog("List of my files %@", response)
}
session.disconnect()
Swift 4 & neueste NMSSH Version
do {
let host = "example.com"
let username = "user"
let password = "pass"
let session = NMSSHSession(host: host, andUsername: username)
session?.connect()
if session?.isConnected ?? false {
session?.authenticate(byPassword: password)
if session?.isAuthorized ?? false {
print("Authentication succeeded")
}
let response = try session?.channel.execute("ls")
print("List of my files:", response)
}
session?.disconnect()
} catch {
print(error)
}
Wenn dies für eine öffentlich verbreitet App ist, es wäre wahrscheinlich nicht klug ... jemand könnte Ihre Anmeldeinformationen zurückentwickeln und dann globale Änderungen vornehmen. (Ich gehe nicht davon aus, dass Sie jeder Kopie Ihrer App separate Anmeldeinformationen geben möchten.) –