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
(DataFlex) SSH Commands to Sophos Router Device ConsoleDemonstrates how to establish an SSH session with a Sophos XG router and send commands in a device console session.
Use ChilkatAx-win32.pkg Procedure Test Handle hoSsh Boolean iSuccess Integer iChannelNum String sTemp1 // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatSsh)) To hoSsh If (Not(IsComObjectCreated(hoSsh))) Begin Send CreateComObject of hoSsh End Get ComConnect Of hoSsh "172.16.16.16" 22 To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSsh To sTemp1 Showln sTemp1 Procedure_Return End // Authenticate using login/password: Get ComAuthenticatePw Of hoSsh "myLogin" "myPassword" To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSsh To sTemp1 Showln sTemp1 Procedure_Return End // Start a shell session. // (The QuickShell method was added in Chilkat v9.5.0.65) Get ComQuickShell Of hoSsh To iChannelNum If (iChannelNum < 0) Begin Get ComLastErrorText Of hoSsh To sTemp1 Showln sTemp1 Procedure_Return End // The Sophos router will send this initial prompt: // Main Menu // // 1. Network Configuration // 2. System Configuration // 3. Route Configuration // 4. Device Console // 5. Device Management // 6. VPN Management // 7. Shutdown/Reboot Device // 0. Exit // // Select Menu Number [0-7]: Get ComChannelReceiveUntilMatch Of hoSsh iChannelNum "Select Menu Number" "utf-8" True To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSsh To sTemp1 Showln sTemp1 Procedure_Return End // Show what we received so far: Get ComGetReceivedText Of hoSsh iChannelNum "utf-8" To sTemp1 Showln sTemp1 // Send "4" <RETURN> to mimic typing in a shell session. Get ComChannelSendString Of hoSsh iChannelNum "4" + (character(10)) "utf-8" To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSsh To sTemp1 Showln sTemp1 Procedure_Return End // We should get a "console>" prompt. Get ComChannelReceiveUntilMatch Of hoSsh iChannelNum "console>" "utf-8" True To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSsh To sTemp1 Showln sTemp1 Procedure_Return End Get ComGetReceivedText Of hoSsh iChannelNum "utf-8" To sTemp1 Showln sTemp1 // Send a command and get the output.. Get ComChannelSendString Of hoSsh iChannelNum "dnslookup host google.com" + (character(10)) "utf-8" To iSuccess Get ComChannelReceiveUntilMatch Of hoSsh iChannelNum "console>" "utf-8" True To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSsh To sTemp1 Showln sTemp1 Procedure_Return End Get ComGetReceivedText Of hoSsh iChannelNum "utf-8" To sTemp1 Showln sTemp1 // Send another command and get the output, and so on... Get ComChannelSendString Of hoSsh iChannelNum "dnslookup host microsoft.com" + (character(10)) "utf-8" To iSuccess Get ComChannelReceiveUntilMatch Of hoSsh iChannelNum "console>" "utf-8" True To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSsh To sTemp1 Showln sTemp1 Procedure_Return End Get ComGetReceivedText Of hoSsh iChannelNum "utf-8" To sTemp1 Showln sTemp1 Send ComDisconnect To hoSsh End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.