เมื่อ LastPass ไม่ฟรีอีกแล้ว หนีไป Bitwarden ก็ได้

จากเมื่อหลายเดือนก่อน เรารีวิว Password Manager ตัวนึงคือ Lastpass ไป และเมื่อไม่นานมานี้ ก็มีอีเมล์แจ้งเตือนเข้ามาว่า เขาจะมีการปรับให้บริการตัวฟรี ไปเป็นว่า เราจะสามารถใช้ได้แค่บน Mobile หรือ Desktop ได้เพียงอย่างใดอย่างหนึ่ง โดยให้เราสามารถสลับได้ 3 ครั้งเพื่อหาว่า เราต้องการใช้บนไหนมากกว่ากัน ซึ่งเห้ยยย มันไม่ได้เว้ยยยย ทำให้เราต้องหนีไปใช้ตัวอื่น

แต่พอเราลองไปดูในตลาด เราพบว่าหลาย ๆ ตัวมันก็แอบแพง และ เราก็ใช้ไม่ถึง เลยไม่อยากจะเสียเงินให้กับพวกนี้เลย ประกอบกับ เรามี Server อยู่แล้ว ถ้าเรารันมันใน Server ของเราได้ ก็น่าจะดีมาก ๆ เลย เลยไปนั่งหาอยู่นานมากว่า มีตัวไหนบ้างที่เราสามารถ Self-Hosted เองได้ ปรากฏว่า ไปเจอตัวนึงคือ Bitwarden ที่เราสามาถรทำ Self-Hosted เองได้เลยถ้าเรามี Server เลยจัดไปฮ่ะ

ปล. สำหรับคนที่ไม่คิดจะ Host Bitwarden เอง ก็ข้ามไปที่ Section การใช้งานได้เลย

ติดตั้ง Bitwarden บน Server

ในการติดตั้งง่ายมาก ๆ เพราะ เราสามารถ Deploy Bitwarden ผ่าน Docker Container ได้เลย ถ้าใครที่บ้านมี NAS หรือองค์กรที่มี Server กับ Public IP Address อยู่แล้ว ก็สามารถทำได้เลย

ใน Server ของเราใช้ Unraid ที่ลงพวก Community Application เอาไว้ เราก็สามารถเข้าไปหาใน Tab ของ App ได้เลย เมื่อหา เราก็จะเจอกับ Docker Image ของ Bitwarden อยู่ เรากดสร้างได้เลย

ส่วนของ Environment Settings ของ Image นี้ที่เราต้องตั้งค่าก็จะมี WebUI HTTP Port ที่เป็น Port สำหรับการใช้งาน UI ของ Bitwarden ซึ่ง Default มันตั้งไว้ 80 เราจะต้องเปลี่ยนเป็น Port อะไรก็ได้ที่ไม่ซ้ำกับที่เราใช้งานอยู่

ตัวถัดไปคือ Server Admin Email จะเป็น Email Address ของผู้ดูแลระบบ หรือเจ้าของ Server สำหรับการตั้งค่า และ ไว้เป็น Contact Point สำหรับคนที่ต้องการ Support จากใน Server ของเรานั่นเอง

และสุดท้ายคือ Admin Token จะไว้สำหรับการเข้าหน้า Admin ในระบบของเรา แนะนำให้ Generate ด้วยจำนวนหลักเยอะ ๆ เอาให้เดายาก ๆ ไปเลย เพราะถ้าเราตั้งง่าย และมีคนแกะได้ มันเหมือนกับเรายื่น Master Key ของบ้านทั้งหลังให้โจรเลยนะ ไม่ใช่แค่ Account ของเราคนเดียวที่จะซวย แต่คนที่ใช้งาน Server เราอยู่นั่นแหละซวย ฮ่า ๆ

จากนั้น เราก็กดสร้างได้เลย เพื่อดึง Image ลงมาสร้างเป็น Container ให้เรียบร้อย เสร็จแล้วก็เช็คก่อนว่า Container ที่เราสร้างไว้มันทำงานหรือยัง เพราะถ้ามันสร้างออกมาแล้ว มันปิดตัวเองไป แปลว่า เราอาจจะลืมตั้งค่า Environment บางตัวที่มันจำเป็นแน่ ๆ ทำให้มันเปิดใช้งานไม่ได้ เราก็ต้องไปแก้ไขให้ถูกต้อง มันก็จะรันได้เลย

ในการเข้าไปตั้งค่าระบบ เราสามารถเข้าไปที่ IP Address ของ Server เราบน Port ที่เราตั้งไว้ใน Environment Settings ได้เลย เมื่อเข้ามามันจะเป็นหน้า Login ของคนทั่ว ๆ ไป ให้เราเติม /admin ตามลงไป เราก็จะได้หน้าที่ให้เราใส่ Admin Token อันนี้เราก็ใส่ Admin Token ที่เราใส่ไว้ใน Environment Settings ของเราลงไปได้เลย

เท่านี้เราก็เข้าไปตั้งค่าตัว Bitwarden Server ของเราได้แล้ว ของ Configuration นึงที่จำเป็นมาก ๆ ในการ Config คือ SMTP Email มันจะเป็นตัวบอกว่า เราจะให้มันส่งเมล์เพื่อเตือน หรือ เมื่อเราลืมรหัสผ่านต่าง ๆ จะให้มันส่งเมล์ไปหาคนที่กดลืมยังไง ในตัวอย่างนี้เราเลือกใช้ Email ส่วนตัวที่เป็น Gmail ตรง ๆ เลยก็ได้ สำหรับตัว Password ถ้าเราใช้ Password ตอนที่เราเข้า Google Account เลยมันจะใช้ไม่ได้ ถ้าเราเปิด 2FA ไว้ ดังนั้นเราต้องเข้าไปขอ App Password ในหน้า Dashboard ของ Google Account เรานั่นเอง

อีก Feature นึงที่เราอยากได้ตั้งแต่ใช้ LastPass แล้วก็คือการใช้ Hardware 2FA ในการทำ 2FA ก่อนเข้า Account ของเรานั่นเอง แน่นอนว่า Bitwarden ทำได้แจ้ แต่ก่อนที่ User ในระบบของเราจะเปิดการใช้งาน Hardware 2FA ได้นั่น เราจะต้องเข้าไปตั้งค่าที่ Yubikey Settings ก่อน ซึ่งอันนี้เราจะต้องใส่ 2FA Server เข้ามา ส่วนตัวแล้วเราไม่มี ดังนั้นเราจะเลือกใช้ Server ข้างนอกไป เป็นของ Yubikey เอง ที่เราสามารถเข้าไปขอ Client ID และ Password มาได้เลย ใส่เข้าไปและ Save ก็จะใช้งานได้แล้ว ง่ายมาก ๆ

ตั้งค่าให้ใช้งานจากนอกบ้านได้

เราพกพาอุปกรณ์ของเราไปหลาย ๆ ที่มาก ๆ เราไม่ได้อยู่แต่ในบ้านอย่างเดียวเท่านั้น ทำให้เราจะต้องทำให้ Bitwarden ของเราสามารถเข้าถึงได้จากที่ไหนก็ได้ที่มีอินเตอร์เน็ตด้วย เราจึงมาต้องเพิ่มการตั้งค่าบางส่วนเข้ามา ซึ่งมันก็ขึ้นกับระบบของเราว่า มันทำมายังไง

สำหรับเรา ปกติแล้ว ในบ้านเราจะ Map Port 443 เป็น HTTPS เข้ามาที่ Nginx และให้มัน Map Hostname ไปตามที่อยู่ต่าง ๆ ในบ้านต่อไปอีกทอดนึง ดังนั้นจริง ๆ เราจะต้องมาตั้งค่าอยู่ 2 จุดด้วยกันคือที่ NAT บน Router ให้มันรับ Packet ที่เข้ามาด้วย Port 443 วิ่งไปหา Nginx อีกทอด เราก็ต้องตั้งให้ Nginx ยิงไปหา Bitwarden Server ของเรานั่นเอง

ใน Nginx เราก็สามารถเข้าไปตั้งค่าใน site-conf ได้เลย สิ่งที่ต้องเพิ่มคือ Site ใหม่ที่กรอง Hostname ตามที่เราต้องการ กับปลายทางของ Reverse Proxy ก็เป็นอันเรียบร้อยแล้ว

ถ้าเรามี Domain Name เราก็ต้อง Map Domain Name ของเราเข้ากับ Public IP Address ของเราด้วย ตัวอย่างเช่น เราใช้ Cloudflare เราก็สามารถเข้าไปเพิ่ม Address ของเราได้เลย ส่วนตัวของเรา เราใช้งานเป็น Subdomain ของ arnondora.in.th เราก็สามารถเข้าไปเพิ่มบอกว่าเป็น Subdomain ใน Address ตามนี้นะแค่นั้นเลย

เพิ่มเติมอีกคือ Bitwarden ไม่อนุญาติให้เรา Login ผ่าน HTTP ดังนั้น เราจะต้องของ SSL Certificate เผื่อให้ Subdomain หรือ Domain ของเราด้วยนะไม่งั้นจะ Login ไม่ได้

Migrate จาก Lastpass ไป Bitwarden

การย้าย ต้องบอกเลยว่าไม่ยากเลย เพราะตอนที่เราลองเข้าไปหาใน Google เราเจอ Document ของ Bitwarden เลยว่า เราจะย้ายข้อมูลจาก Lastpass ได้อย่างไรเลย แนะนำให้ลองเข้าไปดูได้ที่ Link นี้ Import Data from LastPass เขาบอกไว้ละเอียดหมดเลยว่าเราจะต้องทำอย่างไรบ้าง เพื่อให้ได้ ข้อมูลจาก LastPass มาทั้งหมด

รวม ๆ เราใช้เวลาประมาณ 3 นาที เราก็ย้ายเสร็จแล้ว จะเห็นได้เลยว่า มันง่าย และ Seamless มาก ๆ เราแค่ Export จากที่เก่า และไป Import ในที่ใหม่ได้ตรง ๆ เลย ไม่มีอะไรมาอ่านตาม Document ได้เลย

การ Login บน Self-Hosted Server

จริง ๆ แล้วเรามอง Bitwarden มาสักพักแล้ว มันมีทั้ง App และ Browser Extension หมดเลย ดูพร้อมใช้มาก แต่พอเราเปิดเข้ามาใน App ครั้งแรก เราเห็นปุ่ม Login เลย พอกดเข้าไป เราก็ใส่ Username และ Password เลย แล้วเราจะใส่ที่อยู่ของ Bitwarden Server ตรงไหน สรุปถึงบางอ้อ เมื่อเข้าไปอ่าน Manual จริง ๆ คือ มันมีรูปเฟืองอยู่ด้านบนของจอ ให้เรากดได้

เมื่อเรากดเข้าไป มันจะเป็นการตั้งค่าต่าง ๆ หนึ่งในนั้นเป็นช่องให้เราใส่ที่อยู่ของ Bitwarden Server ที่เราสร้างขึ้นมานั่นเอง เมื่อเราใส่เข้าไป กดถอยกลับมา แล้วก็เข้าไป Login ก็จะใช้งานได้ตามปกติเลย

การใช้งาน

การใช้งาน Bitwarden เราสามารถใช้งานได้จากหลาย Platform ด้วยกันตั้งแต่ App ในทั้ง Android และ iOS จนไปถึง Browser Extension บน Browser ยอดนิยมต่าง ๆ อย่าง Google Chrome สุดท้ายท้ายสุดคือ ผ่านหน้าเว็บไซต์เอง

เรื่องจากการใช้งานในเว็บไซต์ก่อนละกัน เมื่อเรา Login เข้ามา เราจะเห็นความ Lean ของตัวระบบมันเลย เพราะมันไม่ได้มีความ Feature Rich เท่ายี่ห้ออื่น ๆ ที่ต้องจ่ายเงิน แต่ก็ดูดีเลย ในด้านซ้ายเราก็จะเห็นว่า จะเป็นเมนูหลักในการเลือกรหัสผ่านต่าง ๆ กับประเภทของที่เราต้องการเก็บ เราสามารถเก็บ Username และ Password ของเราได้ นอกจากนั้นมันยังเก็บพวกรหัสบัตรเครดิต และ พวก Note ต่าง ๆ ได้ด้วย

ส่วนของการเพิ่มรหัสผ่านจริง ๆ ถ้าคุ้นเคยกับ LastPass อยู่แล้วเราว่าไม่น่าเป็นห่วงเท่าไหร่ เพราะหน้าตามันเหมือนกันมาก ๆ เลยทีเดียว แต่สิ่งที่เพิ่มขึ้นมา และเราชอบมาก ๆ คือช่องสำหรับใส่ TOTP พูดง่าย ๆ เป็นเหมือนตัว Generate OTP เวลาเราทำ 2FA นั่นเอง ปกติเราจะต้องใช้ App อีกตัวอย่าง Authy ในการเก็บพวก TOTP และเวลาจะเอา OTP เราก็ต้องกดเข้าอีก App เพื่อไปเอามา แต่ Bitwarden ทำให้ง่ายกว่านั้นด้วยการที่มันสามารถ Generate OTP ในตัวได้เลย ทำดี กู๊ดจ๊อบ นอกจากนั้นก็เป็นเรื่องของการเปิดดู และ แก้ไขรหัสผ่านละอันนี้ไม่มีอะไรเลย ปกติทั่ว ๆ ไป

อีก Feature ที่เราอยากได้มานานแล้วตั้งแต่ใช้ LastPass ก็คือการที่เราแชร์รหัสผ่านกันได้ อาจจะเป็นคนในบ้านเรากันเองเช่น Account Netflix ของบ้าน หรือจะเป็นพวก รหัสผ่านอะไรบางอย่างที่แชร์กันในองค์กร เราสามารถสร้างเป็น Organisation ได้ โดยที่เราจะ Invite คนเข้ามาก็ใช้งานได้เลย

ถามว่าเจ้าอื่นเขามีอะไรแบบนี้มั้ยก็ต้องบอกว่า มี แต่มันมักจะอยู่ในตัวที่เสียเงินซะหมดเลยทำให้เราก็เซง ๆ ไปตาม ๆ กัน มาได้ใช้ก็ตอนนี้แหละที่ย้ายมาใช้ Self-Hosted Bitwarden

แต่หน้าเว็บเอาจริง ๆ เราว่ามันแอบใช้งานยากมาก ๆ เพราะเวลาเรา Login เราก็จะต้องมาเปิดเว็บแล้วกว่าจะหาเจอว่า มันคืออันไหนอะไรกว่าจะกด Copy Username กว่าจะกด Copy รหัสผ่านอะไรมันก็หลายคลิกมาก ๆ นั่นแหละ ทำให้หน้าเว็บมันไม่ตอบโจทย์เลย การใช้เป็น Browser Extension ดีกว่าเยอะ

ตัว Browser Extension ก็จะอยู่ที่หน้าจอของ Web Browser เราเลย ความดีงามของมันคือ เมื่อเราเข้าเว็บที่เรามีรหัสผ่านอยู่มันจะขึ้นตัวเลขขึ้นมาบอกว่า เรามีรหัสผ่านในเว็บนี้กี่อัน

กดเข้าไป เราจะเจอกับ รหัสผ่านที่เรามี เมื่อเราคลิก มันจะป้อน Username และ Password ให้เราเรียบร้อยเลย โดยที่เราไม่ต้องนั่งก๊อปทีละอัน ทำให้เราสบายไปเลยทีเดียว

อีก Feature ที่เราใช้บ่อย ๆ คือ Password Generator ที่มันจะ Generate Password มาให้เราตามที่เราต้องการได้เลย เราอยากได้กี่ตัว อยากให้ในรหัสผ่านของเรามีตัวเล็กตัวใหญ่ ตัวอักษรพิเศษอะไรก็ว่ากันไป ทำให้เรามั่นใจได้ว่า รหัสผ่านที่เราใส่เข้าไป มันเป็นรหัสผ่านที่ Random พอตัวเดาได้ยาก

และสุดท้ายเป็น App ในโทรศัพท์และ Tablet ของเรา ในวันนี้ตัวอย่างคือ เราใช้บน iPad ละกัน โดยที่ Feature และหน้าตามันจะคล้าย ๆ กับบน Browser Extension เลย แต่สิ่งที่เพิ่มเติมเข้ามาน่าจะเป็นการ Integrate เข้ากับ Keyboard

ใน iOS เราสามารถเข้าไปตั้งค่าที่ Settings > Password > AutoFill Passwords และ ให้เราเลือกเป็น Bitwarden ไป ครั้งแรกมันจะให้เรากรอก Master Password เท่านี้เวลาเราเข้าเว็บหรือ App ที่เรามีรหัสผ่านเก็บไว้ มันก็จะขึ้นมาที่ด้านบนของ Keyboard ให้เรากด AutoFill ได้เลยทันทีง่ายมาก ๆ เลย

ใช้แล้วแตกต่างจากอันเดิมยังไง ?

ในแง่ของการใช้งาน เราต้องบอกเลยว่า ไม่ต่างจาก LastPass ที่เราเคยใช้งานเลย Feature ที่เราใช้งานส่วนใหญ่ มันก็มีมาให้เราใช้ได้ครบทั้ง Loop ของการใช้งานหมดแล้ว เลยไม่ได้มีอะไรที่เราอยากได้มากสักเท่าไหร่

ถ้าเอาอันที่เราได้เพิ่มมาแล้วดีมาก ๆ ก็คือการใช้ Hardware ทำ 2FA ได้ อันนี้โอเคเลย กับ การเปิด Organisation ได้ฟรี ๆ ใน Server ของเราก็ถือว่าเป็นเรื่องดีเลยทีเดียว ทำให้การใช้งานของเรามันสมบูรณ์มากขึ้นไปอีก

สรุป: Bitwarden เป็น Password Manager ที่ตอบโจทย์ Enterprise มากๆ

Bitwarden เป็น Password Manager ที่มีความพิเศษคือ เราสามารถ Self-Hosted ไว้ในบ้าน หรือองค์กรของเราได้เลย ทำให้เรามั่นใจได้ว่า ความลับ ยังคงเป็นความลับอยู่เสมอ ข้อมูลก็ยังคงอยู่ในองค์กรของเราเสมอ พร้อมกับ Feature ที่รองรับ Hardware 2FA ที่ช่วยให้มั่นใจในเรื่องของความปลอดภัยได้ดีกว่าการใช้รหัสผ่านทั่ว ๆ ไป รวม ๆ Feature ที่มันทำได้ ทำให้เราว่า Bitwarden เป็น Password Manager ที่เหมาะสมกับองค์กร กับผู้ใช้ที่มีความ Enthusiastic มากพอที่มี Server ในการ Host ตัวระบบ นอกจาก Self-Hosted แล้ว Bitwarden ก็ยังมีบริการที่เป็น Cloud ตามปกติด้วย ตัวฟรีเองก็ถือว่าทำมาให้เราใช้งานได้ดีเลยไม่ต้องเสียเงินก็ใช้งานได้แล้ว