Cloudmin-GPL XEN on Debian 10

This article is inspired and prepared on the forked Cloudmin Xen script updated for Debian 10. However, the following procedures to be followed as precuationary before executing the updated script, which is available in this post in below section.

PHASE-I Prepare Environment for XEN


In this step we install the Xen Project hypervisor software package, and configure the Dom0 virtual machine by way of the Debian base operating system. Once all preliminary configuration is complete, we will reboot the computer and automatically boot into the Xen hypervisor/Dom0 virtual machine to explore the new system.


If you need to add a non-root user, the sudo package, non-free firmware, a firewall, or other necessary packages, now is the time.

Use apt-get to update the Debian base operating system package index files, and upgrade all currently installed packages. As root (or using sudo) run the following command:

# apt-get update && apt-get upgrade

Next, use apt-get to install the Xen Project hypervisor meta-package. Run the following command as root, adjusting the architecture suffix to suit your hardware:

Read more


Install Netxtcloud on Debian 10

Install Apache, MariaDB and PHP

NextCloud runs on the webserver, written in PHP and uses MariaDB to store their data. So you will need to install Apache, MariaDB, PHP and other required packages on your system. You can install all of them by running the following command:

apt-get install apache2 libapache2-mod-php mariadb-server php-xml php-cli php-cgi php-mysql php-mbstring php-gd php-curl php-zip wget unzip -y

Once all the packages are installed, open the php.ini file and tweak some recommended settings:

nano /etc/php/7.3/apache2/php.ini

Change the following settings:

memory_limit = 512M
upload_max_filesize = 1024M
post_max_size = 1024M
max_execution_time = 300
date.timezone = Asia/Dhaka

Save and close the file when you are finished. Then, start the Apache and MariaDB service and enable them to start after system reboot with the following command:

Read more


Softether Linux Client using Bridged with Softether VPN Server

It’s assumed that you already have a vpn server deployed in your network, created user, password and enabled bridged network during vpn server configuration. A sample snippet of VPN Server Bridge enabled is below-

So here’re the setup value-

  • On Softether Server IP- and Gateway-
  • Client Server IP-, Gateway- Once the server is connected to the vpn, it will be using as bridged IP.

Let’s start.

My setup was done on Debian-10 fresh installation, should work on any linux distro though, it’s simple. The dependency packages that I needed were development tools/build-essentials and few other which were installed as below-

apt-get update
apt-get install build-essential gcc openssl apt-transport-https

Read more


Install ONLYOFFICE Document Server with Nginx on Debian 10

Step 1 – Install Packages Dependencies

In this first step, we will install some packages dependencies needed by the Document Server, including the RabbitMQ-server, Redis, and Nginx-extras.

Update your Debian system repository and install Document Server packages dependencies using the apt command below.

sudo apt update
sudo apt install redis-server rabbitmq-server nginx-extras gnupg2

Once all installation is complete, check the following services using the systemctl command as below.

systemctl is-enabled nginx
systemctl is-enabled rabbitmq-server
systemctl is-enabled redis-server

Now make sure all of these services are enabled and will automatically run on the system boot.

Read more


Upgrade Debian 9 to Debian 10

Update ALL existing installed packages

Before you upgrade your Debian version to 10, you must apply all security patches and pending upgrades to Debian 9 itself Hence, Type the following apt command or apt-get command:

sudo apt update
sudo apt upgrade
sudo apt full-upgrade
sudo apt --purge autoremove


sudo apt-get update
sudo apt-get upgrade
sudo apt-get full-upgrade
sudo apt-get --purge autoremove

Reboot the Debian 9.x stretch to apply the kernel and other updates:

Read more


Install Multipath on Debian Server

This installation is tested on Debian 10 (Buster) edition. It might work for other versions of Debian as well.

DMM Setup Overview

DM-Multipath includes compiled-in default settings that are suitable for common multipath configurations. Setting up DM-multipath is often a simple procedure. The basic procedure for configuring your system with DM-Multipath is as follows:

  1. Install the multipath-tools and multipath-tools-boot packages
  2. Copy an existing config file
  3. If necessary, edit the multipath.conf configuration file to modify default values and save the updated file.
  4. Start the multipath daemon

Installation of multipath:

apt update
apt install multipath-tools multipath-tools-boot
systemctl restart multipathd

On CentOS/Redhat distribution, the default configuration path is: 

Read more


Install PHP 7.4 / 7.3 / 7.2 / 7.1 on Debian 10 / Debian 9

Add PHP Repository

SURY, a third-party repository which offers PHP 7.4 / 7.3 / 7.2 / 7.1 for Debian operating system.

By default, Debian 10 ships PHP v7.3. So, you can either install PHP v7.3 from Debian repository or SURY repository. Skip this section if you want to install PHP 7.3 from the Debian repository. However, if you want to install PHP 7.4 / 7.2 / 7.1 on Debian 10, you must set up SURY repository.

Update the repository cache.

sudo apt update
sudo apt install -y curl wget gnupg2 ca-certificates lsb-release apt-transport-https

Import the public using the below commands.

sudo apt-key add apt.gpg

Add the SURY repository to your system.

echo "deb $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php7.list

Update the repository index.

Read more


Easyengine installaiton on Debian 10

Install Easyengine WordPress on a Debian 10 VM (mine was a KVM).

The following procedure will install EE with following components;

  • Docker
  • WordPress Core
  • MariaDB
  • Nginx Server PHP-FPM
  • Redis Cache
  • Let’s encrypt SSL

Install EasyEngine on Linux

wget -qO ee && sudo bash ee
ee site create your_domain --type=wp --ssl=le --cache

For detailed installation or customizing your requirement, you may visit-

Read more


Linux Monitoring using Grafana InfluxDB and Telegraf on Debian 10

The basic installation of Grafana InfluxDB and Telegraf is described in my other post here-

Install Grafna, InfluxDB, Telegraf for Jitsi Video Meet Monitoring on Debian 10

All is needed is to create a telegraf configuration file:

nano /etc/telegraf.d/dashboard.conf

# Global tags can be specified here in key="value" format.
# dc = "us-east-1" # will tag all metrics with dc=us-east-1
# rack = "1a"
## Environment variables can be used as tags, and throughout the config file
# user = "$USER"

# Configuration for telegraf agent
interval = "10s"
round_interval = true
metric_batch_size = 1000
metric_buffer_limit = 10000
collection_jitter = "0s"
flush_interval = "10s"
flush_jitter = "0s"
precision = ""
debug = false
quiet = false
hostname = ""
omit_hostname = false


# Configuration for influxdb server to send metrics to
urls = ["http://your_host:8086"]
database = "telegraf_metrics"

## Retention policy to write to. Empty string writes to the default rp.
retention_policy = ""
## Write consistency (clusters only), can be: "any", "one", "quorum", "all"
write_consistency = "any"

## Write timeout (for the InfluxDB client), formatted as a string.
## If not provided, will default to 5s. 0s means no timeout (not recommended).
timeout = "5s"
# username = "telegraf"
# password = "2bmpiIeSWd63a7ew"
## Set the user agent for HTTP POSTs (can be useful for log differentiation)
# user_agent = "telegraf"
## Set UDP payload size, defaults to InfluxDB UDP Client default (512 bytes)
# udp_payload = 512

# Read metrics about cpu usage
## Whether to report per-cpu stats or not
percpu = true
## Whether to report total system cpu stats or not
totalcpu = true
## Comment this line if you want the raw CPU time metrics
fielddrop = ["time_*"]

# Read metrics about disk usage by mount point
## By default, telegraf gather stats for all mountpoints.
## Setting mountpoints will restrict the stats to the specified mountpoints.
# mount_points = ["/"]

## Ignore some mountpoints by filesystem type. For example (dev)tmpfs (usually
## present on /run, /var/run, /dev/shm or /dev).
ignore_fs = ["tmpfs", "devtmpfs"]

# Read metrics about disk IO by device
## By default, telegraf will gather stats for all devices including
## disk partitions.
## Setting devices will restrict the stats to the specified devices.
# devices = ["sda", "sdb"]
## Uncomment the following line if you need disk serial numbers.
# skip_serial_number = false

# Get kernel statistics from /proc/stat
# no configuration

# Read metrics about memory usage
# no configuration

# Get the number of processes and group them by status
# no configuration

# Read metrics about swap memory usage
# no configuration

# Read metrics about system load & uptime
# no configuration

# Read metrics about network interface usage
# collect data only about specific interfaces
# interfaces = ["eth0"]

# no configuration

# no configuration

# no configuration

Update the necessary paramaters accordign to your installations.

Import the Grafana Dashboard Template from here-