Titan – A Command line Password Manager For Linux

Titan - A Command line Password Manager For Linux

There are plethora of GUI based password managers. A quick google search will lead you to pick one suitable for you. But the command line password managers are very few. The one today we talk about is Titan. It is written using C programming language. It uses SQlite to save the passwords. All passwords will be stored using AES encryption. Titan uses openSSL to do the encryption. Password database is also protected from tampering by using a keyed-hash message authentication code (HMAC).

In this brief tutorial, let us see how to install and use Titan command line password manager.

Installation

The following instructions are tested under Ubuntu 16.04 LTS server edition.

First, Install SQlite, openSSL and Git if they are not installed already:

sudo apt-get install libsqlite3-dev libssl-dev git

Git clone Titan repository:

git clone https://github.com/nrosvall/titan.git

The above command will clone the Titan repository in a directory called titan in your current working directory.

cd titan

Then, compile and install Titan using commands:

make
sudo make install

Titan Usage

Titan usage is fairly and straight forward. The typical command to use Titan is:

titan [flags] [options]

First, initialize a new database using command:

titan -i mypasswords

Where mypasswords is the database name. This database will be created in the current directory.

To show the database path, just run:

titan -s

If you have more than one database, you can switch between them by running the following command:

titan -u <database_path>

Now you can start adding the entries.

To add a new entry in Titan, run:

titan -a

Fill up the values one by one.

Title: MySQL root password
Username: root
Url: www.ostechnix.com
Notes: Database administrator password
Password (empty to generate new):

You can view all entries at any time using command:

titan -A

You will see an output something like below.

=====================================================================
ID: 1
Title: MySQL root password
User: root
Url: www.ostechnix.com
Password: **********
Notes: Database administrator password
Modified: 2017-03-20 15:45:10
=====================================================================

To list a particular entry use -l option with ID name like below.

titan -l 1

To search entries, use -f option. For example, the following command will search for the entries about MySQL.

titan -f mysql

To edit any entry, you need to use -c option with ID name like below.

titan -c 1

The above command will allow you to edit an entry that has ID number 1. It will list the current details of each ID before editing them.

Current title MySQL root password
New title: MySQL password
Current username root
New username: sk
Current url www.ostechnix.com
New url: www.ostechnix.com
Current notes Database administrator password
New note: Database user password
Current password ubuntu
New password (empty to generate new):

To remove an entry, run:

titan -r <ID_NAME>

To encrypt the current database, run:

titan -e

Similarly, to decrypt a database use -d option.

titan -d <database_path>

To generate a password, use -g option with password length. Say for example, to generate a password with 10 letters, run:

titan -g 10

To view all passwords, run:

titan --show-passwords -A

To encrypt automatically after exit:

titan --auto-encrypt

To open the help section, run:

titan --help

Also, refer the man pages.

man titan

And, that’s all. Hope this helps. If you find this guide useful, share it on your social networks and support us.

Cheers!

Resource:

Thanks for stopping by!

Help us to help you:

Have a Good day!!

You may also like...

  • Nameless

    It’s better to use full path when using titan –init. That way Titan always knows the full path and user does not need to care in what directory he/she calls titan.

  • Eddie O’Connor

    Nice. One suggestion? The text for the actual command line entries is way too light, maybe reverse things and mane the “instruction” text light and make the CLI text bold?….it just helps a lot when trying to read this on a small screen or from a monitor that’s not that “bright” anymore.