Die Passwortverwaltung sollte einfach sein. Diese Befehlszeilen-Passwortmanager speichern unsere Anmeldeinformationen, Titel, Web-URLs, Notizen und andere Details in einer verschlüsselten Datei. Wir können diese Tools verwenden, um unsere Anmeldeinformationen einfach zu verwalten. Wir können sogar individuelle Passwortdateien verwalten, die sehr einfach zu identifizieren und zu sortieren sind.
Diese Tools bieten Optionen zum Bearbeiten, Hinzufügen, Generieren und Abrufen von Kennwörtern. Es enthält ein sehr kurzes und einfaches Shell-Skript, das in der Lage ist, Passwörter vorübergehend in Ihre Zwischenablage zu legen und Passwortänderungen zu verfolgen.
In diesem Artikel erkläre ich zwei der Password Manager-Befehlszeilentools.
1. Passmgr
Es ist ein einfaches und tragbares Passwort-Manager-Tool. Es speichert Passphrasen sicher und ruft sie über die Befehlszeile ab. Im Standardmodus ermöglicht passmgr die Auswahl gespeicherter Passphrasen, die dann für eine begrenzte Zeit in die Zwischenablage kopiert werden, um sie in ein Passphrasenfeld einzufügen. Nach dieser Zeit wird die Zwischenablage gelöscht.
Alle Anmeldeinformationen werden AES256-GCM-verschlüsselt in einer einzigen Datei gespeichert, die sich standardmäßig im Home-Verzeichnis des Benutzers befindet. Der Verschlüsselungsschlüssel für diese Datei wird mithilfe von scrypt aus einer Master-Passphrase abgeleitet.
Voraussetzungen
- Go installieren
- Xclip- oder Xsel-Befehl installiert werden
Vor der Installation von Passmgr müssen wir diese Voraussetzungen erfüllen.
Go installieren
Abhängig von unserer Serverarchitektur können wir das erforderliche Paket herunterladen und zur Installation entpacken.
#yum update
# wget https://storage.googleapis.com/golang/go1.6.2.linux-amd64.tar.gz
# tar -xzvf go1.6.2.linux-amd64.tar.gz -C /usr/local/
Ich habe das Paket für eine 64-Bit-Architektur heruntergeladen. Sie können wie zuvor serverweit einen Arbeitsordner mit Umgebungsvariablen erstellen.
# cd /root
# mkdir go
# cat /etc/profile.d/goenv.sh
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
# source /etc/profile.d/goenv.sh
# go version
go version go1.6.2 linux/amd64
Installieren von Xclip oder Xsel
Um diese Befehle auf dem CentOS 7-Server zu aktivieren, müssen wir diese Abhängigkeitspakete installieren, gefolgt von der Paketinstallation. Bitte befolgen Sie diese Schritte, um diesen Befehl zu aktivieren.
# yum install libX11.x86_64
# yum install libX11-devel.x86_64
# yum install libXmu.x86_64
# yum install libXmu-devel.x86_64
# wget ftp://mirror.switch.ch/pool/4/mirror/epel/7/x86_64/x/xclip-0.12-5.el7.x86_64.rpm
# wget https://dl.fedoraproject.org/pub/epel/7/x86_64/x/xsel-1.2.0-15.el7.x86_64.rpm
# rpm -Uvh xsel-1.2.0-15.el7.x86_64.rpm
warning: xsel-1.2.0-15.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:xsel-1.2.0-15.el7 ################################# [100%]
# rpm -Uvh xclip-0.12-5.el7.x86_64.rpm
warning: xclip-0.12-5.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:xclip-0.12-5.el7 ################################# [100%]
Passmgr . installieren
Nach Abschluss der obigen Installation können wir dieses Passmgr-Tool in einem einzigen Schritt wie folgt aktivieren:
# go get github.com/urld/passmgr/cmd/passmgr
Jetzt können wir laufen "passmgr"
um das Master-Passwort für unser Password Manager-Tool festzulegen und unseren primären Eintrag in unser Tool zu machen.
# passmgr
[passmgr] new master passphrase for /root/.passmgr_store:
[passmgr] retype master passphrase for /root/.passmgr_store:
-- store is empty --
Choose a command [(S)elect/(f)ilter/(a)dd/(d)elete/(q)uit] a
Enter the values for the new entry
User: Saheetha
URL: linoxide.com
Passphrase:
n) User URL
1) Saheetha linoxide.com
Passmgr verwendet
Dieses Tool bietet verschiedene Optionen zur Verwaltung des Passworts. Mit diesen Optionen können wir eine bestimmte Zeichenfolge hinzufügen, löschen und suchen. Wir können den Befehl help ausführen, um alle möglichen Optionen mit diesem Tool aufzulisten.
# passmgr --help
Usage of passmgr:
-add
store new credentials
-appTTL int
time in seconds after which the application quits if there is no user interaction (default 120)
-clipboardTTL int
time in seconds after which the clipboard is reset (default 15)
-del
delete stored credentials
-file string
specify the passmgr store (default "/root/.passmgr_store")
Beispiele:
Mit der Option –add wie folgt können Sie unserem Password Manager-Tool neue Einträge hinzufügen:
# passmgr -add
[passmgr] master passphrase for /root/.passmgr_store: docker
n) User URL
1) Saheetha linoxide.com
Enter the values for the new entry
User: [email protected]
URL: work.example.com
Passphrase:
n) User URL
1) Saheetha linoxide.com
2) [email protected] work.example.com
Wir können die Anmeldeinformationen mit der Option –file in einer Datei speichern/lesen. Standardmäßig werden alle Passwörter in der Datei “/root/.passmgr_store” gespeichert. Wir können die Passwortdatei für einen bestimmten Eintrag mit diesem Befehl wie folgt lesen:
# passmgr -file /root/.passmgr_store
[passmgr] master passphrase for /root/.passmgr_store:
n) User URL
1) Saheetha linoxide.com
2) [email protected] work.example.com
3) testuser website.com
Choose a command [(S)elect/(f)ilter/(a)dd/(d)elete/(q)uit] 1
Choose a command [(S)elect/(f)ilter/(a)dd/(d)elete/(q)uit] S
Select: 1
Passphrase copied to clipboard!
Clipboard will be erased in 15 seconds.
Wir können die Filteroption verwenden, um unsere Suche auf eine bestimmte Zeichenfolge wie folgt einzuschränken:
# passmgr
[passmgr] master passphrase for /root/.passmgr_store:
n) User URL
1) Saheetha linoxide.com
2) [email protected] work.example.com
3) testuser website.com
4) test test.com
Choose a command [(S)elect/(f)ilter/(a)dd/(d)elete/(q)uit] f
Filter: test
n) User URL
3) testuser website.com
4) test test.com
Der Filter kann zurückgesetzt werden, indem er leer gelassen wird.
Um einen Eintrag aus dem Password Manager Tool zu löschen, können wir die Option d oder delete verwenden. Bitte sehen Sie sich … an example unter:
# passmgr
[passmgr] master passphrase for /root/.passmgr_store:
n) User URL
1) Saheetha linoxide.com
2) [email protected] work.example.com
3) testuser website.com
4) test test.com
Choose a command [(S)elect/(f)ilter/(a)dd/(d)elete/(q)uit] d
Delete: 3
Delete all secrets for 'testuser | website.com? [Y/n] y
n) User URL
1) Saheetha linoxide.com
2) [email protected] work.example.com
3) test test.com
Choose a command [(S)elect/(f)ilter/(a)dd/(d)elete/(q)uit] q
In diesem example, ich habe die gelöscht "testuser"
Eintrag aus meinem Passwort-Manager.
2. Titan
Titan ist ein weiteres Commandline Password Manager-Tool, das in jedem der Unix-Betriebssysteme verwendet werden kann. Es verwendet die OpenSSL-Bibliothek, um die Verschlüsselung durchzuführen. Die AES-Verschlüsselung wird mit 256-Bit-Schlüsseln verwendet. In Titan ist die Passwortdatenbank auch vor Manipulation geschützt, indem ein Keyed-Hash Message Authentication Code (HMAC) verwendet wird. Während der Verschlüsselung wird ein eindeutiger, kryptographisch zufälliger Initialisierungsvektor verwendet. Jedes Mal, wenn die Passwortdatenbank verschlüsselt wird, wird ein neuer Initialisierungsvektor generiert.
Titan verwendet SQlite zum Speichern der Passwörter. Das Datenbankschema ist einfach und leicht.
Ich habe diese Schritte befolgt, um Titan für unseren CentOS7-Server zu installieren.
# yum install sqlite-devel.x86_64 sqlite-tcl.x86_64
# yum install openssl-devel
# git clone https://github.com/nrosvall/titan.git
# cd titan/
# make
# make install
Titan Verwendungen
Titan bietet auch einige Optionen zur Verwaltung der Passwörter über die Kommandozeile. Werfen wir einen Blick auf einige von ihnen unten:
Zunächst müssen wir eine Datenbank zum Speichern unserer Passwörter erstellen. Wir können unsere neue Datenbank erstellen, indem wir einfach diesen Befehl ausführen.
# titan --init /home/passwords/passwd.db
Sie können das Kennwort angeben, um diese Datenbank während der Erstellung zu schützen. Nun können Sie alle benötigten Einträge zu dieser Datenbank hinzufügen, indem Sie die --add or just -a
Option wie folgt:
# titan --add
Title: Work
Username: sshameer
Url: linoxide.com
Notes: Admin notes
Password (empty to generate new):
Unsere Datenbank sollte zum Hinzufügen der Einträge entschlüsselt werden. Um es zu entschlüsseln, können Sie die Option titan –decrypt . verwenden [database path]. Hier können wir verwenden:
# titan --decrypt /home/passwords/passwd.db
Um die hinzugefügten Einträge anzuzeigen, können Sie die Option verwenden "--list-all".
# titan --list-all
=====================================================================
ID: 1
Title: Work
User: sshameer
Url: linoxide.com
Password: **********
Notes: Admin notes
Modified: 2017-07-08 15:11:56
=====================================================================
Nachdem Sie alle möglichen Einträge hinzugefügt haben, sollten Sie aus Sicherheitsgründen unsere Passwortdatenbank verschlüsseln. Wir können einfach diesen Befehl ausführen, um ihn zu verschlüsseln.
#titan --encrypt /home/passwords/passwd.db
Bitte sehen man titan
oder titan --help
für mehr Informationen.
Ich habe vor kurzem einen anderen Befehlszeilen-Passwortmanager gefunden “Passloch“, das KeePass-Datenbanken verwendet.
Einpacken
Befehlszeilen-Passwortmanager sind einfach und großartig, wenn Sie sich per SSH aus der Ferne anmelden. Es ist ein guter erster Schritt, alle Ihre vorhandenen Passwörter in den Passwort-Manager zu übertragen. Ein Passwort-Manager macht gute Sicherheit so einfach wie möglich. Alles, was Sie tun müssen, ist sich ein Master-Passwort zu merken (mach es zu einem guten!), und der Passwort-Manager erledigt den Rest und generiert und speichert nach Bedarf ein einzigartiges Passwort für jedes Konto. Diese Anmeldedaten werden nicht nur verschlüsselt, sondern auch sicher gespeichert. Vielen Dank, dass Sie diesen Artikel gelesen haben. Wenn Sie weitere Tools gefunden haben, können Sie sie gerne hier teilen.