Install Xen Orchestra on Ubuntu / Debian

Step 1: Update System

Let’s start the installation by updating all the system packages:

sudo apt update

Also consider performing an upgrade:

sudo apt upgrade -y

Step 2: Install Node.js on Ubuntu / Debian

Install dependencies.

sudo apt install -y ca-certificates curl gnupg

Import GPG repository keys:

sudo mkdir -p /etc/apt/keyrings
curl -fsSL | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg

The next step is the installation of Node.js on Ubuntu / Debian Linux system: Continue reading “Install Xen Orchestra on Ubuntu / Debian” »


Install XRDP on CentOS 7


XRDP is an open-source version of the Microsoft Remote desktop Protocol server. It enables operating systems besides Microsoft Windows to offer a fully functional remote desktop experience. The prerequisites for the installation include:

Before all else, install Gnome GUI on CentOS 7 or RHEL 7.

Then install and configure EPEL repository with this commandrpm -Uvh Continue reading “Install XRDP on CentOS 7” »


Install mail server on Ubuntu or Debian

This howto is tested on Ubuntu 16, 18, 20 and Debian 10, 11 edition.

Installing and configuring  postfix

Step 1 » Assign static IP and hostname and add a host entry for the host name .

Assign hostname in /etc/hostname

Add a host entry in /etc/hosts

Step 2 » Update the repositories.

tweenpath@mail:~$ sudo apt-get update

Step 3 » Install postfix and dependencies . Press enter for all prompted questions during installation. we will do that in the next step.

tweenpath@mail:~$ sudo apt-get install postfix

Step 4 » After installation issue the below command to configure postfix.

tweenpath@mail:~$ sudo dpkg-reconfigure postfix

Now you will be prompted for set of details . choose the following values and replace with your domain name. Continue reading “Install mail server on Ubuntu or Debian” »


Limit Sending/Receipt Email Per day, Per Week or Per Month

For activating module accounting, open webui via browser


choose accounting | configure. Select add, and fill with the following example

Name : Rate limit perday
Link to policy : Default
Track : Sender:@domain . You can choose with your choice
Period : Daily
Message Count Limit : 5000
Message Cumulative Size Limit : empty. I am not using cumulative size
Verdict : HOLD.
Data : You can fill with information if policy has been fulfilled. for example, you can fill with "Sorry, your maximum email perday have been full"
Stop processing here : No
Comment : You can fill with comment or emptied
Disabled : No

If no tables for module accounting and get information “no such table” while create rule, you can manually adding tables accounting to sqlite. Continue reading “Limit Sending/Receipt Email Per day, Per Week or Per Month” »


Install PolicyD on Zimbra 8.5 or 8.8

Policyd have module quotas. This module can use for limit sending/receipt email. As example just allow sending/receipt email 200 emails/hours/users. If your email server attacked by spam or compromised password some users and used by spammer, the maximum email can be sent as many as 200 emails per hour. This policy will safe your IP public from blacklist on RBL. Besides, you can check who user send email with many email

How To Install Policyd on Zimbra

This guidance is step by step how to install policyd on Zimbra 8.5 and latest

su - zimbra
zmprov ms `zmhostname` +zimbraServiceInstalled cbpolicyd +zimbraServiceEnabled cbpolicyd

Activate Policyd WebUI

– For Zimbra 8.5/8.6

Run the following command as root

cd /opt/zimbra/httpd/htdocs/
ln -s ../../cbpolicyd/share/webui .

Edit file /opt/zimbra/cbpolicyd/share/webui/includes/config.php and putting “#” on front of all the lines beginning with $DB_DSN and adding the following line just before the line beginning with $DB_USER. Continue reading “Install PolicyD on Zimbra 8.5 or 8.8” »


Install and Configure Fail2Ban for Zimbra on CentOS 7

Below is how to install and configure Fail2Ban for Zimbra. In this guidance, I use CentOS. Please adjust python-pip version if using another OS

1. Install pip

yum install python3-pip

2. Install dependencies required by Fail2Ban

pip3 install pyinotify
pip3 install dnspython

3. Download and extract Fail2Ban

cd /tmp/
wget -c

4. Install Fail2Ban

tar -xvf 0.9.4.tar.gz
cd fail2ban-0.9.4
python3 install

5. Copy Fail2Ban service to systemd

cp files/fail2ban.service /usr/lib/systemd/system/

6. Adjust bin location on Fail2Ban service

vi /usr/lib/systemd/system/fail2ban.service

Adjust the following lines. Change /usr/bin become /usr/local/bin Continue reading “Install and Configure Fail2Ban for Zimbra on CentOS 7” »


Remove VirtualBox from Linux

Step 1: Check the VirtualBox Version (Optional)

First, check out the Virtualbox installed version by specifying the application package name as “vboxmange” name with the “version” flag:  

$ vboxmanage --version

The Virtualbox installed version is “6.1.38”.

Step 2: Uninstall Virtual Box

Use the default package manager alongside the “–remove” and “–purge” flags to completely remove the  “VirtualBox” tool. 

The “–remove” flag will remove the installation files, and the “–purge” will uninstall the configuration files. The “purge” flag is not used in Fedora/CentOS/RHEL because its “remove” flag completely deletes all the files of the package:

$ sudo dnf remove virtualbox                           #For CentOS/RHEL
$ sudo dnf remove virtualbox                           #For Fedora
$ sudo apt --purge remove virtualbox                   #For Ubuntu/Debian-Based

The highlighted section confirms that all the installation and configuration files of Virtualbox have been removed.

Step 3: Remove VirtualBox Dependencies

When an application is installed in the Linux system, additional dependencies are installed. Execute the “autoremove” command to remove the additional dependencies of Virtualbox:

$ sudo yum autoremove virtualbox                   #For CentOS/RHEL
$ sudo apt autoremove virtualbox                   #For Ubuntu/Debian-Based
$ sudo dnf autoremove virtualbox                   #For Fedora

The Virtualbox dependencies have also been removed completely.

Step 4: Delete All Virtual Machines

The Virtualbox contains the virtual machine occupying a specific size in the virtual hard drives. By default, the virtual machines of VirtualBox are created in the “Home” directory, while it can be different in your case. So, use the path of the virtual machines as per your system. 

To delete these files and settings, run the “rm(remove)” command with the combination of “R(recursively) and “f(forcefully)” flags in this way:

$ sudo rm ~/"VirtualBox VMs" -Rf
$ sudo rm ~/.config/VirtualBox/ -Rf

The first command deletes the virtual machine’s files, and the second removes their setting from the virtual hard drive.

Step 4: Verify the VirtualBox

Verify the “VirtualBox” uninstallation process by again executing the “version” command on the terminal:

$ vboxmanage --version

It is verified that “VirtualBox” has been completely removed from the Linux system.


How to Completely Remove Virtualbox From Linux?


XOA on XCP-NG import and install

Start a new SSH session to your XenServer host and run the commands below.

### Using curl ###
[18:18 xcp-node-01 ~]# bash -c "$(curl -sS"
### Using wget ###
[18:18 xcp-node-01 ~]# bash -c "$(wget -qO-"

If you are using an old XenServer version, you may encounter SSL connection issues. This can bypassed by using the unsecure connection instead: Continue reading “XOA on XCP-NG import and install” »


Fixing Yum Update on Centos 8 Stream Error: Failed to download metadata for repo ‘AppStream’: Cannot prepare internal mirrorlist: No URLs in mirrorlist

I had installed a minimalist CentOS 8 on one of my servers. Installation went successful, however, when I tried to update the system using yum update I see this error message: Failed to download metadata for repo. Below is the complete error.

[root@autocontroller ~]# yum update
CentOS-8 - AppStream 70 B/s | 38 B 00:00
Error: Failed to download metadata for repo 'AppStream': Cannot prepare internal mirrorlist: No URLs in mirrorlist

Output from the /var/log/dnf.log for more DEBUG information:

2022-02-02T11:39:36Z DEBUG error: Curl error (6): Couldn't resolve host name for [Could not resolve host:] (
2022-02-02T11:39:36Z WARNING Errors during downloading metadata for repository 'AppStream':
- Curl error (6): Couldn't resolve host name for [Could not resolve host:]
2022-02-02T11:39:36Z DDEBUG Cleaning up.
2022-02-02T11:39:36Z SUBDEBUG
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/dnf/", line 573, in load
ret = self._repo.load()
File "/usr/lib64/python3.6/site-packages/libdnf/", line 394, in load
return _repo.Repo_load(self)
RuntimeError: Failed to download metadata for repo 'AppStream': Cannot prepare internal mirrorlist: Curl error (6): Couldn't resolve host name for [Could not resolve host:]

But, then verified with the internet connection and DNS and it works just fine as below: Continue reading “Fixing Yum Update on Centos 8 Stream Error: Failed to download metadata for repo ‘AppStream’: Cannot prepare internal mirrorlist: No URLs in mirrorlist” »


29 organisations listed as ‘critical information infrastructure’ under DSA

The ICT Division on Monday declared 29 organisations as ‘critical information infrastructure’ under the Digital Security Act for the safety of sensitive data under which any illegal access to computers, digital devices or networks is a punishable offence.

‘Critical information infrastructure’ in the controversial Act means any external or virtual information infrastructure declared by the government that controls, processes, circulates or preserves any information-data or electronic information and, if damaged or critically affected, may adversely affect public safety or financial security or public health and national security or national integrity or sovereignty.

Section 15 of the Digital Security Act authorizes the government to declare any computer system, network or information infrastructure as ‘critical information infrastructure”.

The law states anyone causing or trying to cause damage to a critical information structure or render it inactive intentionally through illegal access will be doing an offence.

It defines illegal access as “making or abetting to make illegal access to any computer, computer system or computer network” and “making or abetting to make illegal access with intent to commit an offence”. Continue reading “29 organisations listed as ‘critical information infrastructure’ under DSA” »