Sử dụng thêm hồ sơ Firefox để cải thiện cuộc sống của tôi
(utcc.utoronto.ca)- Tách riêng Firefox mặc định được thiết lập nghiêm ngặt và Firefox phụ để cho phép JavaScript, đồng thời tạo hồ sơ Firefox bổ sung riêng cho các trang cần duy trì trạng thái đăng nhập lâu dài
- Firefox phụ không dùng hồ sơ mà thay đổi biến môi trường $HOME trước khi chạy trên Unix để tách biệt hoàn toàn, dùng cho việc bỏ cookie và phiên khi thoát
- Một số trang yêu cầu xác thực đa yếu tố, xác nhận email và quy trình đăng nhập nhiều bước dài mỗi lần, khiến luồng sử dụng chậm đi đáng kể nếu không giữ cookie
- Trong các hồ sơ theo từng trang, cài uBlock Origin và Cookie AutoDelete để chỉ giữ lại các cookie cần thiết, còn lại tự động dọn dẹp
- Firefox Multi-Account Containers cũng có thể là một lựa chọn thay thế, nhưng hồ sơ riêng tách biệt cả thiết lập tiện ích mở rộng nên dễ tin chắc hơn về cách hoạt động
Cách dùng tách biệt hai môi trường Firefox
- Việc duyệt web mặc định được xử lý trong Firefox đã tùy biến
- Sử dụng các thiết lập và tiện ích mở rộng nghiêm ngặt
- Hầu như không chạy JavaScript
- Sử dụng trong trạng thái không đăng nhập vào nhiều trang
- Với các trang cần JavaScript, sử dụng một môi trường Firefox “just make it work” riêng
- Chạy JavaScript
- Nhận cookie và gửi lại chúng
- Khi đóng trình duyệt, bỏ cả cookie lẫn phiên
- Môi trường phụ này không được triển khai bằng hồ sơ Firefox, mà bằng cách thay đổi biến môi trường $HOME trước khi chạy trên Unix
- Firefox trên Unix tuân theo
$HOME - Hai môi trường được tách biệt hoàn toàn, tránh các vấn đề tiềm ẩn
- Firefox trên Unix tuân theo
Hồ sơ theo từng trang cần duy trì đăng nhập
- Một số website cần cả JavaScript lẫn đăng nhập, nhưng quy trình đăng nhập lại quá phiền phức
- Mỗi lần đều yêu cầu xác thực đa yếu tố bằng token vật lý
- Gửi email mỗi khi đăng nhập
- Phải trải qua quy trình đăng nhập nhiều bước dài và chậm
- Với những trang như vậy, cần giữ cookie đăng nhập để đăng nhập ít nhất có thể
- Một số trang có các quyền quan trọng, nên không thoải mái khi đăng nhập rồi nhẹ nhàng duyệt sang nơi khác
- Giải pháp là tạo các hồ sơ bổ sung theo từng trang bên trong thiết lập Firefox có JavaScript
- Mỗi website phiền phức có một hồ sơ riêng
- Mỗi hồ sơ cài bộ add-on Firefox tiêu chuẩn
- Các add-on cốt lõi là uBlock Origin và Cookie AutoDelete
- Cookie AutoDelete được cấu hình để chỉ giữ các cookie cần thiết cho trang đó hoặc các trang liên quan, và dọn phần còn lại
- Cookie bổ sung phát sinh trong quá trình truy cập nơi khác theo liên kết từ trang đó, v.v.
- Ban đầu cần bỏ chút công sức để xác định cookie của trang nào cần được giữ lại
- Sau khi thiết lập, các hồ sơ này hoạt động ổn định
- Cũng có thể giới hạn các trang được phép dùng JavaScript trong từng hồ sơ, nhưng trên thực tế quá phiền phức
- Firefox Multi-Account Containers cũng có thể dùng được, nhưng tôi thích hồ sơ riêng hơn
- Thiết lập ban đầu có thể cần nhiều công hơn
- Các hồ sơ hoàn toàn tách biệt với nhau, bao gồm cả thiết lập tiện ích mở rộng
- Với container, sự tương tác giữa nhiều yếu tố có thể khác nhau tùy tình huống
- Các add-on thường được thêm gồm Foxy Gestures, Cookie Quick Manager, Certainly Something
- Foxy Gestures là một phần quan trọng trong trải nghiệm sử dụng Firefox
- Certainly Something được dùng để kiểm tra chứng chỉ TLS
- Một số hồ sơ cũng tích lũy thêm các add-on để giảm theo dõi
- Gần đây cũng đã cài các nút bookmarklet cho readable và fixed
1 bình luận
Ý kiến trên Hacker News
Viên ngọc thật sự của Firefox là Containers. Các trình duyệt khác không có thứ như vậy, và đây là thứ Chrome thiếu một cách chí mạng
Điều này không chỉ có nghĩa là “hãy mở cửa sổ riêng tư”, mà là bạn có thể tạo 1 + gần như vô hạn hồ sơ/container. Firefox có tiện ích mở rộng Temporary Containers, tạo container tạm thời cho mỗi tab mới và mặc định là được cô lập. Tôi đã thiết lập để khi giữ Ctrl và nhấp vào liên kết thì liên kết sẽ mở trong tab mới của cùng container hiện có, và chỉ gộp phiên khi tôi muốn. Với Proxy Containers, cũng có thể dùng tuyến proxy khác nhau cho từng tab
Chrome và công cụ dành cho nhà phát triển của nó có nhiều ưu điểm, và dù Mozilla đã gây ra nhiều vấn đề, tôi vẫn tôn trọng sứ mệnh của Firefox hơn. Nhưng bất kể ưu nhược điểm ra sao, tôi bị buộc chặt với Firefox vì đây là trình duyệt duy nhất có thể làm được những việc như vậy
Tôi đang dùng một add-on tự động tạo container mới cho mỗi tài khoản AWS được mở từ màn hình SSO. Khi gõ
gmailvào trình duyệt, 3 tài khoản hiện ra; tùy tài khoản được chọn, nó mở trong container đúng tương ứng, nên có thể mở đồng thời cả ba tài khoản mà không phiền phứcVí dụ, không thể chỉnh sửa danh sách site của container, mà chỉ có thể thêm FQDN hiện đang được tải. Không thể gán
*.google.comcho container Google; phải thực sự mở từng subdomain rồi thêm từng cái mộtTệ hơn nữa, nếu host muốn thêm nằm ở giữa chuỗi redirect thì có vẻ không có cách nào để thêm.
mail.google.comđi tớiaccounts.google.comrồi nhanh chóng quay lạimail.google.com, nên không có cách nào đưaaccounts.google.comvào danh sách. Vì vậy tính năng “chỉ giới hạn trong các site được chỉ định” về cơ bản là không dùng được. Có vẻ Mozilla cho rằng việc thêm nút thêm và ô nhập văn bản vào danh sách site là quá sức đối với người dùngNgoài ra, việc chỉ chọn một container để xóa cookie và dữ liệu site, hoặc chỉ xóa container mặc định mà không đụng đến các container có tên, cũng không làm được, nên thường xuyên bất tiện. Cuối cùng tôi mua thêm RAM và quay lại dùng hồ sơ riêng
Nó giống như cài VPN trên Android nhưng vẫn đăng nhập tài khoản Google và tiếp tục dùng những thứ như Maps. Chrome về mặt thiết kế là không có quyền riêng tư
Khi nói cùng lúc về Firefox và Chrome, sự phân biệt này rất quan trọng. So sánh hai trình duyệt từ góc độ quyền riêng tư chẳng khác nào so táo với cam
Hồ sơ Firefox bị đánh giá quá thấp và trên thực tế dường như cũng ít được dùng
Tạo shortcut cho từng hồ sơ và đặt lệnh chạy là
firefox --no-remote -P profilenamehere. Như vậy hầu như không cần nhìn thấy hộp thoại quản lý hồ sơ, và mỗi hồ sơ được dùng như một trình duyệt riêngRất tiện để tách duyệt web cho công việc và cá nhân, cũng như để thử các tiện ích mở rộng khác nhau. Ví dụ, có thể cài Treestyletabs vào một hồ sơ và Sidebery vào hồ sơ khác để tự đánh giá cả hai. Mức dùng bộ nhớ khi mở hai hồ sơ Firefox cũng thấp hơn nhiều so với mở đồng thời Firefox và một trình duyệt họ Chromium
Cuối cùng tôi tạo một phím tắt bàn phím để chuyển đổi giữa một file cấu hình hồ sơ và hai symbolic link, rồi gắn thêm một extension Gnome hiển thị hồ sơ đang chọn trên thanh trên cùng. Kiểu như dùng một hồ sơ trong giờ làm, hồ sơ khác vào buổi tối, nhưng chậm, khó chuyển sang máy khác, và nhìn chung rất lộn xộn
Giờ tôi dùng Firefox container và nhìn chung hài lòng. Chỉ mong thanh dấu trang cũng thay đổi theo tab hiện đang được chọn
Firefox nên tích hợp hẳn chức năng này cho đúng: https://addons.mozilla.org/en-GB/firefox/addon/profile-switc...
Vì vậy tôi đã tách bằng hồ sơ Chrome. Tôi từng thấy hồ sơ Firefox hơi thô, và kỳ lạ là chưa bao giờ nghĩ đến việc tạo shortcut theo từng hồ sơ
Tôi dùng Grasshopper[1] cùng với Tab Center Reborn hoặc Sidebery, rồi chuyển qua lại tùy chức năng cần lúc đó
[1]https://news.ycombinator.com/item?id=37306058
Tôi là người dùng Firefox từ bản 0.9. Nhìn phản ứng ở đây thì có vẻ mọi người dành nhiều tình cảm cho Firefox
Nhưng UI hồ sơ và trải nghiệm quản lý thật sự rất tệ nếu so với Chrome/Edge. Thẻ container không phải là thứ thay thế. Hồ sơ công việc và cá nhân thậm chí không chia sẻ cả bookmark. Tôi biết có tiện ích bên thứ ba yêu cầu cài thêm phần mềm, nhưng điều đó lại càng cho thấy vấn đề rõ hơn
Vấn đề này đã được báo cáo từ 13 năm trước: https://bugzilla.mozilla.org/show_bug.cgi?id=662025
Vì vậy hiện giờ tôi chỉ dùng Firefox cho cá nhân, còn phần còn lại dùng hồ sơ Chrome/Edge. Lý do duy nhất tôi còn ở lại với Firefox là vì bản Android. Nếu uBlock Origin chạy được trên Edge/Chrome ở Android thì có lẽ tôi sẽ bỏ Firefox
Giờ tôi gần như không dùng hồ sơ Firefox nữa, còn trong Chrome thì dùng 5–6 hồ sơ cho nhiều mục đích khác nhau. Vì nó dễ hơn nhiều
about:profilesvào thanh địa chỉ rồi chọn hồ sơ muốn dùng thì tệ đến vậy sao? Hoặc tạo shortcut có tùy chọn-pđể chọn khi khởi động Firefox cũng đượcThật lòng tôi tò mò Chrome/Edge cung cấp phần nào tạo ra khác biệt mang tính quyết định như vậy
Tôi nghĩ mình sẽ hài lòng nếu Mozilla cho phép chọn tiện ích mở rộng nào được bật theo từng container
[1] https://addons.mozilla.org/en-US/firefox/addon/multi-account...
about:profileskhông?Tôi dùng nhiều hồ sơ Firefox, nhưng chủ yếu muốn có hai tính năng
Thứ nhất, cần có khác biệt trực quan như màu sắc để phân biệt hồ sơ tốt hơn. Khi mở đồng thời trình duyệt của nhiều hồ sơ, rất dễ nhầm
Thứ hai, UX khi vô tình mở lại một hồ sơ đang chạy cần được cải thiện. Hiện giờ nó chờ timeout rồi hiện thông báo lỗi. Thay vào đó, chỉ cần đưa tiêu điểm về cửa sổ đang chạy là được
Có lẽ vì họ muốn quảng bá nhiều hơn những theme ngớ ngẩn tự biến mất, tức “Colorways drops”
.desktopriêng cho từng hồ sơ, rồi gắn theme và biểu tượng tùy chỉnh cho mỗi cáiNhư vậy trong trình quản lý cửa sổ có thể biết hồ sơ nào đang mở, và nhìn theme là biết mình đang xem hồ sơ nào. Có thể chạy một hồ sơ cụ thể bằng biểu tượng, hoặc nhấn
Superrồi gõffwork, hoặc nếu đã mở thì nhấp phải rồi mở cửa sổ mớiVấn đề chính là dù đã thiết lập lại việc này nhiều lần trên nhiều máy, lần nào tôi cũng quên cách làm. Tôi luôn không nhớ cần tổ hợp flag Firefox và giá trị
.desktopnào. Có lẽ liên kết này là đúng: https://askubuntu.com/questions/1209434/how-to-display-two-d...Tôi tách nhiều instance và một instance riêng trên Chrome/macOS cho từng khách hàng/chủ thể và từng hoạt động cụ thể
Mỗi trình duyệt có extension và quy tắc chặn quảng cáo khác nhau. Ví dụ nếu không phải trình duyệt mạng xã hội thì không vào được Hacker News. Trình duyệt phát triển chính có nhiều extension phục vụ phát triển hơn
Quản lý thẻ cũng dễ hơn. Chỉ cần đóng “trình duyệt công việc” là xong. Tất cả đều có instance, biểu tượng và màu riêng. Ngay cả khi theo thói quen định vào các site lãng phí thời gian, nếu không phải trình duyệt media thì sẽ báo lỗi, nên giúp tập trung hơn
Để làm nó hoạt động hoàn hảo không dễ. Phải tạo nhiều instance Chrome, mà điều đó nghĩa là cũng phải ký ứng dụng. Tất cả hồ sơ và dữ liệu ứng dụng được đặt trong thư mục riêng. Nếu không làm vậy thì không thể dùng
cmd-tabđể chuyển sang trình duyệt khácKhi duyệt web cho vui thì dùng Firefox Android thường có các extension như Ublock Origin; khi luôn duyệt ở chế độ riêng tư thì dùng Firefox Beta với cùng các extension; còn công việc thì xử lý bằng Chrome
Tôi cũng đã thử dùng hồ sơ nhưng quản lý quá mệt. Đặc biệt là do cách macOS xử lý nhiều cửa sổ của cùng một ứng dụng
Không phủ nhận rằng hồ sơ Firefox rất tuyệt. Và tắt JavaScript cũng rất quan trọng, nên tôi đã dùng NoScript từ rất lâu
Nhưng việc chuyển qua lại giữa hai hồ sơ chỉ để bật/tắt JavaScript trông có vẻ cực kỳ phiền phức. Trong NoScript, chỉ cần nhấn
shift+tlà có thể tạm thời gỡ hạn chế cho tab đóThứ NoScript chủ yếu chặn là các tab lạ, không mong đợi bị mã độc mở ra. Nhưng với các trang lớn như The Register hay Etsy thì có thể tắt nó trong lúc làm việc cần thiết
Tính năng tôi thật sự muốn NoScript có là tắt ở phạm vi toàn cục theo từng tên miền. Vì AWS dùng các tên miền con CloudFront ngẫu nhiên khi nhúng tài nguyên. Tôi không muốn đưa
*.cloudfrontvào danh sách cho phép. Vì bất kỳ ai cũng có thể dùng nó để lưu trữ mã độcMột sự thật thú vị là nếu dùng cờ
--class, bạn có thể gán lớp cửa sổ X khác nhau cho từng phiên bản Firefox. Như vậy có thể cấu hình trình quản lý cửa sổ để đưa cửa sổ thuộc lớp đó lên phía trướcVí dụ, tôi đặt trong cấu hình StumpWM như thế này:
(defcommand javascript-firefox ()(run-or-raise "firefox -P Javascript --class Firefox-javascript" '(:class "Firefox-javascript")))(define-key *top-map* (kbd "H-F") "javascript-firefox")Khi đó chỉ cần nhập
hyper-shift-f, nếu Firefox dành cho JavaScript đã tồn tại thì nó sẽ được đưa lên, còn nếu chưa thì sẽ được chạy. Trong khi đóhyper-fđưa Firefox thông thường lênRất khuyến nghị. Hy vọng sau này vẫn có thể tiếp tục dùng cách này. Wayland có hỗ trợ lớp cửa sổ và phím hyper không?
Gần đây tôi bắt đầu dùng cách này, và cũng đổi theme của hồ sơ Firefox để tự nhắc rằng mình phải đóng tất cả cửa sổ
Cảm giác tách biệt khá dễ chịu, và trong môi trường desktop nó cũng khá hữu ích để chạy một số thứ như các ứng dụng bị giới hạn
Vẫn còn nhiều điểm có thể làm tốt hơn. Chẳng hạn có thể crowdsourcing quyền theo kiểu Android/iOS cho từng website
Có thể đây là ý kiến không phổ biến, nhưng tôi nghĩ thời JavaScript còn là một yếu tố tùy chọn của web đã qua rồi. Giờ nó là thành phần nội tại của web
Chúng ta phải chấp nhận rằng không thể quay lại thời chưa có JavaScript. Thay vì thuyết phục các website tạo phiên bản không dùng script, nên tìm giải pháp để làm JavaScript an toàn. Tôi không biết đáp án là gì, nhưng sandboxing, miền bảo mật và mô hình quyền phong phú là những thứ đáng cân nhắc
Việc cho phép thực thi mã tùy ý theo mặc định thì không thể an toàn
90% trường hợp dùng JavaScript là hoàn toàn không cần thiết, và chỉ có ý nghĩa với web dựa trên quảng cáo
Không phải tôi muốn xem nhẹ, nhưng với thói quen duyệt web của mình, tôi thật sự không thể tưởng tượng sẽ thế nào nếu không có JavaScript. Có thể nghe tệ hơn thực tế
Đáng tiếc là web đã thoái hóa đến trạng thái còn tệ hơn JavaScript. Nó đang đi theo hướng chỉ hỗ trợ một trình duyệt cụ thể, tức Chrome. Ví dụ gần đây là trên website Air India, không thể đặt vé máy bay bằng Firefox nhưng lại được bằng Chrome
Vì mỗi Firefox chạy trong VM riêng không có dữ liệu, tôi chạy JavaScript mà không sợ hãi