Overview
SQL Backup Master supports the use of an FTP Server for database backup purposes.
To create an FTP Server backup destination within SQL Backup Master, click the Add toolbar button in the Destinations section of the Database Backup Editor window. When prompted to choose a destination, select FTP Server and click the Select button.
General Settings
The following settings are required in order to locate and authenticate to your FTP server:
- Server - The host name or IP address of the computer providing FTP services.
- Protocol - Choose from one of the following:
- FTP - Standard File Transfer Protocol (default port 21)
- FTPES - FTP over explicit TLS/SSL (default port 21)
- FTPS - FTP over implicit TLS/SSL (default port 990)
- SFTP - SSH File Transfer Protocol (default port 22)
- Port - The TCP port used to connect to the server. Selecting a protocol automatically fills in its default port (see above), which you can override if your server listens on a non-standard port.
- Auth type - When using SFTP protocol, allows you to choose between password and private key authentication types.
- Username - The username of your FTP server account.
- Password - The password of your FTP server account. When using the private key authentication type, optionally enter the key password.
- Private key - When using the private key authentication type, allows for entry of private key file path.
- Upload limit - Provides a means of throttling the upload speed. Use this option if you wish to conserve outgoing bandwidth.
- Timeout - Maximum amount of time (in seconds) to await a single server response. The default is 300 seconds.
Common Settings
- Remote dir - By default, SQL Backup Master will upload database backup files into your FTP user account root. Here, you can specify a directory name (e.g. "SQL Backups" or something similar) to use instead. If the directory doesn't already exist, it will be created. You can also specify multiple sub-directories by separating them with a forward slash (e.g. "Apps/SQL Backups").
- Emergency destination - When this option is enabled, the associated backup destination will be used only if all other backup destinations fail.
- Enabled backup types - Controls which backup types (Full, Differential, Transaction Log) are sent to this destination. At least one type must remain enabled.
- Delete backups older than - See Cleanup sub-topic below.
FTP/FTPS Protocol Options
The following options are available ONLY when using FTP or FTPS protocols.
- Use passive mode - Enabled by default. Uncheck this option if you need to use an active FTP connection (e.g. due to firewall configuration, etc.).
- Use extended passive mode - Enable to support extended passive mode connections.
- Accept all TLS/SSL certificates - Use this switch to bypass validation of your FTP server's security certificate. Bypassing certificate validation removes protection against man-in-the-middle interception, so SQL Backup Master asks you to confirm before enabling it, and backups that run with validation disabled complete with warnings. Enable it only for testing, or to trust a known self-signed certificate on a server you control.
- Keep-alive during transfers - When enabled, sends periodic NOOP commands during file transfers.
- TLS/SSL versions - Selects the security protocol versions eligible for securing connections (SSL 3.0, TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3). Only TLS 1.2 and TLS 1.3 are enabled by default – older protocol versions have known weaknesses and should be enabled only if your server requires them.
SFTP (SSH) Protocol Options
The following options are available ONLY when using the SFTP protocol.
- Ignore close errors - Enabled by default. Ignores errors reported by the server when closing a fully transferred file, which some SFTP servers emit spuriously.
- Trusted server fingerprints - SQL Backup Master can verify the identity of your SFTP server by comparing its SSH host key against a list of fingerprints you trust. Use the Add... and Remove buttons to manage the list. Enter the server's SHA-256 host key fingerprint (for example,
SHA256:abc123…), which you can obtain out-of-band from your server administrator or with a tool such asssh-keyscan.- If one or more fingerprints are set, the server's host key must match one of them or the connection fails – this protects you from connecting to an impostor server.
- If no fingerprint is set, the server's identity is not verified (leaving the connection vulnerable to man-in-the-middle interception), and backups to this destination complete with warnings. To clear the warning, either add the correct fingerprint (recommended) or, if you understand and accept the risk, enable "I accept the risk – don't flag this destination".
Advanced Options
- Log transfer commands - Records all FTP command interactions to the backup log. Should be used only for brief diagnostic periods.
- Resume broken uploads - Enabled by default. Causes the automatic upload retry mechanism (3 attempts) to attempt to resume broken uploads. This is done by reconnecting to the FTP server and checking to see if a partial file already exists; if so, it will be appended for improved performance.
- Use large buffers - Enabled by default. Uses larger buffer sizes during file transfers, which can improve performance in some scenarios. Consider disabling this option for very slow network connections where large block transfers may take an excessive amount of time.
Proxy Configuration
Use the optional proxy configuration fields to indicate the host, port, and authentication credentials to be used to proxy FTP connections. Note that the available proxy type options change depending upon whether you're using standard or secure FTP protocols.
Cleanup
Each time SQL Backup Master successfully uploads a database backup to a destination, it executes a clean-up procedure.
This allows you to automatically remove database backup files that are older than a specified number of days and/or hours.
Important: Cleanup operations for a given destination will only affect the database backup files associated with that destination.