Installing TeamPass Collaborative Passwords Manager on RHEL 7/CentOS 7

1. Overview

 

TeamPass is an enterprise password management solution which is best for managing passwords in a collaborative way by sharing them among team members. It is an open-source password management solution but offers a large set of features permitting to manage passwords for an enterprise environment and related data in an organized with different privilege defined for each user and group.

In this tutorial will show how to install TeamPass, password management and collaboration solution application on CentOS 7 Linux. At the time of writing this document, the latest TeamPass version that available to download is 2.1.27.

2. Prerequisites

 

In this article of installing TeamPass for password management solution, it is supposed that:

a. You have already install RHEL/CentOS 7 Linux server up and running. In case that you don’t, you would probably like to read this link. Minimal RHEL/CentOS 7 Installation With Logical Volume Manager (LVM).
b. You have already done the initial server setup. Please refer to this link Minimal RHEL/CentOS 7 Initial Server Setup.

3. Install and Configure Database for TeamPass Application

 

In CentOS 7,  MySQl is moved to MariaDB, execute the following command to install MariaDB.

# yum -y install mariadb-server mariadb-devel

Enable MariaDB service to start it a the system boot and start its service.

# systemctl enable mariadb
# systemctl start mariadb

Now let do the security hardening of MariaDB by execute the following command.

# mysql_secure_installation

We need to create a database and a user for TeamPass password management solution and grant it all database privileges.

# mysql -u root -p
> create database teampassdb;
> create user 'teampassuser'@'localhost' identified by 'P@ssword01';
> grant all privileges on teampassdb.* to teampassuser@localhost;
> flush privileges;

4. Installing Apache Web Server

 

Before we can install TeamPass password management and collaboration solution web application, we need to install Apache Web server and some mandatory packages as the following first.

# rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# yum install -y httpd php56w php56w-opcache php56w-xml php56w-mcrypt php56w-gd php56w-devel php56w-mysql php56w-intl php56w-mbstring php56w-ldap php56w-bcmath git

Enable Apache service to start it a the system boot and start its service.

# systemctl enable httpd
# systemctl start httpd

Now let move to the installation directory for TeamPass password management solution, /var/www, download it directly from GitHub.

# cd /var/www/
# git clone https://github.com/nilsteampassnet/TeamPass.git

It is recommended to create a symbolic link to the extracted directory of TeamPass password management solution. So, it will make us easy to upgrades TeamPass password management solution to a newer versions.

# cd /var/www/
# mv TeamPass TeamPass-2.1.27
# ln -s  TeamPass-2.1.27 TeamPass

Also, we need to make sure that the permissions on the TeamPass password management solution root directories are set correctly as the following.

# chmod -R 755 /var/www/TeamPass-2.1.27
# chown -R apache:apache /var/www/TeamPass-2.1.27

Next, we need to open HTTP port  80 on IPTables by edit file “/etc/sysconfig/iptables” as the following.

# vim /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
# systemctl restart iptables
# iptables -L -n -v

Usually, the default PHP installation  has not configured the correct timezone or php error reporting. While not required to run TeamPass application, it’s highly recommended to enable error reporting to syslog for troubleshooting issues with plugins or other scripts. Edit file “/etc/php.ini” as the following.

# vim /etc/php.ini
date.timezone = Asia/Phnom_Penh
log_errors = syslog

We also need to increase the PHP maximum execution time for TeamPass password management solution by editing the PHP configuration file “/etc/php.ini” as the following.

# vim /etc/php.ini
max_execution_time = 120

Then, we need to restart Apache service.

# systemctl restart httpd

We also need to disable SELinux.

# vim /etc/selinux/config
SELINUX=disabled
# reboot

5. Configure VHost and Install TeamPass Application

 

To create a VHost for TeamPass password management and collaboration web application, we need to create a *.conf file in directory “/etc/httpd/conf.d” as the following.

# vim /etc/httpd/conf.d/teampass.conf

<VirtualHost *:80>

        ServerAdmin sysadmin@techspacekh.com
        ServerName teampass.techspacekh.com
        DocumentRoot /var/www/TeamPass

        ErrorLog "/var/log/httpd/teampass.techspacekh.com.log"
        CustomLog "/var/log/httpd/teampass.techspacekh.com.log" combined

</VirtualHost>

Then, we need to restart Apache service.

# systemctl restart httpd

To access to TeamPass password management solution with domain as configured in the VHost above we need DNS record for this domain. If you don’t have a DNS record for this domain, we just edit the host file. The host file for Windows is located in “C:\Windows\System32\drivers\etc\host” and you can edit it with Notepad.

192.168.150.132 teampass.techspacekh.com

After editing the host file, we can test by ping to the domain name and make use the reply IP address for this domain name is IP of server that we install Team Pass password management solution.

>ping teampass.techspacekh.com

Pinging teampass.techspacekh.com [192.168.150.132] with 32 bytes of data:
Reply from 192.168.150.132: bytes=32 time<1ms TTL=64
Reply from 192.168.150.132: bytes=32 time<1ms TTL=64
Reply from 192.168.150.132: bytes=32 time<1ms TTL=64
Reply from 192.168.150.132: bytes=32 time<1ms TTL=64

Ping statistics for 192.168.150.132:
 Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
 Minimum = 0ms, Maximum = 0ms, Average = 0ms

Finally, we are ready to install TeamPass password management and collaboration solution web application. In your browser, in the address box type in http://teampass.techspacekh.com and the following windows appears.

Click “NEXT” to continue.

We come to the Server checks step which TeamPass password management program will check the its basic requirement prerequisites software to operate TeamPass password management solution. Click “LAUNCH” and make sure that everything is OK and click “NEXT” to continue.

Next step is Data connection and we need to fill in some database information that we create in the above step for TeamPass password management program. Click “LAUNCH” and make sure that database connection is successful and click “NEXT” to continue.

Now we come to Preparation step which we need to inter the Administrator password for TeamPass password management solution.  Click “LAUNCH” and click “NEXT” to continue.

Next step is Table creation step we need to create database table for TeamPass password management program. Click “LAUNCH” to create the database table and click “NEXT” to continue.

Now we are at the final step of installing TeamPass password management program. Click “LAUNCH” and click “NEXT” and then cick “Move to home page”.

Now we are at the login screen of  TeamPass password management solution. We can try to login to TeamPass password management program Web interface with the user admin and the password set in above step which is “P@ssw0rd2017”.

After successfully login to TeamPass password management solution for the first time, we will see that the Maintenance mode is activated and only Admin user can login. The other users cannnot login until we disable the Maintenance mode TeamPass password management program.

To disable the Maintenance mode TeamPass password management program, we need to go to Settings and then on the Setting tap set the option “Enable Maintenance mode ” to No.

7. Conclusion

 

That’s all about installing TeamPass password management solution on RHEL/CentOS 7 from Tech Space KH. Teampass is a very good password management tool and effective team collaborative passwords manager . Hopefully, you can find this guide informative. If you have any questions or suggestions you can always leave your comments below. I will try all of my best to review and reply them.

Comments

comments