Overview
What is its Purpose?
What is its Purpose?
DevOps Automation
Credential Management
Project-Based Isolation
Active/Passive Management
Working Principle
Working Principle
Connection Initiation
Connection Pool Management
Authentication
Data Communication
Connection Management
Error Management
Use Cases
Use Cases
Deployment Automation
Log and Metric Collection
System Health Check
Security Management
Technical Features and Capabilities
Basic Features
Basic Features
Script Triggering via SSH
Real-time Output and Error Collection
Project-Based Isolation
Environment-Based Configuration
Enable/Disable Control
Advanced Features
Advanced Features
Dynamic Variable Injection
Connector Integration
Centralized Event Logging
Connection Test Feature
Export/Import Feature
Connection Monitoring
Connection Parameters
Required Parameters
Required Parameters
Name
Example Value:
Production_LinuxScriptNotes: Cannot start with space, special characters should not be used
Host Name
Example Value:
ops-runner-01.apmz.localNotes: DNS resolution must be possible, must be accessible from relevant worker
SSH Port
Example Value:
22Notes: Default 22; if different port is used for security reasons, it must be opened in Network/Firewall
Username
Example Value:
deploysvcNotes: Should be a restricted user with only necessary folder/script permissions
Password
Example Value: (Encrypted value)
Notes: Required in UI; validated in test connection before saving
Optional Parameters
Optional Parameters
Description
Default Value: (Empty)
Recommended Value: Should include task, server, and risk information
Deploy To Worker
Default Value:
trueRecommended Value: Recommended to deploy only to worker pools where it will be used
Environment (Ortam)
Default Value:
DevelopmentRecommended Value: Appropriate credential selection should be made for the environment
Timeout and Connection Pool Parameters
Connection Timeout
Default: 5000 ms
Min: 1000 ms | Max: 30000 ms
Request Timeout
Default: 60000 ms
Min: 5000 ms | Max: 180000 ms
Pool Size
Default: 5
Min: 1 | Max: 20
SSH KeepAlive Interval
Default: 30000 ms
Min: 5000 ms | Max: 60000 ms
Use Cases
Service Restart After Live Deployment
Solution: Define service node as host name, systemctl restart commands as script, SSH Port 22
Expected Result: Script executes successfully, services restart sequentially
Log Archiving
Solution: Use tar and scp commands in script, give user relevant folder permission
Expected Result: Logs are collected, file path returns in Connector output when transfer completes
Security Patch Check
Solution: Select this connection in Scheduled Job, script returns yum check-update output
Expected Result: Report is transferred to SIEM via Integration Flow
Configuration Drift Detection
Solution: Script produces sha256sum output, result is processed as JSON
Expected Result: Files with detected drift are logged as warnings
Disaster Recovery Test
Solution: Create separate connection copies for host clusters, each runs health-check.sh
Expected Result: DR conditions are confirmed on success, process is stopped on error
High Resource Usage (Optional)
Solution: Script analyzes top output and restarts services
Expected Result: Automatic correction is performed when threshold is exceeded, connector log contains details
Connection Configuration
Creating New Linux Script

Configuration Steps
Navigate to Creation Page
- Go to Connection → Linux Script section from left menu.
- Click [+ Create] button at top right.
Enter Basic Information
- Set active/passive status with toggle. New connections are active by default.
- Example:
Production_LinuxScript - Enter unique name, cannot start with space.
- System automatically checks. Green checkmark: available. Red X: existing name.
- Example: “Prod node restart scripts”
- Max. 1000 characters.
- Describe the purpose of the Connection.
Environment Selection
- Select environment from dropdown menu: Development, Test, or Production.
- Different connection parameters can be defined for each environment.
Linux Server Parameters
- Host Name: Enter Linux server where script will run with fully qualified domain name (FQDN) or IP.
- SSH Port: Default is 22; if security policy is different, write new port and ensure it’s opened in firewall.
- Host access should be tested from worker; inaccessible servers will error during save.
Credentials and Script Permissions
- Username: Use service user with only necessary directory/script permissions.
- Password: Password field is tested before saving and stored encrypted in database.
- Ensure user has execute permission on target scripts.
Timeout and Connection Pool Settings
- Adjust connection timeout, request timeout, and pool size values according to workload.
- Prevent SSH session from closing by reducing keep-alive interval for long-running commands.
Security and Authentication Settings
- Fill credentials from secret manager or environment variable.
- If SSL/TLS tunneling is required, configure port forwarding through bastion host.
- Do not use root account; define only service user with necessary permissions.
Test Connection
- Click [Test Connection] button.
- Test whether connection parameters are correct.
- Success: Green confirmation message
- Failed: Error details are shown
Save
- Click [Save and Deploy] button at top right.
- Unique name
- Required fields filled
- Test connection successful (recommended)
- Connection is added to list
- Becomes available in Integration Flow and Connector steps
- Becomes active according to environment
Deleting Connection
Delete Operation
Delete Tips
Alternative: Deactivate
Exporting/Importing Connection
Export
Export
Method 1
Method 2
File Format
Date-connection-ConnectionName-export.zipExample:
13 Nov 2025-connection-Production_LinuxScript-export.zipZIP Contents
- Connection JSON file
- Metadata information
- Dependency information (e.g., certificates, key store)
Use Cases
- Backup
- Moving between environments (Test → Prod)
- Versioning
- Team or project-based sharing
Import
Import
Import Steps
- Click [Import Linux Script] button on main list.
- Select downloaded ZIP file.
- System checks: Is format valid? Is there name conflict? Are dependencies present?
- Then click [Import] button.
Import Scenarios
Connection Usage Areas
Creating and Activating Connection
- Create the connection
- Validate connection with Test Connection
- Save and activate with Save and Deploy
- Ensure connection is in Enabled state
Usage in Integration / Connector Steps
Scheduled Job Usage
Test Usage
Best Practices
Do's and Best Practices
Do's and Best Practices
SSH User Management
Good: Create separate service user for each team
Best: Give permission only to necessary commands in sudoers file according to least privilege principle
Command Versioning
Good: Store script content in VCS and copy to Connector
Best: Use IaC processes that automatically update script during pipeline
Output Management
Good: Filter critical lines
Best: Standardize output in JSON format and pass as parameter to subsequent steps in Integration Flow
Resource Consumption
Good: Spread access with scheduled jobs
Best: Continuously monitor and adjust pool size and keep-alive values according to traffic
Environment Management
Good: Create separate connection for each environment
Best: Manage all environments in single connection using Environment option, only change environment during transitions between environments
Connection Test
Good: Validate with Test Connection before saving
Best: Test after every parameter change, perform full integration test in test environment before going to production
Security Best Practices
Security Best Practices
Credential Rotation
Bastion Host Usage
Command Authorization
Credential Management
SSL/TLS Usage
Access Control
Don'ts
Don'ts
Shared Root Account
Alternative: Define role-based service users
Ignoring Firewall Restrictions
Alternative: Get opening approval from network team for host/port and set up monitoring
Not Validating Script Output
Alternative: Parse output and add conditional steps in Integration Flow
Using Production Connection in Test Environment
Alternative: Create separate connection for each environment, use environment parameter, separate connection names by adding prefix according to environment (Test_, Prod_)
Very Low Timeout Values
Alternative: Adjust timeout values according to real usage scenarios, measure network latency and set timeouts accordingly
Not Using Connection Pool
Alternative: Enable connection pool, adjust pool size according to traffic volume, set up pool monitoring
Performance Tips
Performance Tips
Script Duration Monitoring
Impact: Long scripts are detected early, scaling is performed
Output Size Control
Impact: Payload decreases, Gateway memory is optimized
Parallel Request Planning
Impact: Server resources are used balanced, SSH queues don’t form
Connection Pool Optimization
Impact: Connection opening cost decreases by 80%, response times decrease, resource usage is optimized
Timeout Values Optimization
Impact: Unnecessary waits are prevented, fast fail-over is provided, user experience improves
Connection Monitoring
Impact: Problems are proactively detected, performance bottlenecks are identified early, downtime decreases
Troubleshooting
Script Runs But Output is Empty
Script Runs But Output is Empty
Script Update
JSON Validation
Output Key Check
SSH Permission Error
SSH Permission Error
User Permissions
Sudoers Settings
Host Fingerprint
Connection Timeout
Connection Timeout
Network Check
System Health
Timeout Settings
Log Review
Authentication Failed
Authentication Failed
Credentials
User Status
Permission Check
Certificate Check
Pool Exhausted
Pool Exhausted
Pool Size
Connection Check
Idle Timeout
Metric Monitoring
Connection Test Successful But Integration Flow Errors
Connection Test Successful But Integration Flow Errors
Enable Toggle
Connection Selection
Connection Deploy
Flow/Job Deploy
Log Check
Frequently Asked Questions (FAQ)
Can different projects share the same Linux Script connection?
Can different projects share the same Linux Script connection?
Is automatic retry performed when script fails?
Is automatic retry performed when script fails?
How are passwords stored?
How are passwords stored?
What command does Test Connection execute?
What command does Test Connection execute?
How do I use script output in other steps?
How do I use script output in other steps?
Can I use the same connection in multiple Integration Flows?
Can I use the same connection in multiple Integration Flows?
Is using connection pool mandatory?
Is using connection pool mandatory?
Should I create different connections for Test and Production?
Should I create different connections for Test and Production?
Test Connection is successful but not working in Integration Flow, why?
Test Connection is successful but not working in Integration Flow, why?
- Connection enable toggle may be passive
- Different connection may be selected in Integration step
- Connection may not be deployed
- Integration Flow may not be redeployed yet

