Skip to content

CyberFM

  • Home
  • FileMaker Security
  • Disclaimer
  • Privacy Policy
  • Home
  • Jacob Taylor
  • Install FileMaker Server 2023 on Linux
  • Jacob Taylor

Install FileMaker Server 2023 on Linux

Dimitris Kokoutsidis 2 years ago3 months ago56 mins0

A Comprehensive Guide

Jacob Taylor, May 5, 2023, FileMaker Training Videos

Table of Contents

  • Introduction
  • Prerequisites
    • Supported Linux Distributions
    • System Requirements
    • Preparing Your Linux Environment
  • Downloading FileMaker Server 2023
    • Accessing the Claris Customer Console
    • Downloading the Installer
  • Setting Up Your Linux Server
    • Choosing a Hosting Environment
    • Creating an EC2 Instance on AWS
      • Step 1: Log in to AWS Console
      • Step 2: Navigate to EC2 Dashboard
      • Step 3: Launch a New Instance
      • Step 4: Choose an Amazon Machine Image (AMI)
      • Step 5: Choose an Instance Type
      • Step 6: Configure Instance Details
      • Step 7: Add Storage
      • Step 8: Add Tags (Optional)
      • Step 9: Configure Security Groups
      • Step 10: Review and Launch
    • Configuring Security Groups in Detail
      • Understanding Security Group Rules
      • Setting Up Inbound Rules
  • Connecting to Your Server via SSH
    • Step 1: Setting Permissions on Key Pair
    • Step 2: Connecting Using SSH
  • Preparing the Linux Server
    • Updating System Packages
      • Step 1: Update Package Lists
      • Step 2: Upgrade Installed Packages
      • Step 3: Reboot the Server (If Necessary)
    • Installing Essential Utilities
      • Installing Unzip Utility
      • Installing Other Useful Tools (Optional)
  • Downloading and Preparing the FileMaker Server Installer
    • Step 1: Download the Installer Directly on the Server
    • Step 2: Verify the Download
    • Step 3: Extract the Installer
  • Installing FileMaker Server 2023
    • Step 1: Run the Installer
    • Step 2: Accept the License Agreement
    • Step 3: Configure Installation Settings
      • Setting the Admin Console Credentials
      • Setting the 4-Digit PIN
    • Step 4: Complete the Installation
  • Post-Installation Configuration
    • Accessing the Admin Console
      • Step 1: Open a Web Browser
      • Step 2: Bypass Security Warning (If Necessary)
      • Step 3: Log In to the Admin Console
    • Uploading SSL Certificates
      • Understanding SSL Certificates
      • Generating a Certificate Signing Request (CSR)
      • Submitting CSR to Certificate Authority (CA)
      • Importing SSL Certificate into FileMaker Server
    • Configuring Backup Schedules
      • Understanding Backup Types
      • Creating a Basic Backup Schedule
      • Setting Up Progressive Backups
    • Adjusting Server Performance Settings
      • Modifying Cache Size
      • Enabling or Disabling Features
  • Enabling Web Publishing and WebDirect
    • Understanding Web Publishing Engine (WPE)
    • Enabling WPE in Admin Console
    • Testing WebDirect Access
  • Advanced Configuration
    • Managing Server-Side Plugins
      • Understanding Plugin Types and Locations
      • Installing Plugins for Server-Side Scripts
      • Installing Plugins for Web Publishing Engine
      • Enabling Plugins in Admin Console
    • Configuring External Authentication
      • Supported External Authentication Methods
      • Setting Up OAuth Providers
      • Mapping External Groups to Privilege Sets
    • Enhancing Security Settings
      • Enforcing Secure Connections
      • Restricting Admin Console Access
      • Disabling Unused Services
  • Disaster Recovery and Backups
    • Understanding Snapshot-Based Backups
    • Setting Up EBS Snapshots in AWS
      • Step 1: Navigate to AWS EC2 Dashboard
      • Step 2: Access Lifecycle Manager
      • Step 3: Create a Snapshot Lifecycle Policy
      • Step 4: Configure Policy Details
      • Step 5: Review and Create Policy
    • Restoring from Snapshots
      • Step 1: Locate the Desired Snapshot
      • Step 2: Create a Volume from the Snapshot
      • Step 3: Attach Volume to an Instance
      • Step 4: Mount the Volume on the Server
      • Step 5: Restore Files from the Snapshot
  • Troubleshooting and Maintenance
    • Common Issues and Solutions
      • Issue: Cannot Access Admin Console
      • Issue: Web Publishing Engine Fails to Start
      • Issue: Plugins Not Loading
      • Issue: FileMaker Server Services Not Running
    • Monitoring Server Performance
      • Using Admin Console Dashboard
      • Accessing Log Files
      • Setting Up Email Notifications
    • Updating FileMaker Server
      • Step 1: Check for Updates
      • Step 2: Download the Updater
      • Step 3: Install the Update
      • Step 4: Verify the Update
    • Uninstalling FileMaker Server
      • Step 1: Stop FileMaker Server
      • Step 2: Uninstall FileMaker Server
      • Step 3: Remove Residual Files
      • Step 4: Remove Configuration Files
      • Step 5: Restart Your Server
  • Conclusion
  • References

Introduction

FileMaker Server 2023 is a robust, scalable server software designed to host and manage your FileMaker applications securely and efficiently. Running FileMaker Server on Linux provides a cost-effective, high-performance solution, especially when leveraging cloud platforms like Amazon Web Services (AWS). This in-depth guide covers every aspect of installing FileMaker Server 2023 on a Linux server, from initial setup to advanced configurations, ensuring you have a comprehensive understanding of the entire process.


Prerequisites

Before embarking on the installation, it’s crucial to ensure that your Linux environment meets the necessary hardware and software requirements. Proper preparation will streamline the installation process and help avoid potential issues.

Supported Linux Distributions

FileMaker Server 2023 supports the following Linux distributions:

  • Ubuntu Server 20.04 LTS (Focal Fossa)
  • Ubuntu Server 22.04 LTS (Jammy Jellyfish)

These are Long Term Support (LTS) releases, providing stability and security updates for an extended period.

System Requirements

  • Processor: Intel or AMD x86-64 processor (64-bit)
    • Multi-core processors are recommended for better performance.
  • Memory (RAM):
    • Minimum: 8 GB
    • Recommended: 16 GB or more, especially for larger deployments or heavy workloads.
  • Storage:
    • Type: Solid-State Drive (SSD) for optimal performance.
    • Capacity: At least 80 GB of free space.
      • Note: Additional space may be required depending on the size of your databases and backups.
  • Network:
    • Bandwidth: Reliable high-speed internet connection.
    • IP Address: Static public IP recommended for consistent server accessibility.
  • Java:
    • Version: OpenJDK 17
    • Note: On Linux, Java is installed automatically during the FileMaker Server installation process.
  • Firewall and Security:
    • Ability to configure firewall settings to open necessary ports.
    • Understanding of security best practices for server environments.

Preparing Your Linux Environment

  • Administrative Access:
    • Ensure you have root or sudo privileges on your Linux server.
    • Familiarity with command-line operations is essential.
  • Domain Name (Optional but Recommended):
    • If you plan to secure your server with SSL certificates, having a domain name (e.g., fmserver.yourdomain.com) pointing to your server’s IP address is recommended.
    • Configure DNS settings to map your domain or subdomain to your server’s public IP.
  • Local Machine Requirements:
    • A computer with SSH client software to connect to the Linux server.
      • For Windows: PuTTY or Windows Subsystem for Linux (WSL)
      • For macOS/Linux: Terminal application
  • Time Synchronization:
    • Ensure the server’s system clock is accurate and synchronized, preferably using NTP (Network Time Protocol).
      • Incorrect system time can cause issues with SSL certificates and authentication.

Downloading FileMaker Server 2023

Before installing, you need to obtain the correct installer package for your Linux distribution and architecture.

Accessing the Claris Customer Console

  1. Visit the Claris Customer Console:
    • Navigate to Claris Customer Console.
  2. Log In:
    • Enter your Claris ID (email) and password.
    • If you don’t have an account, you’ll need to create one associated with your FileMaker license.
  3. Navigate to Downloads:
    • Once logged in, find the Downloads or Software Downloads section.
    • This area provides access to software installers and license information associated with your account.

Downloading the Installer

  1. Select the Correct Version:
    • Locate FileMaker Server 2023 for Linux.
    • Ensure you choose the installer that matches your Linux distribution and architecture:
      • Ubuntu 20.04 LTS or Ubuntu 22.04 LTS
      • Architecture: amd64 for Intel/AMD 64-bit processors or arm64 for ARM processors.
  2. Copy the Download Link:
    • Right-click on the download link/button and select Copy Link Address or Copy Link Location.
    • This URL will be used to download the installer directly onto your Linux server using command-line tools like wget.
    • Note: The download link is often a long URL with tokens and may expire after a certain period. Ensure you use it promptly.

Setting Up Your Linux Server

Setting up the server involves choosing the right hosting environment and configuring the server instance according to FileMaker Server’s requirements.

Choosing a Hosting Environment

While you can install FileMaker Server on physical hardware or a virtual machine, cloud platforms offer flexibility and scalability. AWS is a popular choice due to its robust services and global infrastructure.

  • Alternatives to AWS:
    • Microsoft Azure
    • Google Cloud Platform (GCP)
    • DigitalOcean
    • On-Premises Servers

Ensure that whichever environment you choose, it meets the system requirements and allows you to configure network settings as needed.

Creating an EC2 Instance on AWS

Step 1: Log in to AWS Console

  • Navigate to AWS Management Console:
    • Visit AWS Management Console.
  • Authenticate:
    • Enter your AWS account credentials.
    • If you don’t have an AWS account, you’ll need to create one and set up billing information.

Step 2: Navigate to EC2 Dashboard

  • Access EC2 Services:
    • Click on Services in the top menu.
    • Under Compute, select EC2.

Step 3: Launch a New Instance

  • Initiate Instance Creation:
    • Click on Launch Instances or Launch Instance button.

Step 4: Choose an Amazon Machine Image (AMI)

  • Search for Ubuntu AMI:
    • In the Name search bar, type Ubuntu Server 22.04 LTS.
  • Select the Correct AMI:
    • Ensure you choose an AMI with:
      • 64-bit (x86) architecture for Intel/AMD processors.
      • HVM virtualization.
      • SSD Volume Type for storage.
  • Confirm Details:
    • Check that the AMI is published by Canonical, the official provider of Ubuntu.

Step 5: Choose an Instance Type

  • Instance Type Considerations:
    • t3.large:
      • vCPUs: 2
      • Memory: 8 GB RAM
      • Use Case: Recommended for small to medium deployments.
    • t3.xlarge or higher:
      • vCPUs: 4+
      • Memory: 16 GB+ RAM
      • Use Case: For larger deployments or heavy workloads.
  • Select Instance Type:
    • Click on the desired instance type.
  • Note on Burstable Instances:
    • T-series instances (e.g., t3.large) are burstable and may not be suitable for consistent high CPU workloads.
    • For consistent performance, consider M-series instances (e.g., m5.large).

Step 6: Configure Instance Details

  • Network Settings:
    • VPC: Select default or a specific VPC if configured.
    • Subnet: Choose a subnet in the desired availability zone.
    • Auto-assign Public IP:
      • Enable: Ensure that your instance is assigned a public IP address for external access.
  • Advanced Details:
    • Leave default unless specific configurations are required.

Step 7: Add Storage

  • Configure Storage Volume:
    • Root Volume:
      • Size: Set to at least 80 GB (consider more for larger databases).
      • Volume Type: Choose gp3 (General Purpose SSD).
  • Add Additional Volumes (Optional):
    • For separating data and OS, you can add additional EBS volumes.
    • Note: For simplicity, using a single volume is acceptable.

Step 8: Add Tags (Optional)

  • Add Tags:
    • Key-Value pairs for identification, organization, or billing purposes.
    • Examples:
      • Key: Name, Value: FileMakerServer
      • Key: Environment, Value: Production

Step 9: Configure Security Groups

  • Security Group Basics:
    • Acts as a virtual firewall controlling inbound and outbound traffic.
  • Create a New Security Group:
    • Name: FileMakerServerSG or similar.
    • Description: Brief description of the security group’s purpose.

Step 10: Review and Launch

  • Review Instance Configuration:
    • Double-check all settings for accuracy.
  • Launch Instance:
    • Click Launch.
  • Select or Create Key Pair:
    • Key Pair:
      • Existing: Choose an existing key pair if you have one.
      • New: Create a new key pair.
        • Download: Save the .pem file securely.
        • Note: This key is essential for SSH access to your server.

Configuring Security Groups in Detail

Proper security group configuration is crucial for server accessibility and security.

Understanding Security Group Rules

  • Inbound Rules:
    • Define the traffic allowed into your instance.
  • Outbound Rules:
    • Define the traffic allowed out of your instance.
  • Best Practices:
    • Only open necessary ports.
    • Restrict access to specific IP addresses where possible.

Setting Up Inbound Rules

  • SSH (Port 22):
    • Purpose: Allows remote command-line access.
    • Type: SSH
    • Protocol: TCP
    • Port Range: 22
    • Source:
      • Your IP: Restrict to your IP address for enhanced security.
        • Option: Select My IP in the AWS console.
      • Anywhere (0.0.0.0/0): Not recommended; allows access from any IP.
  • HTTP (Port 80):
    • Purpose: Allows unsecured web traffic (used during initial setup or if hosting web services).
    • Type: HTTP
    • Protocol: TCP
    • Port Range: 80
    • Source: 0.0.0.0/0 (Allows access from any IP)
  • HTTPS (Port 443):
    • Purpose: Secure web traffic; required for Admin Console and WebDirect.
    • Type: HTTPS
    • Protocol: TCP
    • Port Range: 443
    • Source: 0.0.0.0/0
  • FileMaker Server (Port 5003):
    • Purpose: Allows FileMaker clients to connect to the server.
    • Type: Custom TCP Rule
    • Protocol: TCP
    • Port Range: 5003
    • Source: 0.0.0.0/0
  • Additional Ports (If Needed):
    • ODBC/JDBC (Port 2399):
      • Required if you plan to use ODBC/JDBC connections.
      • Type: Custom TCP Rule
      • Protocol: TCP
      • Port Range: 2399
      • Source: Restrict to specific IPs if possible.

Connecting to Your Server via SSH

Once your instance is running and the security groups are configured, you can connect to it using SSH.

Step 1: Setting Permissions on Key Pair

  • Navigate to Key Pair File:
    • Locate the .pem file downloaded earlier.
  • Set File Permissions:
    • Open a terminal on your local machine.
    • Change permissions to read-only for the owner:bashCopy codechmod 400 /path/to/your-key-pair.pem
    • Explanation: This step ensures that your private key is not accessible by others, which SSH requires for security.

Step 2: Connecting Using SSH

  • Obtain Public IP Address:
    • In the AWS EC2 console, locate your instance and note its Public IPv4 address.
  • Initiate SSH Connection:
    • Use the following command, replacing placeholders:bashCopy codessh -i /path/to/your-key-pair.pem ubuntu@your_server_ip
    • Example:bashCopy codessh -i ~/keys/filemaker.pem ubuntu@203.0.113.0
  • Accept SSH Key Fingerprint:
    • On first connection, you’ll be prompted to confirm the authenticity of the host.
    • Type yes and press Enter.
  • Troubleshooting Connection Issues:
    • Permission Denied:
      • Ensure the .pem file has the correct permissions.
      • Verify you’re using the correct username (ubuntu for Ubuntu AMIs).
    • Timeout:
      • Check that the security group allows SSH access from your IP.
      • Ensure the instance is running.

Preparing the Linux Server

Before installing FileMaker Server, it’s essential to update the server’s packages and install necessary utilities.

Updating System Packages

Keeping your system up-to-date ensures you have the latest security patches and software enhancements.

Step 1: Update Package Lists

  • Update Package Index:bashCopy codesudo apt update
  • Explanation:
    • Fetches the list of available updates and new packages from configured repositories.

Step 2: Upgrade Installed Packages

  • Upgrade Packages:bashCopy codesudo apt upgrade -y
  • Explanation:
    • Installs newer versions of packages currently installed on the system.
    • The -y flag automatically answers yes to prompts.

Step 3: Reboot the Server (If Necessary)

  • Check if Reboot is Required:bashCopy codesudo reboot
  • Explanation:
    • If the kernel or critical system components were updated, a reboot is necessary.
    • Reconnect via SSH after the server restarts.

Installing Essential Utilities

Some utilities are not installed by default but are essential for handling files and system administration.

Installing Unzip Utility

  • Install Unzip:bashCopy codesudo apt install unzip -y
  • Purpose:
    • Required to extract the FileMaker Server installer, which comes in a ZIP file.

Installing Other Useful Tools (Optional)

  • Install cURL:bashCopy codesudo apt install curl -y
  • Install Git:bashCopy codesudo apt install git -y
  • Install htop (System Monitor):bashCopy codesudo apt install htop -y
  • Note:
    • These tools are optional but can be helpful for system management and monitoring.

Downloading and Preparing the FileMaker Server Installer

With the server updated and necessary utilities installed, you’re ready to download and prepare the FileMaker Server installer.

Step 1: Download the Installer Directly on the Server

  • Use wget to Download Installer:
    • In your SSH session, run:bashCopy codewget "https://downloads.claris.com/your-download-link.zip"
    • Replace:
      • "https://downloads.claris.com/your-download-link.zip" with the actual URL copied earlier.
  • Example:bashCopy codewget "https://downloads.claris.com/esd/Release/FMServer_2023_Linux.zip?key=..."
  • Note:
    • Enclose the URL in quotes to handle any special characters.
    • Ensure the link is valid and not expired.

Step 2: Verify the Download

  • List Files to Confirm Download:bashCopy codels -lh
  • Check File Size and Name:
    • Ensure the downloaded file matches the expected size and has a .zip extension.

Step 3: Extract the Installer

  • Unzip the Installer:bashCopy codeunzip FileMakerServer-20.1.1.yourbuildnumber.zip
    • Replace:
      • FileMakerServer-20.1.1.yourbuildnumber.zip with the actual filename.
  • Navigate to the Extracted Directory:bashCopy codecd fms_20.1.1.yourbuildnumber_amd64
  • List Contents:bashCopy codels
  • Explanation:
    • The installer package (.deb file) should be present in the directory.

Installing FileMaker Server 2023

Now that the installer is prepared, you can proceed with the installation.

Step 1: Run the Installer

  • Execute the Installer:bashCopy codesudo apt install ./fms_20.1.1.yourbuildnumber_amd64.deb
    • Replace:
      • fms_20.1.1.yourbuildnumber_amd64.deb with the actual filename.
  • Explanation:
    • The apt install command installs the package and resolves any dependencies.

Step 2: Accept the License Agreement

  • License Agreement Prompt:
    • During installation, the terminal will display the Software License Agreement.
  • Navigate and Accept:
    • Read: Use the Up/Down Arrow keys to scroll through the agreement.
    • Accept:
      • Press Tab to highlight <Yes>.
      • Press Enter to confirm.

Step 3: Configure Installation Settings

Setting the Admin Console Credentials

  • Set Admin User:
    • Prompt: You’ll be asked to set the Admin Console username.
    • Enter: A secure username (e.g., admin).
  • Set Admin Password:
    • Prompt: Enter a strong password.
    • Confirm Password: Re-enter to confirm.
  • Password Guidelines:
    • Use a mix of uppercase, lowercase, numbers, and special characters.
    • Avoid common words or easily guessable information.

Setting the 4-Digit PIN

  • Purpose of PIN:
    • Used for password recovery on the local machine.
  • Set PIN:
    • Prompt: Enter a 4-digit numeric PIN.
    • Confirm PIN: Re-enter to confirm.
  • Security Note:
    • Choose a PIN that’s not easily guessable.

Step 4: Complete the Installation

  • Wait for Installation to Finish:
    • The installer will configure services and complete the setup.
  • Installation Messages:
    • You may see messages about starting services or initializing components.
  • Verify Installation Success:
    • No errors should be displayed.
    • Final message may indicate the installation is complete.

Post-Installation Configuration

With FileMaker Server installed, several configurations are necessary to ensure optimal operation and security.

Accessing the Admin Console

The Admin Console is the web-based interface for managing FileMaker Server.

Step 1: Open a Web Browser

  • On Your Local Machine:
    • Use a modern browser (e.g., Chrome, Firefox, Safari).

Step 2: Bypass Security Warning (If Necessary)

  • Access Admin Console:
    • Navigate to:plaintextCopy codehttps://your_server_ip/admin-console
      • Replace your_server_ip with your server’s public IP or domain name.
  • Security Warning:
    • Reason: The server uses a self-signed SSL certificate by default.
    • Bypass Steps:
      • Chrome:
        • Click Advanced.
        • Click Proceed to your_server_ip (unsafe).
      • Firefox:
        • Click Advanced.
        • Click Accept the Risk and Continue.
  • Note:
    • It’s recommended to install a valid SSL certificate to eliminate this warning.

Step 3: Log In to the Admin Console

  • Enter Credentials:
    • Username: As set during installation.
    • Password: As set during installation.
  • First-Time Setup Wizard:
    • You may be prompted to complete initial setup steps.
    • Follow on-screen instructions.

Uploading SSL Certificates

Securing your server with SSL certificates ensures encrypted communication and eliminates browser warnings.

Understanding SSL Certificates

  • Types of Certificates:
    • Self-Signed Certificate: Generated by the server; not trusted by browsers.
    • CA-Signed Certificate: Issued by a trusted Certificate Authority.
  • Benefits of CA-Signed Certificates:
    • Trusted by browsers and clients.
    • Provides authentication and encryption.

Generating a Certificate Signing Request (CSR)

  • Use Admin Console or Command-Line:
    • Admin Console:
      • Navigate to Configuration > SSL Certificates.
      • Click Create Request.
    • Command-Line:bashCopy codesudo fmsadmin certificate create --keyfilepass "your_password" --organization "Your Organization" --unit "Your Unit" --email "you@example.com" --state "Your State" --country "Your Country"
  • Fill in Required Information:
    • Common Name (CN): Your server’s domain name (e.g., fmserver.yourdomain.com).
    • Organization: Legal name of your company.
    • Organizational Unit: Department or division.
    • Email: Contact email address.
    • State: State or province.
    • Country: Two-letter country code (e.g., US).

Submitting CSR to Certificate Authority (CA)

  • Choose a Trusted CA:
    • Examples: Let’s Encrypt, DigiCert, Comodo, GlobalSign.
  • Submit CSR:
    • Provide the CSR file generated (serverRequest.pem or similar) to the CA.
  • Domain Validation:
    • CA may require you to prove ownership of the domain (via email validation, DNS records, or file upload).
  • Obtain SSL Certificate:
    • CA will provide certificate files upon validation.
    • Files Typically Provided:
      • Server Certificate: yourdomain.crt
      • Intermediate Certificates: intermediate.crt or ca-bundle.crt

Importing SSL Certificate into FileMaker Server

  • Transfer Certificate Files to Server:
    • Use scp or another secure method to upload files to the server.
    • Place them in a directory accessible to your user.
  • Import Certificate Using Command-Line:bashCopy codesudo fmsadmin certificate import /path/to/yourdomain.crt --keyfile /opt/FileMaker/FileMaker\ Server/CStore/serverKey.pem --keyfilepass "your_password" --intermediateCA /path/to/intermediate.crt
    • Replace:
      • /path/to/yourdomain.crt with the path to your server certificate.
      • /path/to/intermediate.crt with the path to intermediate certificates.
      • "your_password" with the keyfile password set during CSR generation.
  • Restart FileMaker Server:bashCopy codesudo fmsadmin restart server
  • Verify SSL Installation:
    • Access the Admin Console using your domain name.
    • Browser should show a secure connection without warnings.

Configuring Backup Schedules

Regular backups are essential for data protection and recovery.

Understanding Backup Types

  • Full Backups:
    • Complete copy of databases at the time of backup.
  • Progressive Backups:
    • Continuously updates backup files with changes, providing near real-time protection.
  • Clones:
    • Backups of database structure without data (no records).

Creating a Basic Backup Schedule

  • Access Backup Configuration:
    • In Admin Console, navigate to Configuration > Schedules.
  • Create New Backup Schedule:
    • Click Create a Schedule.
  • Configure Schedule Details:
    • Type: Backup
    • Name: Descriptive name (e.g., “Daily Backup”).
    • Frequency:
      • Run: Select Daily, Weekly, or Hourly.
      • Start Date/Time: Set when the backup should occur.
      • Repeat: Set intervals if applicable.
    • Databases to Back Up:
      • All Databases or select specific ones.
    • Backup Destination:
      • Default or specify a custom path.
    • Retention Policy:
      • Keep: Number of backups to retain before overwriting old ones.
  • Advanced Options:
    • Verify Backup Integrity:
      • Enabling verification ensures backups are consistent but may increase backup time.
    • Clone Backups:
      • Option to create a clone during backup.
  • Save Schedule:
    • Review settings and click Save.

Setting Up Progressive Backups

  • Enable Progressive Backups:
    • In Admin Console, navigate to Configuration > Database Server > Backup.
    • Toggle Enable Progressive Backups to On.
  • Configure Settings:
    • Backup Interval: Default is every 5 minutes.
    • Maximum Copies to Keep: Set how many backup copies to retain.
  • Advantages of Progressive Backups:
    • Minimizes data loss between backups.
    • Reduces impact on server performance compared to frequent full backups.

Adjusting Server Performance Settings

Optimizing server settings can enhance performance and resource utilization.

Modifying Cache Size

  • Default Cache Size:
    • 512 MB
  • Determine Appropriate Cache Size:
    • Depends on database size and number of concurrent users.
    • Larger cache can improve performance but consumes more RAM.
  • Set Cache Size via Command-Line:bashCopy codesudo fmsadmin set serverconfig cachesize=2048
    • Example: Sets cache size to 2048 MB (2 GB).
  • Verify Configuration:bashCopy codesudo fmsadmin get serverconfig
    • Check that CacheSize reflects the new value.

Enabling or Disabling Features

  • Access Database Server Settings:
    • In Admin Console, navigate to Configuration > Database Server > Settings.
  • Adjust Features:
    • Maximum Simultaneous Script Sessions: Modify if using server-side scripts heavily.
    • Enable SSL for Progressive Backups: Enhances security for backup processes.
    • Other Settings: Adjust based on specific needs.

Enabling Web Publishing and WebDirect

To allow users to access databases via a web browser, enable Web Publishing Engine and WebDirect.

Understanding Web Publishing Engine (WPE)

  • Purpose:
    • Handles web requests and communicates with the database server.
  • Components:
    • WebDirect: Web-based client interface.
    • Custom Web Publishing: Allows custom web solutions via PHP or XML APIs.

Enabling WPE in Admin Console

  • Navigate to Web Publishing Settings:
    • In Admin Console, go to Configuration > Web Publishing.
  • Enable Web Publishing Engine:
    • Toggle Enable Web Publishing Engine to On.
    • Wait for the status to change to Active.
  • Enable WebDirect:
    • Toggle Enable FileMaker WebDirect to On.
  • Configure WebDirect Settings:
    • Maximum Simultaneous Connections: Set based on license and server capacity.
    • Session Timeout: Specify inactivity period before session ends.
  • Enable Other Web Publishing Options (If Needed):
    • Custom Web Publishing with PHP
    • Custom Web Publishing with XML
  • Apply Changes:
    • Click Save or Apply if required.

Testing WebDirect Access

  • Access WebDirect:
    • Open a web browser.
    • Navigate to:plaintextCopy codehttps://your_server_ip/fmi/webd
      • Or use your domain name.
  • Verify Functionality:
    • The WebDirect landing page should display.
    • Attempt to open a hosted database.
  • Troubleshooting:
    • If the page doesn’t load, check:
      • Firewall settings (port 443 must be open).
      • Web Publishing Engine status in Admin Console.
      • SSL certificate validity.

Advanced Configuration

For enhanced functionality and security, consider implementing advanced configurations.

Managing Server-Side Plugins

Plugins extend the capabilities of FileMaker Server, enabling additional features and integrations.

Understanding Plugin Types and Locations

  • Server-Side Plugins:
    • Used by server-side scripts and scheduled tasks.
    • Location:arduinoCopy code/opt/FileMaker/FileMaker Server/Database Server/Extensions/
  • Web Publishing Engine Plugins:
    • Used by WebDirect and Custom Web Publishing.
    • Location:bashCopy code/opt/FileMaker/FileMaker Server/Web Publishing/publishing-engine/cwpc/Plugins/
  • Data API Plugins:
    • Used by the FileMaker Data API.
    • Location:bashCopy code/opt/FileMaker/FileMaker Server/Web Publishing/publishing-engine/wip/Plugins/

Installing Plugins for Server-Side Scripts

  • Obtain Compatible Plugin:
    • Ensure the plugin supports Linux and your FileMaker Server version.
  • Copy Plugin to Server:
    • Upload the plugin file (.fmx64 or .fmplugin) to the server.
  • Place Plugin in Extensions Folder:bashCopy codesudo cp yourplugin.fmx64 /opt/FileMaker/FileMaker\ Server/Database\ Server/Extensions/
  • Set Appropriate Permissions:bashCopy codesudo chmod 644 /opt/FileMaker/FileMaker\ Server/Database\ Server/Extensions/yourplugin.fmx64
  • Restart FileMaker Server:bashCopy codesudo fmsadmin restart server

Installing Plugins for Web Publishing Engine

  • Place Plugin in WPE Plugins Folder:bashCopy codesudo cp yourplugin.fmx64 /opt/FileMaker/FileMaker\ Server/Web\ Publishing/publishing-engine/cwpc/Plugins/
  • Set Permissions:bashCopy codesudo chmod 644 /opt/FileMaker/FileMaker\ Server/Web\ Publishing/publishing-engine/cwpc/Plugins/yourplugin.fmx64
  • Restart WPE:bashCopy codesudo fmsadmin restart wpe

Enabling Plugins in Admin Console

  • Navigate to Plugins Configuration:
    • In Admin Console, go to Configuration > Database Server > Plugins.
  • Enable Plugin Use:
    • Toggle Allow installing plugins to On if using the Install Plugin script step.
  • Enable Specific Plugins:
    • Find your plugin in the list and toggle it On.
  • Apply Changes:
    • Save settings and ensure plugins are active.

Configuring External Authentication

Integrating external authentication allows users to log in using credentials from systems like Active Directory or OAuth providers.

Supported External Authentication Methods

  • Active Directory (AD)
  • Open Directory
  • OAuth 2.0 Providers:
    • Google
    • Amazon
    • Microsoft Azure AD
    • Custom Identity Providers (using OpenID Connect)

Setting Up OAuth Providers

  • Navigate to External Authentication:
    • In Admin Console, go to Configuration > External Authentication.
  • Enable OAuth Authentication:
    • Toggle Enable OAuth authentication to On.
  • Configure Providers:
    • Add Provider:
      • Select the desired provider (e.g., Google).
      • Enter necessary client IDs and secrets as provided by the OAuth provider.
  • Configure Redirect URIs:
    • Ensure redirect URIs are correctly set in both the OAuth provider’s settings and FileMaker Server.

Mapping External Groups to Privilege Sets

  • In FileMaker Pro:
    • Open your database file.
  • Manage Security:
    • Go to File > Manage > Security.
  • Add External Authentication Entry:
    • Click New.
    • Authentication: Choose External Server.
    • Account Name: Enter the group name from your authentication system.
  • Assign Privilege Set:
    • Select the appropriate privilege set for the group.
  • Save Changes:
    • Apply settings and upload the database to the server.

Testing External Authentication

  • Attempt Login:
    • Use a client or web browser to access the database.
    • Choose to authenticate using the external provider.
  • Verify Access:
    • Ensure users can log in and have appropriate privileges.

Enhancing Security Settings

Securing your server protects data and complies with best practices.

Enforcing Secure Connections

  • Require Secure Connections:
    • In Admin Console, navigate to Configuration > Database Server > Security.
    • Enable Require secure connections (SSL).
  • Effects:
    • All client connections must use SSL/TLS.
    • Non-secure connections will be rejected.

Restricting Admin Console Access

  • Set IP Address Restrictions:
    • In Admin Console, go to Configuration > Admin Console > Access.
    • Restrict Access: Enter IP addresses or ranges allowed to access the Admin Console.
  • Example:
    • Allowed Addresses: 192.168.1.0/24 allows all IPs in the subnet.
  • Save Settings:
    • Apply changes to enforce restrictions.

Disabling Unused Services

  • Turn Off Unnecessary Features:
    • ODBC/JDBC Sharing:
      • Disable if not in use.
      • In Admin Console, go to Configuration > Database Server > ODBC/JDBC.
      • Toggle Enable ODBC/JDBC sharing to Off.
    • Other Services:
      • Review and disable any features not required for your deployment.
  • Benefits:
    • Reduces attack surface.
    • Improves performance.

Disaster Recovery and Backups

Implementing robust backup strategies is critical for data integrity and disaster recovery.

Understanding Snapshot-Based Backups

  • Snapshots:
    • Capture the state of your server’s volume at a specific point in time.
    • Useful for restoring entire systems or volumes.
  • Application Consistency:
    • Snapshots should be taken when the application (FileMaker Server) is in a consistent state.
    • Without proper coordination, snapshots may capture data in an inconsistent state.

Setting Up EBS Snapshots in AWS

Automate snapshots using AWS Lifecycle Manager to ensure regular backups.

Step 1: Navigate to AWS EC2 Dashboard

  • Access EC2 Services:
    • In AWS Management Console, go to Services > EC2.

Step 2: Access Lifecycle Manager

  • Elastic Block Store (EBS):
    • In the left navigation pane, under Elastic Block Store, select Lifecycle Manager or Snapshots.

Step 3: Create a Snapshot Lifecycle Policy

  • Initiate Policy Creation:
    • Click Create Snapshot Lifecycle Policy.

Step 4: Configure Policy Details

  • Policy Type:
    • Choose EBS Snapshot Policy.
  • Description:
    • Enter a descriptive name (e.g., “FileMaker Server Hourly Snapshots”).
  • Target Resources:
    • Resource Type: Choose Instances.
    • Target Instances:
      • Tags: You can target instances by tags (e.g., Backup=true).
      • Specific Instance IDs: Enter the instance ID of your FileMaker Server.
  • Schedule Configuration:
    • Schedule Name: “Hourly Schedule”
    • Frequency: Every 1 hour.
    • Start Time: Set initial start time.
    • Retention Period:
      • Specify the number of snapshots to retain (e.g., 720 for 30 days of hourly snapshots).
  • Additional Settings:
    • Fast Snapshot Restore: Enable if required (additional costs).
    • Tags to Apply to Snapshots: Add tags for identification.

Step 5: Review and Create Policy

  • Review Settings:
    • Ensure all configurations are correct.
  • Create Policy:
    • Click Create Policy to finalize.

Restoring from Snapshots

In the event of data loss or corruption, you can restore volumes from snapshots.

Step 1: Locate the Desired Snapshot

  • Access Snapshots:
    • In AWS EC2 console, go to Snapshots.
  • Filter Snapshots:
    • Use tags or descriptions to find the appropriate snapshot.

Step 2: Create a Volume from the Snapshot

  • Initiate Volume Creation:
    • Select the snapshot.
    • Click Actions > Create Volume.
  • Configure Volume:
    • Availability Zone: Must match the zone of your instance.
    • Volume Type: Choose as per requirements (e.g., gp3).
  • Create Volume:
    • Confirm settings and create the volume.

Step 3: Attach Volume to an Instance

  • Select Volume:
    • In Volumes, find the newly created volume.
  • Attach Volume:
    • Click Actions > Attach Volume.
    • Instance: Select your FileMaker Server instance.
    • Device Name: Assign a device identifier (e.g., /dev/sdf).

Step 4: Mount the Volume on the Server

  • Connect to Server via SSH:
    • Ensure the volume is attached.
  • Identify the New Volume:bashCopy codelsblk
  • Create Mount Point:bashCopy codesudo mkdir /mnt/snapshot
  • Mount the Volume:bashCopy codesudo mount /dev/xvdf1 /mnt/snapshot
    • Note: Replace /dev/xvdf1 with the correct device name.
  • Verify Mount:bashCopy codedf -h

Step 5: Restore Files from the Snapshot

  • Navigate to Backup Files:bashCopy codecd /mnt/snapshot/PathToBackups
  • Copy Files to Active Directory:
    • Stop FileMaker Server to ensure data consistency:bashCopy codesudo fmsadmin stop server
    • Copy necessary files:bashCopy codesudo cp -r /mnt/snapshot/PathToBackups /path/to/active/directory
    • Restart FileMaker Server:bashCopy codesudo fmsadmin start server
  • Cleanup:
    • Unmount the volume:bashCopy codesudo umount /mnt/snapshot
    • Detach the volume from the instance via AWS console.

Troubleshooting and Maintenance

Regular maintenance and being prepared to troubleshoot issues are vital for server health.

Common Issues and Solutions

Issue: Cannot Access Admin Console

  • Possible Causes:
    • FileMaker Server services are not running.
    • Firewall rules are blocking access.
    • SSL certificate issues.
  • Solutions:
    • Check Services:bashCopy codesudo fmsadmin start server
      • Verify services are running.
    • Firewall Settings:
      • Ensure port 443 is open in security groups and any server firewalls.
    • SSL Certificate:
      • Verify the SSL certificate is valid and properly installed.

Issue: Web Publishing Engine Fails to Start

  • Possible Causes:
    • Java issues.
    • Misconfiguration in settings.
  • Solutions:
    • Verify Java Installation:
      • Java is installed automatically on Linux, but verify:bashCopy codejava -version
      • Should display OpenJDK version 17.
    • Restart WPE:bashCopy codesudo fmsadmin restart wpe
    • Check Logs:
      • Review logs in:arduinoCopy code/opt/FileMaker/FileMaker Server/Logs/
      • Look for errors related to WPE.

Issue: Plugins Not Loading

  • Possible Causes:
    • Incompatible plugin version.
    • Incorrect plugin placement.
    • Permissions issues.
  • Solutions:
    • Verify Compatibility:
      • Ensure the plugin supports Linux and your FileMaker Server version.
    • Check Plugin Location:
      • Confirm the plugin is in the correct directory.
    • Set Correct Permissions:bashCopy codesudo chmod 644 /path/to/plugin
    • Enable in Admin Console:
      • Ensure the plugin is enabled in the Admin Console settings.
    • Restart Server:bashCopy codesudo fmsadmin restart server

Issue: FileMaker Server Services Not Running

  • Possible Causes:
    • Server crashed or was stopped.
    • Resource constraints (e.g., low memory).
  • Solutions:
    • Start Services:bashCopy codesudo fmsadmin start server
    • Check System Resources:
      • Use htop or top to monitor CPU and memory usage.
    • Review Logs for Errors:
      • Check logs for indications of why services stopped.

Monitoring Server Performance

Regular monitoring helps in early detection of potential issues.

Using Admin Console Dashboard

  • Access Dashboard:
    • Provides real-time metrics on server performance.
  • Metrics to Monitor:
    • Client Connections: Number of connected clients.
    • System Statistics: CPU usage, memory utilization.
    • Database Statistics: Cache hit percentage, disk I/O.

Accessing Log Files

  • Log File Locations:
    • Event Log:bashCopy code/opt/FileMaker/FileMaker Server/Logs/Event.log
    • Access Log:bashCopy code/opt/FileMaker/FileMaker Server/Logs/Access.log
    • TopCall Statistics:bashCopy code/opt/FileMaker/FileMaker Server/Logs/TopCallStats.log
  • Reviewing Logs:
    • Use less or tail commands to view logs.
    • Look for warnings, errors, and unusual activity.

Setting Up Email Notifications

  • Configure SMTP Settings:
    • In Admin Console, navigate to Configuration > General Settings > Email Notifications.
  • Set Notification Preferences:
    • Choose which events trigger emails (e.g., errors, warnings).
  • Test Email Configuration:
    • Send a test email to ensure settings are correct.

Updating FileMaker Server

Keeping FileMaker Server up-to-date ensures you have the latest features and security patches.

Step 1: Check for Updates

  • Visit Claris Downloads:
    • Go to Claris Downloads.
  • Review Release Notes:
    • Understand what’s new and any potential impacts.

Step 2: Download the Updater

  • Obtain the Correct Installer:
    • Download the latest version compatible with your server.

Step 3: Install the Update

  • Transfer Installer to Server:
    • Use wget or upload via scp.
  • Run the Installer:bashCopy codesudo apt install ./fms_20.1.2.yourbuildnumber_amd64.deb
    • Note: Replace with the correct filename.
  • Follow Prompts:
    • Accept license agreements and confirm installation.

Step 4: Verify the Update

  • Check Version in Admin Console:
    • In the Admin Console dashboard, confirm the version number reflects the update.
  • Test Functionality:
    • Ensure services are running and accessible.

Uninstalling FileMaker Server

If you need to remove FileMaker Server, follow these steps.

Step 1: Stop FileMaker Server

  • Gracefully Stop Services:bashCopy codesudo fmsadmin stop server

Step 2: Uninstall FileMaker Server

  • Remove Package:bashCopy codesudo apt remove filemaker-server -y

Step 3: Remove Residual Files

  • Delete Installation Directory:bashCopy codesudo rm -rf /opt/FileMaker/
  • Explanation:
    • Removes all server files and directories.

Step 4: Remove Configuration Files

  • Delete Configurations:bashCopy codesudo rm -rf /etc/filemaker/
  • Note:
    • This step removes any remaining configuration files.

Step 5: Restart Your Server

  • Reboot System:bashCopy codesudo reboot
  • Purpose:
    • Ensures all services are stopped and system resources are freed.

Conclusion

Installing FileMaker Server 2023 on Linux provides a powerful, cost-effective platform for hosting your FileMaker applications. This comprehensive guide has walked you through each step, from initial server setup and installation to advanced configurations and maintenance. By carefully following these instructions and implementing best practices for security and performance, you can ensure a stable and efficient environment for your users.

Regular monitoring, timely updates, and robust backup strategies are essential for ongoing success. Whether you’re deploying in the cloud or on-premises, the flexibility and scalability of Linux, combined with FileMaker Server’s capabilities, make for a robust solution capable of meeting a wide range of organizational needs.


References

  • Claris Documentation:
    • FileMaker Server Installation Guide for Linux
    • FileMaker Server Admin Console Guide
  • AWS Documentation:
    • Amazon EC2 User Guide for Linux Instances
    • Amazon EBS Snapshots
  • Ubuntu Documentation:
    • Ubuntu Server Guide
  • SSL/TLS Certificates:
    • Let’s Encrypt Documentation
    • OpenSSL Command-Line HOWTO
  • Security Best Practices:
    • CIS Ubuntu Linux Benchmark
    • OWASP Secure Configuration Guide
  • FileMaker Community Resources:
    • Claris Community Forums
    • FileMaker Server Knowledge Base
Tagged: Account Active Directory Amazon API Architecture Attack Authentication AWS Azure Backup Bash Best Cloud Crash Credentials Deployment Disaster Documentation Encryption FileMaker Pro FileMaker Server Firewall FM Training Videos Google Hosting Identity Install Integration Integrity Java Linux Load Login macOS Maintenance Management Microsoft Monitoring Network Notification OAuth Open Directory PHP Plan Plugin Policy Practice Privilege Provider Recovery Restore Scalability Server SOC SSL SSO Stability Storing Test Training Troubleshoot Ubuntu Update Upgrade UPS Web Windows XML YouTube

Dimitris Kokoutsidis

Post navigation

May 5, 2023
Install FileMaker Server 2023 on Windows
May 5, 2023
Install FileMaker Server 2023 on macOS

Related Articles

FileMaker 2024 Server Q&A with Wim Decorte and Jacob Taylor

Dimitris Kokoutsidis11 months ago3 months ago0

Let’s Encrypt in FileMaker 2024 with Wim Decorte and Jacob Taylor

Dimitris Kokoutsidis11 months ago3 months ago0