Karmak - FTP Design and Setup
- 1 Objective
- 1.1 Karmak FTP Design and Setup
- 1.2 Key Information
- 1.3 WS_FTP Server Setup and Configuration
- 1.4 Key Points
- 1.4.1 Network Configuration
- 1.4.2 Accessing WS_FTP
- 1.4.3 Console Access
- 1.4.4 VPN Connections for Access
- 1.5 Network Diagram
- 1.6 Troubleshooting
- 1.7 Customer Points of Contact for WS_FTP License Renewal
Objective
This document provides a detailed overview of the Adeptia-managed Karmak FTP server, including its design, setup, and key information.
Karmak FTP Design and Setup
Karmak, an Adeptia AC Cloud customer, requires the use of traditional FTP as one of their integrated applications does not support the SFTP protocol. FTP is integral to the Karmak solution, facilitating all workflows and transactions.
To address this need, we have set up a traditional FTP system using a Virtual Machine in Azure. The FTP server of choice is WS_FTP, which comes with PostgreSQL embedded as its database.
In this setup, we have acquired the WS_FTP license from Karmak under a "BYOL" model. Additionally, we have painstakingly replicated the settings previously used by Karmak in their legacy AIS system.
Key Information
Attribute | Details |
---|---|
FTP Tool | WS_FTP |
Hosting | Adeptia Hosted VM named "ftpkarmak1" |
VM Type | Standard B2as v2 (2 vCPUs, 8 GiB memory) |
Operating System | Windows Server 2022 Datacenter |
Availability Zone | East US 2 (Zone 3) |
Public IP Address | 40.75.122.71 |
Private IP Address | 10.0.3.5 |
Monitoring Tool | BlueMetador by Connectira |
Network Security Group | karmak1-bastion-vm-nsg |
Allowed IPs for RDP (port 3389) | US and India office IPs |
Allowed IPs for FTP (port 21) | Karmak IPs |
Outbound Traffic | Default and unrestricted |
Karmak's entire VNet | Permitted |
FTP Storage: An additional disk is attached to the virtual machine named "ftpkarmak1".
Attribute | Details |
---|---|
Disk Name | ftpkarmak1_FTP |
Storage Type | Premium SSD LRS |
Size | 128 GB |
Encryption Type | Platform-managed (Microsoft) key |
Backup Frequency | Daily |
Backup Retention | 1 Month |
Steps to establish a connection to the FTPKarmak1 VM and access the FTP drive, WS_FTP Application, and Database details:
Initiate the "MSTSC" command by entering it in the Run dialog and hitting Enter.
Enter the Public IP Address of the VM, which is "40.75.122.71", and proceed by clicking on Connect.
Utilize the credentials stored in "MyGlue" under Password → Karmak → ftpkarmak1, then click OK.
Proceed to This PC to access the FTP Drive (E:).
The directory structure in this location mirrors the one present on the Karmak AIS FTP server.
Each directory or folder is "NFS mounted" to be utilized within Linux-based AC Cloud containers (Pod).
By accessing any Pod Shell in the Karmak Prod or Sanbox namespace within Lens, you can observe the following folder paths: "/mnt/development" for AC Sandbox and "/mnt/production" for AC Production. For detailed instructions on mounting, please refer to the documentation.
WS_FTP Server Setup and Configuration
The WS_FTP Server has been deployed on the Virtual Machine “ftpkarmak1” to function as an FTP Server application. The installation and configuration processes strictly adhered to the guidelines provided in the WS_FTP Online Documentation.
Additionally, PostgreSQL Version 14 has been integrated to serve as the database for this application. This database was automatically installed alongside WS_FTP. All crucial information, including the Master Admin credentials, is securely stored in “PostgreSQL Master Admin” within “MyGlue”.
Key Points
License Model: The WS_FTP license, provided by Karmak under a "BYOL" (Bring Your License) model, is utilized.
License Renewal: This license undergoes annual renewal.
Current License Activation Date: 11/22/2023
License Expiry Date: 11/21/2024 (A reminder is set for 1st November 2024).
Backup and Setup:
The backup from the Karmak AIS FTP setup has been imported.
The Adeptia-hosted FTP mirrors the AIS setup in terms of folder structure and users.
The AIS FTP backup is now operational in the Adeptia-hosted FTP.
AIS notifications are active in the Adeptia-hosted FTP.
Network Configuration
VPN Connection: A site-to-site VPN connection has been established with our client Karmak from AC4 in Azure.
VNG Name:
karmak1vng
Connections:
karmak1
(Production) andkarmak2-dev
(Non-Production)The Production network is completely segregated from the Non-Production network, necessitating dual connections.
NATing: Implemented within the Production connection (10.0.0.0/20 → 10.100.16.0/20).
Local Network Gateway: Multiple IP addresses of Karmak's partners have been added to the Local Network Gateway (
karmak1-lng
) to enable Adeptia Hosted AC Connection to FTP Servers.
Accessing WS_FTP
To locate WS_FTP, search for "WS_FTP" in the search box within the
karmak1
VM.WS_FTP Web Management Console URLs:
Local Machine: http://127.0.0.1/WSFTPSVR/login.asp
General Access: http://10.0.3.5/wsftpsvr/login.asp
User Credentials: Stored in “MyGlue” under the Karmak folder →
Karmak_WS_FTP
.
Console Access
In the console, you can view Host Details, Users, Folders, and other relevant information. Since the settings are imported from the Karmak-hosted WS_FTP, it is advised to avoid unnecessary changes and proceed with caution.
User Access: Karmak users access WS_FTP via the web console using the following URL: http://10.0.3.5/wsftpsvr/login.asp with the admin@admin user credentials (shared with them).
VPN Connections for Access
Non-NATed VPN Connection:
http://10.0.3.5/wsftpsvr/login.asp
NATed VPN Connection:
http://10.100.19.5/wsftpsvr/login.asp
This access is crucial for regularly updating partner data, configurations, and folders when adding, removing, or modifying partners.
Network Diagram
(A network diagram should be included here to visually represent the network setup and connections.)
Troubleshooting
Issues: Error in processing with the WSFTP server (Reference Zendesk Ticket: 15198)
To Remove the pasv ports when using PostgreSQL using Product Document link: https://community.progress.com/s/article/Removing-Host-Firewall-Passive-Connection-Settings
Logged into the virtual machine (ftpkarmak1).
Opened the pgAdmin 4 application.
Logged in to the PostgreSQL Master Admin using the master password.
Navigated to the database: ws_ftp_server > schemas > public > pasv_ports.
Changed the value under the pasv_port column from 21 to an empty value ''
Customer Points of Contact for WS_FTP License Renewal
Ojas Panwar at opanwar@karmak.com
Bob Bremer at bbremer@karmak.com