Add User to Group in Ubuntu Linux - Step by Step Process ?

This article covers how to add a user to a group on Ubuntu Linux System. If you want to learn about adding or removing a user on Linux OS, you can follow our guide on How to Add and Remove Users on Linux .

User accounts can be assigned to one or more groups on Linux. You can configure file permissions and other privileges by group. For example, on Ubuntu, only users in the sudo group can use the sudo command to gain elevated permissions.

To Add a New Group on Ubuntu Linux:

If you want to create a new group on your system, use the groupadd command following command, replacing new_group with the name of the group you want to create:

$ sudo groupadd mynewgroup

To Add an Existing User Account to a Group:

To add an existing user account to a group on your system, use the usermod command, replacing examplegroup with the name of the group you want to add the user to andexampleusername  with the name of the user you want to add:

$ usermod -a -G examplegroup exampleusername

Create SFTP User with Specified Directory Permissions in Ubuntu 20.04 - Step by Step Process ?

This article covers steps to setup and new SFTP server by making the ssh configuration changes, adding new users, and assigning the required directory permissions. You can add as many users as you want or simply create a new group and make new users part of that group.

FTP is a great protocol for accessing and transferring files, but it has the shortcoming of being a clear text protocol. 

In other words, it's not secure to use over an internet connection, since your credentials and data are transmitted without encryption. 

The 'S' in SFTP stands for 'Secure' and tunnels the FTP protocol through SSH, providing the encryption needed to establish a secure connection.

To Configure SSH daemon on Ubuntu:

1. SFTP requires SSH, so if SSH server is not already installed on your system, install it with the following command:

$ sudo apt install ssh

2. Once SSH is installed, we need to make some changes to the SSHD configuration file. Use nano or your favorite text editor to open it:

$ sudo nano /etc/ssh/sshd_config

3. Scroll to the bottom of the file and add the following 5 lines at the very end and save file:

Match group sftp
ChrootDirectory /home
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

4. Restart the SSH service for these new changes to take effect:

$ sudo systemctl restart ssh

Manage Firewall Rules with UFW on Red Hat Enterprise Linux 8

This article covers how to secure Red Hat Enterprise Linux 8 with UFW. UFW may not be intended to provide complete firewall functionality, but it does provide an easy way to create and manage simple firewall rules.

A firewall is a way to protect machines from any unwanted traffic from outside. 

It enables users to control incoming network traffic on host machines by defining a set of firewall rules. 

These rules are used to sort the incoming traffic and either block it or allow through.

Note that firewalld with nftables backend does not support passing custom nftables rules to firewalld, using the --direct option.

How to start, stop, restart firewalld service on an RHEL 8?

By now you know about firewalld zones, services, and how to view the defaults. It is time to activate and configure our firewall.

1. Start and enable firewalld

$ sudo systemctl start firewalld
$ sudo systemctl enable firewalld

2. Stop and disable firewalld

$ sudo systemctl stop firewalld
$ sudo systemctl disable firewalld

3. Check the firewalld status

$ sudo firewall-cmd --state

4. Command to reload a firewalld configuration when you make change to rules

$ sudo firewall-cmd --reload

5. Get the status of the firewalld service

$ sudo systemctl status firewalld

When to use firewalld, nftables, or iptables:

1. firewalld: Use the firewalld utility for simple firewall use cases. The utility is easy to use and covers the typical use cases for these scenarios.

2. nftables: Use the nftables utility to set up complex and performance critical firewalls, such as for a whole network.

3. iptables: The iptables utility on Red Hat Enterprise Linux 8 uses the nf_tables kernel API instead of the legacy back end. 

The nf_tables API provides backward compatibility so that scripts that use iptables commands still work on Red Hat Enterprise Linux 8. For new firewall scripts, Red Hat recommends to use nftables.

Backup and Restore MySQL Databases on Red Hat Enterprise Linux 8 - Step by Step Process ?

This article covers how to take Backups and restore a MySQL database on Red Hat Enterprise Linux 8.

Advantage of logical backup:

The main advantage of logical backup over physical backup is portability and flexibility. 

The data can be restored on other hardware configurations, MariaDB versions or Database Management System (DBMS), which is not possible with physical backups.

Note that physical backup must be performed when the mariadb.service is not running or all tables in the database are locked to prevent changes during the backup.

The mysqldump client is a backup utility, which can can be used to dump a database or a collection of databases for the purpose of a backup or transfer to another database server. 

The output of mysqldump typically consists of SQL statements to re-create the server table structure, populate it with data, or both. 

Alternatively, mysqldump can also generate files in other formats, including CSV or other delimited text formats, and XML.

Advantages of Physical backup:

1. Output is more compact.

2. Backup is smaller in size.

3. Backup and restore are faster.

4. Backup includes log and configuration files.

You can use one of the following MariaDB backup approaches to back up data from a MariaDB database:

1. Logical backup with mysqldump

2. Physical online backup using the Mariabackup tool

3. File system backup

4. Replication as a backup solution

To Backing up an entire database with mysqldump:

Execute the command:

# mysqldump [options] db_name > backup-file.sql

Using mysqldump to back up a set of tables from one database:

To back up a subset of tables from one database, add a list of the chosen tables at the end of the mysqldump command:

# mysqldump [options] db_name [tbl_name …​]

To restore the data while keeping the original backup files, use the following procedure:

1. Run the mariabackup command with the --copy-back option:

$ mariabackup --copy-back --target-dir=/var/mariadb/backup/

2. Fix the file permissions.

When restoring a database, Mariabackup preserves the file and directory privileges of the backup. However, Mariabackup writes the files to disk as the user and group restoring the database. 

For example, to recursively change ownership of the files to the mysql user and group:

# chown -R mysql:mysql /var/lib/mysql/

3. Start the mariadb service:

# systemctl start mariadb.service

Install Apache Maven on Ubuntu 20.04 - Step by Step process ?

This article covers methods to easily install Apache Maven on the Ubuntu system. You will also learn how to uninstall Apache Maven from Ubuntu if you ever need to do so.

Apache Maven is a free and open-source project management tool primarily for Java projects. It is based on POM and also used to build and manage projects written in C#, Ruby, Scala, and others.

To Install Apache Maven on Ubuntu:

1. Apache Maven is based on Java. So Java must be installed in your server. You can install the Java using the following command:

$ apt-get install default-jdk -y

2. By default, Apache Maven is available in the Ubuntu 20.04 default repository. You can install it with the following command:

$ apt-get install maven -y

3. Once the installation is completed, you can verify the Apache Maven version with the following command:

$ mvn -version

Install LibreOffice on CentOS 8 - Step by Step Process ?

This article covers LibreOffice installation on CentOS 8 distribution. LibreOffice is a powerful and open-source office suite that can be used on Linux, Mac as well as on Windows.

It provides various features such as word documentation, spreadsheets, data processing, drawing, presentation design, Math calculation, and more.

How to uninstall Old LibreOffice or OpenOffice Versions ?

If any previously installed LibreOffice or OpenOffice versions you have, remove it using following command.

# yum remove openoffice* libreoffice* [on RedHat based Systems]
$ sudo apt-get remove openoffice* libreoffice*	[On Debian based Systems]