ใช้ Pass free password manager

Posted on
passwordmanager

Lastpass มีการ limit featured มากขึ้น เลยอยากหาเครื่องมืออื่นมาทดแทน ไปเจอ Pass โดยบังเอิญ น่าสนใจ มัน open source, ใช้ได้ทุก platform ที่คนนิยม(และตัวเองใช้) รวมถึง Android, iOS ด้วย

ทดลองเล่นกันซักหน่อย คำสั่งต่อไปเป็นของ macOS ซึ่งเป็นเครื่องหลักที่ใช้งานอยู่ตอนนี้ สำหรับ OS อื่นๆ ที่เวบไซต์ของ Pass ก็มีเขียนแนะนำอยู่

ต้องติดตั้งก่อน

ถ้า macOS ยังไม่ได้ลง brew ให้ติดตั้ง brew ก่อน ทำตามคำอธิบายในเวบ brew.sh

ต่อไปติดตั้ง package สำคัญ

brew install gnupg pinentry-mac

สร้างหรือแก้ไขไฟล์ ~/.gnupg/gpg.conf ใส่เนื้อหาตามนี้

# Comment out or remove this line if it's there:
# pinentry-mode loopback

# and add this line:
use-agent

สร้างหรือแก้ไขไฟล์ ~/.gnupg/gpg-agent.conf ใส่เนื้อหาตามนี้

pinentry-program /usr/local/bin/pinentry-mac

ในการใช้งาน Pass ตัวแอพมันเองเป็น command line เก็บข้อมูลการ login เป็น encrypted file ลง disk .password-store

ภาพรวมขั้นตอนการติดตั้ง

  • สร้าง keypair ด้วย GPG
  • setup Pass
  • ทำให้ Pass sync ข้ามเครื่องได้
  • setup browser plugin

ถ้าเราติดตั้งแอพตามขั้นตอนข้างต้นแล้ว ทำต่อกันเลย

1. สร้าง GPG keypair โดยสั่ง

gpg --full-generate-key
  • กำหนด ชื่อ,สกุล,อีเมลที่จะใช้ email นี้จะใช้ในขั้นตอนต่อไปด้วย
  • เลือก option แรกที่จะสร้าง key สำหรับ encrypt และ decrypt;
  • เลือก algorithm เป็น RSA 4096 bit

2. สร้าง repository/folder ที่จะใช้เก็บข้อมูลของ Pass

pass init siritas@dahoba.xyz

เปลี่ยน siritas@dahoba.xyz เป็น email ที่ใช้ในขั้นตอน 1

3. คำสั่งขั้นต่อไป ทำให้ Pass สามารถ sync ข้ามเครื่องได้

pass git init

คำสั่งนี้จะทำให้ folder .password-store เป็น git repository ข้อมูลข้างในจะถูก encrypted ด้วย gpg key นะ อ่านไม่รู้เรื่อง

เราสามารถสร้าง git repo ที่ gitlab, github หรือที่อื่นๆก็ได้ เพื่อจะ push repo ของ Pass ขึ้นไปเก็บเอาไว้ได้ device อื่นของเราที่ต้องการจะ sync ข้อมูลไปก็สามารถเข้าถึงได้ เอาไว้ค่อยเขียนตอนหน้าละกัน

4. export Lastpass แล้ว import เข้า Pass

การ export Lastpasss

4.1 จาก browser extension ให้เลือก More Options > Advanced > Export > Lastpass CSV file

เนื้อหาไฟล์จะถูกเปิดใน tab ใหม่ ให้ save ไฟล์ออกมาเป็น .csv

4.2 ไปดาวโหลด ruby script ใช้สำหรับ import Lastpass csv จากที่นี่ lastpass2pass.rb

4.3 เปลี่ยน mode ให้ execute ได้ chmod +x lastpass2pass.rb ใน macOS จะมี ruby ติดตั้งมาให้อยู่แล้ว รันคำสั่ง/script Ruby ได้เลย

แล้วให้มาสั่ง Pass ที่ terminal ด้วยคำสั่งนี้

./lastpass2pass.rb /path/to/lp-export-20190702.csv

ให้เปลี่ยน /path/to/lp-export-20190702.csv เป็น path ที่เก็บไฟล์ csv อยู่

รันคำสั่งแล้วรอสักครู่ หากมีข้อมูลจาก lastpass เยอะ ก็จะรอนานหน่อย

5. ติดตั้ง browser extension แบบที่ Lastpass มี

ส่วนนี้ OS จะต้องติดตั้งแอพเพิ่ม ใช้คู่กับ browser extension

5.1 ติดตั้งตัว browser extension จาก Chrome Webstore browserpass-ce สำหรับ platform อื่น หรือ browser อื่น ดูเพิ่มเติมได้จาก browserpass-extension

5.2 Browserpass Native ดูวิธีติดตั้งที่ Browserpass Native สำหรับ macOS เราจะใช้ brew ช่วยติดตั้งอีก

brew tap amar1729/formulae
brew install browserpass

เมื่อติดตั้งเสร็จ เราจะต้องรันคำสั่งต่อไปนี้เพื่อให้ browser extension สามารถ decrypt password จาก Pass ออกมาใช้ได้

PREFIX='/usr/local/opt/browserpass' make hosts-chrome-user -f /usr/local/opt/browserpass/lib/browserpass/Makefile

หากมี browser ตัวอื่นๆ ที่อยากจะใช้ด้วยอีก ต้องรันคำสั่งอีกครั้ง โดยเปลี่ยนชื่อ *-chrome-* เป็น firefox, brave, etc. ใน terminal จะมีบอกเอาไว้

ถ้าใช้งานได้แล้วจะได้หน้าตาแบบนี้

browser extension image

เพิ่มเติม