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 จะมีบอกเอาไว้
ถ้าใช้งานได้แล้วจะได้หน้าตาแบบนี้
เพิ่มเติม
- การจัดระเบียบ password organizing-password-store
- ใช้ Pass เป็นทีม @davidpiegza/using-pass-in-a-team
- Pass client ที่รองรับ ใช้จัดการ password ที่ encrypted แล้ว Compatible Clients