For system administrators

For system administrators

Welcome to the "For System Administrators" lecture of our comprehensive Octeth online course.

As a system administrator, your role is crucial in ensuring the smooth operation and management of the Octeth email marketing software.

This lecture is designed to provide you with in-depth knowledge and guidance on setting up, configuring, and managing Octeth effectively.

We understand that Octeth is a feature-rich and complex software, and it's easy to get lost in the application. That's why we have carefully crafted this lecture to be easy-to-follow and to cover essential topics such as system requirements, installation, server settings, security, backup best practices, user account management, and more.

Whether you are working with the Community Edition or the Enterprise License, this lecture will equip you with the necessary skills to optimize your Octeth experience and support your users in the best possible way.

So, let's dive in and explore the world of Octeth system administration together!

Setting up and configuring Octeth

In this sub-section, we will delve into the essential steps for setting up and configuring Octeth to ensure a seamless and efficient email marketing experience. We will begin by discussing the system requirements and installation process, providing you with a clear understanding of the prerequisites and steps needed to get Octeth up and running on your server.

Next, we will explore the configuration of server settings, which is crucial for optimizing the performance and functionality of your Octeth installation.

Finally, we will cover security and backup best practices to safeguard your valuable data and maintain the integrity of your email marketing campaigns.

By the end of this sub-section, you will have a solid foundation in setting up and configuring Octeth, enabling you to support your users and maximize the potential of this powerful email marketing software.

System requirements and installation

Octeth is a versatile email marketing software designed to run seamlessly on all Linux environments.

To ensure a smooth installation and optimal performance, there are some fundamental server components and resources to consider.

In this section, we will outline the key requirements and provide guidance on selecting the appropriate server resources based on your needs.

Server Components

  • Octeth is a fully Docker containerized system, which means it comes with all the necessary components pre-packaged including proxy server, web server, RabbitMQ, Redis, MySQL, etc.
  • The primary requirement for your server is to have Docker installed.

Recommended Operating System

  • We strongly recommend using a Linux operating system for your server.
  • Preferably, choose Ubuntu 18.04 or a newer version to ensure compatibility and support.

Server Resources

  • The server resources required will vary depending on the number of subscribers you host and the volume of emails you send.
  • As your subscriber base and email volume increase, the system resource requirements will also grow.
  • For example, a server with 4 vCPU and 16GB RAM can easily handle millions of subscribers.

Deployment Options

  • Octeth can be installed on both bare-metal servers and various cloud services.
  • Compatible cloud services include Google Cloud, AWS EC2, Digital Ocean, Linode, and more.

In summary, to set up Octeth, ensure you have a Linux server with Docker installed, preferably running on Ubuntu 18.04 or newer.

Select server resources based on your subscriber base and email volume, keeping in mind that requirements will increase as your email marketing efforts grow. With these considerations in place, you'll be well-prepared to install and run Octeth efficiently.

Configuring server settings

In this section, we will guide you through the process of configuring your server settings by executing specific Linux commands. These commands will help you set up your server step by step, ensuring that your Octeth installation runs smoothly and efficiently.

  1. Set the hostname for your server:
  2. hostnamectl set-hostname octeth.yourdomain.com
  3. Check the current configuration of the cloud.cfg file:
  4. ls -l /etc/cloud/cloud.cfg
  5. Open the cloud.cfg file for editing:
  6. vi /etc/cloud/cloud.cfg
  7. Set the following configuration to preserve the hostname:
  8. preserve_hostname: true
  9. Verify the hostname configuration:
  10. hostnamectl
  11. Disable and enable NTP synchronization:
  12. timedatectl set-ntp FALSE
    timedatectl set-ntp TRUE
  13. Set the timezone to UTC and disable local RTC:
  14. timedatectl set-timezone UTC
    timedatectl set-local-rtc 0
  15. Check the current date and time settings:
  16. timedatectl status
  17. Verify the DNS server configuration:
  18. systemd-resolve --status | grep 'DNS Servers' -A2

    Make sure that the name servers are accessible and working.

  19. Update the package list:
  20. apt update
  21. Check if port 25 is open:
  22. telnet localhost 25

    If the port is open, remove the postfix package:

    apt remove postfix
  23. Check if port 3306 is open:
  24. telnet localhost 3306

    If the port is open, remove the MySQL server package:

    apt remove mysql-server
  25. Check if port 80 is open:
  26. telnet localhost 80

    If the port is open, remove the Apache2 package:

    apt remove apache2
  27. Install the required packages:
  28. apt install -y software-properties-common sharutils apt-utils iputils-ping telnet git unzip zip openssl vim wget debconf-utils cron supervisor mysql-client docker.io ufw
    
  29. Download and install Docker Compose:
  30. sudo curl -L "<https://github.com/docker/compose/releases/download/2.18.1/docker-compose-$>(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  31. Make the Docker Compose binary executable:
  32. chmod +x /usr/local/bin/docker-compose
  33. Verify the Docker Compose version:
  34. docker-compose --version
  35. Create the Octeth directory in the /opt/ folder:
  36. cd /opt/ && mkdir oempro

By following these steps and executing the provided commands, you will have successfully configured your server settings for Octeth.

This will ensure a smooth and efficient installation process, allowing you to fully utilize the powerful features of Octeth email marketing software.

Octeth installation

In this sub-section, we will guide you through the process of installing Octeth on your server by executing specific Linux commands. Follow these steps and commands to ensure a successful installation of Octeth.

  1. On your local computer, transfer the Octeth installation file to the server using the scp command:
  2. scp oempro511.zip user@xxx.xxx.xxx.xxx:/opt/oempro/
  3. Change the directory to /opt/oempro:
  4. cd /opt/oempro
  5. Unzip the installation file:
  6. unzip oempro511.zip
  7. Move the installation file to the /opt/ directory:
  8. mv oempro511.zip /opt/
  9. Set the necessary permissions for the installation script and directories:
  10. chmod -R 0755 install/install.sh
    chmod -R 0777 data
    chmod -R 0777 system/storage/
    chmod -R 0777 system/bootstrap/cache/
  11. Create and set permissions for the required directories:
  12. mkdir _dockerfiles/elasticsearch/data
    chmod -R 0777 _dockerfiles/elasticsearch/data
    mkdir _dockerfiles/mysql/data
    chmod -R 0777 _dockerfiles/mysql/data
    mkdir _dockerfiles/mysql/log
    chmod -R 0777 _dockerfiles/mysql/log
    mkdir _dockerfiles/rabbitmq/data
    chmod -R 0777 _dockerfiles/rabbitmq/data
    mkdir _dockerfiles/redis/data
    chmod -R 0777 _dockerfiles/redis/data
  13. Upload the license.dat file to /opt/oempro/data/license.dat.
  14. Change the directory to install/:
  15. cd install/
  16. Run the installation script:
  17. ./install.sh
  18. Follow the prompts during the installation process:
    • Generate passwords automatically: Y
    • Confirm readiness: y
    • Enter MySQL host: 192.168.99.108
    • Enter MySQL port: 3306
    • Enter MySQL database name: oempro
    • Enter MySQL username: oempro
    • Enter MySQL password: <mysql_password>
  19. Open a web browser and go to http://octeth.yourdomain.com/install/. Fill in the required information:
    • Application Path: /var/www/html
    • Application URL: http://octeth.yourdomain.com
    • MySQL Host: 192.168.99.108
    • MySQL Username: oempro
    • MySQL Password: <mysql_password>
    • MySQL Database: oempro
    • Administrator Name, Email Address, Username, and Password
  20. Once the installation is completed, check your terminal screen for the success message.
  21. Change the directory to the parent folder:
  22. cd ..
  23. Remove the installation folder:
  24. rm -rf /opt/oempro/install

By following these steps and executing the provided commands, you will have successfully installed Octeth on your server. This will ensure a smooth and efficient email marketing experience, allowing you to fully utilize the powerful features of Octeth.

SSL certificate setup instructions

We will guide you through the process of activating an SSL certificate for your Oempro domain. SSL certificates are essential for ensuring secure communication between your server and clients.

Follow these step-by-step commands to set up an SSL certificate for your Oempro domain.

Note: Ensure that octeth.yourdomain.com has a public A record pointing to the server before proceeding with the SSL setup instructions.

  1. Access the Oempro HAProxy container:
  2. docker exec -ti oempro_haproxy bash
  3. Run Certbot to obtain an SSL certificate:
  4. certbot certonly --standalone -d octeth.yourdomain.com --non-interactive --agree-tos --email your@email.com --http-01-port=8888 --expand
  5. Change the directory to the SSL certificate folder:
  6. cd /etc/letsencrypt/live/octeth.yourdomain.com/
  7. Combine the fullchain.pem and privkey.pem files:
  8. cat fullchain.pem privkey.pem | tee octeth.yourdomain.com.pem
  9. Exit the container:
  10. exit
  11. Edit the HAProxy configuration file:
  12. vi _dockerfiles/haproxy.cfg
  13. Uncomment the SSL lines inside the frontend_app frontend and set them to:
  14. bind *:443 ssl crt /etc/letsencrypt/live/octeth.yourdomain.com/octeth.yourdomain.com.pem
    redirect scheme https if !{ ssl_fc }
  15. Rebuild and restart the HAProxy container:
  16. docker-compose build haproxy && docker-compose kill haproxy && docker-compose up -d haproxy
  17. Edit the /opt/oempro/data/config.inc.php file and change the APP_URL from http:// to https://:
  18. vi /opt/oempro/data/config.inc.php

By following these steps and executing the provided commands, you will have successfully activated an SSL certificate for your Oempro domain. This will ensure secure communication between your server and clients, enhancing the overall security of your email marketing efforts.

Final Octeth installation steps

We will guide you through the final steps to complete your Octeth installation. These steps involve restarting services, updating configurations, and verifying the status of your containers. Follow these step-by-step commands to finalize your Octeth installation.

  1. Restart all services in the oempro_system, oempro_bounce, and oempro_app containers:
  2. docker exec -ti oempro_system supervisorctl restart all
    docker exec -ti oempro_bounce supervisorctl restart all
    docker exec -ti oempro_app supervisorctl restart all
  3. Change the directory to /opt/oempro/_dockerfiles/inbound-smtp-server and copy the example configuration file:
  4. cd /opt/oempro/_dockerfiles/inbound-smtp-server
    cp config.json.example config.json
  5. Copy the ADMIN API Key from the /opt/oempro/data/config.inc.php file to the config.json file:
  6. cat /opt/oempro/data/config.inc.php | grep ADMIN_API_KEY
  7. Change the directory back to /opt/oempro and restart the Docker containers:
  8. cd /opt/oempro
    docker-compose stop
    docker-compose up -d
  9. Check the status of the Docker containers and services:
  10. docker ps
    docker-compose ps
    docker exec -ti oempro_system supervisorctl status
    docker exec -ti oempro_bounce supervisorctl status
    docker exec -ti oempro_app supervisorctl status

    You should see all containers up and running.

By following these steps and executing the provided commands, you will have successfully completed the Octeth installation process.

This will ensure a smooth and efficient email marketing experience, allowing you to fully utilize the powerful features of Octeth.

Securing access to your Octeth server and dashboards

We will guide you through the process of securing access to your Octeth server and specific Octeth dashboards by executing specific Linux commands. These commands will help you set up firewall rules and block ports to enhance the security of your Octeth installation.

📌
Note: Replace xxx.xxx.xxx.xxx with your static IP address in the commands below.
  1. Add your IP address to the following frontends in the /opt/oempro/_dockerfiles/haproxy.cfg file:
    • frontend_rabbitmq_admin
    • frontend_mailhog_admin
    • frontend_mysql
    • frontend_haproxy_stats
    • frontend_kibana
  2. Rebuild and restart the HAProxy container:
  3. docker-compose build haproxy && docker-compose kill haproxy && docker-compose up -d haproxy
  4. Download and set up the ufw-docker script:
  5. wget -O /usr/local/bin/ufw-docker <https://github.com/chaifeng/ufw-docker/raw/master/ufw-docker>
    chmod +x /usr/local/bin/ufw-docker
  6. Delete existing firewall rules for the specified ports:
  7. ufw-docker delete allow oempro_haproxy 25
    ufw-docker delete allow oempro_haproxy 587
    ufw-docker delete allow oempro_haproxy 80
    ufw-docker delete allow oempro_haproxy 81
    ufw-docker delete allow oempro_mysql 3306
    ufw-docker delete allow oempro_haproxy 2465
    ufw-docker delete allow oempro_haproxy 2525
    ufw-docker delete allow oempro_haproxy 2587
    ufw-docker delete allow oempro_haproxy 5601
    ufw-docker delete allow oempro_haproxy 11111
    ufw-docker delete allow oempro_haproxy 8025
    ufw-docker delete allow oempro_haproxy 15672
    ufw-docker delete allow oempro_haproxy 2465
  8. Allow traffic on ports 80 and 443:
  9. ufw-docker allow oempro_haproxy 80
    ufw-docker allow oempro_haproxy 443
  10. Set up firewall rules and allow traffic from your static IP address and the specified network:
  11. ufw route allow proto tcp from xxx.xxx.xxx.xxx to any
    ufw route allow proto tcp from 192.168.99.0/24 to any
  12. Allow traffic on the specified ports and from your static IP address:
  13. ufw allow out from any to any port 123 # timesync
    ufw allow from xxx.xxx.xxx.xxx to any
    ufw allow 25
    ufw allow 587
  14. Install the ufw-docker script and enable the firewall:
  15. ufw-docker install
    ufw disable
    ufw enable

By following these steps and executing the provided commands, you will have successfully secured access to your Octeth server and specific Octeth dashboards.

📌
You can test your server open ports using this online tool

Below, you can find the list of ports utilized by Octeth:

Port
Explanation
25
✅ Should be open to the public access
80
✅ Should be open to the public access
123
✅ Should be open to the public access
443
✅ Should be open to the public access
587
✅ Should be open to the public access
81
❌ Private
2465
❌ Private
2525
❌ Private
2587
❌ Private
3306
❌ Private
5601
❌ Private
8025
❌ Private
11111
❌ Private
15672
❌ Private

This will enhance the overall security of your email marketing efforts and protect your valuable data.

Octeth Server Setup and Installation on Linode VM: A Step-by-Step Video Guide

Discover how to set up and install Octeth on a Linode VM instance in this comprehensive 15-minute video tutorial. Follow along as we guide you through the server setup process and Octeth installation step by step, ensuring a seamless experience with your email marketing software. Learn the essential Linux commands and best practices to optimize your Octeth deployment and unlock its full potential. Don't miss this valuable resource for both beginners and experienced users alike!

Configuring fundamental Octeth settings

In this section of the Octeth Training Program, we will guide you through the process of configuring fundamental Octeth settings. By the end of this tutorial, you will be able to set up the system for audience management and email campaign delivery.

Step 1: Access the Admin Area and Navigate to Settings

After logging in to the admin area, click on the "Settings" section to access all system parameters.

All system settings and parameters can be found under Administrator > Settings section.
All system settings and parameters can be found under Administrator > Settings section.

Step 2: Secure the Admin Area

To ensure the security of your admin area, click on the "Security" link in the left menu. Here, you can configure authorized IP addresses to access the admin area.

📌
Please note that this setting should only be used if you and your team have static IP addresses, such as VPN.
Admin area security settings.
Admin area security settings.

In the same section, you can also enable two-factor authentication for added security.

Step 3: Add a Delivery Server

Before we dive into the instructions, let's first understand what a "Delivery Server" is and why it's essential to set up at least one.

A Delivery Server is an SMTP server responsible for sending out your email campaigns.

It plays a crucial role in ensuring that your emails are delivered to your subscribers' inboxes. Setting up at least one delivery server is vital because, without it, you won't be able to send any email campaigns through Octeth.

Now that we know the importance of a Delivery Server, let's proceed with the instructions on how to add one:

Click on the "Delivery Servers" link in the left menu to access this section.

image

To create a new delivery server, click on the "Create delivery server" button on the toolbar. Octeth will prompt you to provide a name for the delivery server, as well as the necessary SMTP credentials and tracking/sender domains.

image

Once you have entered this information, click "Save" to create the delivery server. It will now be available for use in user accounts.

Continuing with the Octeth Training Program, we will now explore the "Email Delivery" settings section. This section allows you to configure all email sending related parameters and is divided into five sub-sections: Email Delivery, Load Balancing, Bounces, SPAM Complaints, and Headers.

Step 4: Configure Email Delivery Settings

Under the "Email Delivery" sub-section, you can configure standard email headers, default email delivery channels, seed lists, alias lists, relay domains, and pre-header text templates.

image

Step 5: Set Up Load Balancing

In the "Load Balancing" section, you can enable or disable the load balancer.

📌
We strongly recommend keeping this feature disabled at all times unless you are hosting Octeth on a very resource-limited hosting environment.

Step 6: Manage Bounce Processing

Under the "Bounces" sub-section, you can configure your bounce processing parameters to handle email bounces effectively.

image

Step 7: Handle SPAM Complaints

Just like in the "Bounces" sub-section, you can configure incoming FBL/spam-complaint processing in the "SPAM Complaints" section. This helps you manage and address any spam complaints related to your email campaigns.

image

Step 8: Customize Headers

In the "Customize Headers" section, you can add or remove custom email headers for all or specific delivery servers. This allows you to tailor the email headers according to your requirements.

Congratulations!

Now that you have configured the essential settings in the Octeth system, it is ready to manage audiences and send emails. As a system administrator, you have successfully set up the foundation for your marketing team to start using Octeth effectively.

The next step in the process is to set up user groups and user accounts for system access. This will allow you to create and manage different levels of access and permissions for your team members, ensuring that each user has the appropriate level of access to perform their tasks within the Octeth platform.

Managing user accounts and permissions

Creating and managing user accounts

Setting user roles and permissions

Managing Enterprise License user limits

💠
image

Footer Social Icons

©Copyright Octeth, Inc. All rights reserved.