Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Perl) SSH Public Key AuthenticationDemonstrates how to authenticate with an SSH server using public key authentication.
use chilkat(); # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $ssh = chilkat::CkSsh->new(); # Set some timeouts, in milliseconds: $ssh->put_ConnectTimeoutMs(5000); $ssh->put_IdleTimeoutMs(15000); # Connect to the SSH server. # The standard SSH port = 22 # The hostname may be a hostname or IP address. $hostname = "sftp.example.com"; $port = 22; $success = $ssh->Connect($hostname,$port); if ($success != 1) { print $ssh->lastErrorText() . "\r\n"; exit; } $key = chilkat::CkSshKey->new(); # Read the PEM file into a string variable: # (This does not load the PEM file into the key. The LoadText # method is a convenience method for loading the full contents of ANY text # file into a string variable.) $privKey = $key->loadText("myPrivateKey.pem"); if ($key->get_LastMethodSuccess() != 1) { print $key->lastErrorText() . "\r\n"; exit; } # Load a private key from a PEM string: # (Private keys may be loaded from OpenSSH and Putty formats. # Both encrypted and unencrypted private key file formats # are supported. This example loads an unencrypted private # key in OpenSSH format. PuTTY keys typically use the .ppk # file extension, while OpenSSH keys use the PEM format. # (For PuTTY keys, call FromPuttyPrivateKey instead.) $success = $key->FromOpenSshPrivateKey($privKey); if ($success != 1) { print $key->lastErrorText() . "\r\n"; exit; } # Authenticate with the SSH server using the login and # private key. (The corresponding public key should've # been installed on the SSH server beforehand.) $success = $ssh->AuthenticatePk("myLogin",$key); if ($success != 1) { print $ssh->lastErrorText() . "\r\n"; exit; } print $ssh->lastErrorText() . "\r\n"; print "Public-Key Authentication Successful!" . "\r\n"; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.