KDE proxy: cài trong System Settings và biết app nào tuân theo
KDE proxy là phần cài đặt proxy chung của môi trường desktop KDE Plasma, nằm trong System Settings. ProxyVN đọc mã nguồn trang cài đặt proxy của KDE, của thư viện libproxy và Chromium để biết ứng dụng nào đọc cài đặt này, ứng dụng nào bỏ qua. Bài kèm một script kiểm tra đã chạy thử với proxy có mật khẩu.
KDE proxy dùng trong tình huống nào
KDE Plasma là môi trường desktop phổ biến trên Linux, mặc định trên Kubuntu, Fedora KDE, openSUSE và một số máy cầm tay chạy Linux. Trang cài đặt proxy của KDE cho phép đặt một proxy chung để các ứng dụng của KDE và một phần ứng dụng bên thứ ba dùng chung, khỏi phải cài từng nơi.
Người dùng hay cần cài đặt này khi mạng công ty bắt buộc đi qua proxy, hoặc khi muốn trình duyệt và trình quản lý file cùng ra một IP. Một nhu cầu khác là kiểm tra website từ góc nhìn của người dùng ở vùng khác.
Proxy hệ thống, biến môi trường và cài đặt riêng của ứng dụng
Trên Linux có ba nơi chứa cài đặt proxy, và đây là chỗ gây nhầm nhiều nhất. Nơi thứ nhất là cài đặt của desktop, với KDE là file kioslaverc. Nơi thứ hai là biến môi trường như http_proxy, https_proxy, no_proxy, mà curl, wget, pip, git và phần lớn công cụ dòng lệnh đọc. Nơi thứ ba là cài đặt riêng trong từng ứng dụng.
Ba nơi này không tự đồng bộ với nhau. Anh em đặt proxy trong System Settings thì terminal không tự biết. Ngược lại, export http_proxy trong file .bashrc thì ứng dụng mở từ menu Plasma cũng không thấy. Bài này nói rõ từng đường đi để anh em biết cần đặt ở đâu.
Bài này khác bài proxy Ubuntu ở đâu
ProxyVN đã có bài cấu hình proxy Ubuntu, tập trung vào máy chủ: biến môi trường toàn hệ thống, APT, snap và proxy cho dòng lệnh. Bài này đi vào phần desktop KDE: trang cài đặt, file kioslaverc, cách các thư viện đọc nó và cách kiểm tra ứng dụng nào đang thực sự đi proxy.
Chọn chế độ nào cho đúng việc
Nếu anh em dùng một proxy cho mọi website, chọn chế độ thủ công. Nếu chỉ vài website cần đi proxy, có hai cách: chế độ thủ công kèm tùy chọn đảo ngược danh sách ngoại lệ, hoặc file PAC. File PAC linh hoạt hơn vì chọn được proxy khác nhau cho từng nhóm tên miền.
Chế độ tự phát hiện chỉ có ý nghĩa trong mạng công ty có máy chủ WPAD. Ở nhà hoặc dùng proxy dịch vụ, chế độ này thường không tìm thấy gì và làm trình duyệt chậm lúc mở trang đầu. Bài Web Proxy Auto-Discovery giải thích cơ chế này.
Giới hạn của cài đặt proxy KDE
Trang cài đặt proxy của KDE không có ô tên đăng nhập và mật khẩu. Proxy có tài khoản phải xử lý theo cách khác, phần dưới sẽ nói. Cài đặt cũng không áp dụng cho lưu lượng không đi qua thư viện mạng của ứng dụng, ví dụ trò chơi, ứng dụng gọi thoại dùng UDP hay dịch vụ hệ thống chạy dưới quyền root.
Phiên bản và thông tin cần chuẩn bị cho KDE proxy
Cách KDE xử lý proxy đã đổi lớn từ khi chuyển sang KDE Frameworks 6, nền của Plasma 6. Anh em nên biết mình đang chạy bản nào trước khi đọc hướng dẫn trên mạng.
Plasma 6 khác Plasma 5 ở điểm nào
Theo ghi chú kiến trúc trong mã nguồn trang cài đặt proxy của KDE, trước KF6 thư viện KIO của KDE có hệ thống proxy riêng. Từ KF6, phần này bị bỏ, KDE chuyển sang dùng API proxy của Qt, và trên Linux Qt đọc cài đặt qua thư viện libproxy.
Ghi chú này cũng nêu điều kiện: Qt phải được biên dịch có hỗ trợ libproxy. Bản phân phối nào biên dịch Qt không có libproxy thì ứng dụng Qt sẽ không đọc được kioslaverc. Đây là lý do cùng một cài đặt có thể chạy trên bản phân phối này mà không chạy trên bản khác.
Cách xem phiên bản nhanh: mở System Settings, vào mục About this System. Dòng KDE Plasma Version và KDE Frameworks Version cho biết anh em đang ở nhánh 5 hay 6.
Thông tin proxy cần có
Chuẩn bị loại proxy (HTTP hay SOCKS5), địa chỉ, cổng và cách xác thực. Vì KDE không có ô mật khẩu, proxy xác thực bằng IP là lựa chọn gọn nhất: thêm IP mạng của máy vào danh sách cho phép ở trang quản lý proxy, rồi chỉ cần nhập địa chỉ và cổng. Bài xác thực proxy bằng IP whitelist hay user password so sánh hai cách.
Nếu proxy được cấp dạng chuỗi ip:port:user:pass, đọc bài định dạng proxy để tách đúng các phần trước khi nhập.
Mở trang cài đặt
Trong Plasma 6, mở System Settings, vào nhóm Network, chọn Proxy. Trang có năm lựa chọn: không dùng proxy, tự phát hiện cấu hình, dùng file PAC theo đường dẫn, dùng cấu hình proxy của hệ thống qua biến môi trường, và nhập thủ công. Tên mục có thể khác đôi chút tùy bản dịch tiếng Việt của bản phân phối.

Năm chế độ proxy trong System Settings
Cấu hình KDE proxy thủ công và đọc file kioslaverc
Với proxy dịch vụ, chế độ nhập thủ công là chế độ anh em sẽ dùng nhiều nhất. Phần này đi qua các ô trên giao diện và nội dung file mà giao diện ghi ra.
Các ô trong chế độ thủ công
Chế độ thủ công có các ô HTTP Proxy, SSL Proxy, FTP Proxy và SOCKS Proxy, mỗi ô gồm địa chỉ và cổng. Có tùy chọn dùng proxy HTTP cho mọi giao thức để khỏi gõ lại. Ô Exceptions nhận danh sách tên máy hoặc IP đi thẳng, cách nhau bởi dấu phẩy.
Theo tài liệu trang cài đặt proxy trong mã nguồn KDE, muốn loại cả một tên miền thì gõ tên miền có dấu chấm phía trước, ví dụ .noi-bo.vn. Ký tự đại diện như * hay ? không có tác dụng. Có thể nhập IP kèm dải, ví dụ 192.168.0.1/24.
Tùy chọn chỉ dùng proxy cho các địa chỉ trong danh sách ngoại lệ đảo ngược ý nghĩa của danh sách. Khi bật, chỉ những tên miền trong danh sách mới đi proxy, phần còn lại đi thẳng. Cách này hợp khi anh em chỉ cần proxy cho vài website nhất định.
File kioslaverc lưu gì
Giao diện ghi cài đặt vào file ~/.config/kioslaverc, nhóm Proxy Settings. Đây là nội dung mình dùng để thử, theo đúng cấu trúc trong các file mẫu kiểm thử của libproxy:
ProxyUrlDisplayFlags=15
[Proxy Settings]
NoProxyFor=localhost,127.0.0.1,.noi-bo.test
Proxy Config Script=
ProxyType=1
ReversedException=false
httpProxy=http://127.0.0.1 8902
httpsProxy=http://127.0.0.1 8902
socksProxy=socks://127.0.0.1 8903
Điểm lạ đầu tiên là địa chỉ và cổng cách nhau bằng dấu cách chứ không phải dấu hai chấm. Mã nguồn giao diện ghép ô địa chỉ, một dấu cách, rồi ô cổng. Libproxy và Chromium khi đọc đều đổi dấu cách đó thành dấu hai chấm. Nếu anh em sửa file bằng tay, giữ đúng kiểu này.
Khóa ProxyType mang số ứng với chế độ. Mã nguồn libproxy khai báo 0 là không dùng proxy, 1 là thủ công, 2 là file PAC, 3 là tự phát hiện WPAD, 4 là cấu hình hệ thống qua biến môi trường. ReversedException tương ứng tùy chọn đảo ngược danh sách ngoại lệ.
ProxyType |
Chế độ trên giao diện |
Libproxy làm gì |
|---|---|---|
0 |
Không dùng proxy |
Không trả proxy nào |
1 |
Nhập thủ công |
Lấy httpProxy, httpsProxy, socksProxy theo giao thức |
2 |
File PAC theo đường dẫn |
Chạy file PAC trong Proxy Config Script |
3 |
Tự phát hiện |
Dò file PAC qua WPAD |
4 |
Biến môi trường |
Mã nguồn hiện tại xử lý như thủ công |
Proxy có mật khẩu: không có ô nhập
Như đã nói, giao diện không có ô tên đăng nhập. Mình thử ghi thẳng tài khoản vào địa chỉ, dạng http://user1:p%40ss%[email protected] 8902, với mật khẩu đã mã hóa phần trăm. Script kiểm tra bằng thư viện chuẩn của Python đọc dòng này và đi qua proxy thành công, proxy ghi nhận xác thực đúng.
Tuy vậy, không phải ứng dụng nào cũng nhận cách này. Mã nguồn đọc cài đặt proxy trên Linux của Chromium bỏ phần tên và mật khẩu trong địa chỉ, ghi cảnh báo rằng tham số xác thực bị bỏ qua, rồi để trình duyệt hỏi mật khẩu sau. Nghĩa là Chrome sẽ hiện hộp thoại hỏi mật khẩu khi gặp mã 407.
Mật khẩu cũng không được chứa dấu cách hay dấu ngoặc kép. Libproxy xóa dấu ngoặc kép và đổi mọi dấu cách trong giá trị thành dấu hai chấm, nên mật khẩu có dấu cách sẽ bị đọc sai. Với proxy dịch vụ, đổi sang xác thực bằng IP là cách ít rủi ro nhất.
Dùng file PAC để chia proxy theo tên miền
File PAC là một đoạn JavaScript có hàm FindProxyForURL, trả về proxy cần dùng cho từng địa chỉ. Chọn chế độ dùng file PAC theo đường dẫn, trỏ tới file nằm trên máy. Libproxy tự thêm tiền tố file:// khi đường dẫn bắt đầu bằng dấu gạch chéo.
function FindProxyForURL(url, host) {
if (dnsDomainIs(host, ".vi-du-a.vn") || dnsDomainIs(host, ".vi-du-b.vn"))
return "PROXY proxy-vn.vi-du.vn:8080";
if (isInNet(dnsResolve(host), "192.168.0.0", "255.255.0.0"))
return "DIRECT";
return "DIRECT";
}
File trên đưa hai website qua proxy Việt Nam, mạng nội bộ và phần còn lại đi thẳng. Lưu ý hàm dnsResolve làm máy tự phân giải tên miền, nên chỉ dùng cho nhánh kiểm mạng nội bộ. Với file PAC sai cú pháp, trình duyệt thường âm thầm đi thẳng. Bài lỗi bắt buộc cấu hình proxy nói về trường hợp Chrome báo lỗi khi không đọc được file PAC.
Áp dụng thay đổi
Sau khi bấm Apply, giao diện gửi tín hiệu để các tiến trình KIO đang chạy đọc lại cấu hình. Nhưng trang cài đặt cũng hiện dòng nhắc khởi động lại ứng dụng đang mở để thay đổi có hiệu lực. Mình khuyên đóng hẳn trình duyệt và ứng dụng cần đi proxy rồi mở lại, đỡ mất công đoán.
KDE proxy và biến môi trường: vì sao terminal không theo
Đây là phần chính của bài và cũng là câu hỏi hay gặp nhất: đã đặt proxy trong System Settings, vì sao curl, pip hay git vẫn đi thẳng.
Công cụ dòng lệnh chỉ đọc biến môi trường
Curl, wget, pip, git, npm và phần lớn công cụ dòng lệnh không đọc kioslaverc. Chúng đọc biến http_proxy, https_proxy, all_proxy và no_proxy. Vì vậy anh em cần đặt proxy ở cả hai nơi nếu muốn cả ứng dụng desktop lẫn terminal cùng đi proxy.
export http_proxy="http://user1:p%40ss%232026@proxy.vi-du.vn:8080"
export https_proxy="$http_proxy"
export no_proxy="localhost,127.0.0.1,.noi-bo.vn"
curl https://api.ipify.org
Mình chạy lệnh tương tự với proxy thử. Bản mã hóa %40 và %23 qua proxy bình thường. Bản ghi nguyên văn mật khẩu p@ss#2026 khiến curl báo lỗi số 5, không phân giải được proxy, vì nó cắt địa chỉ sai ở dấu @ và dấu #. Thư viện urllib của Python thì vẫn đi qua với bản chưa mã hóa. Mỗi công cụ tách địa chỉ một kiểu, nên cứ mã hóa cho chắc.
Biến no_proxy cũng chạy như mong đợi: với no_proxy chứa .noi-bo.test, curl đi thẳng tới a.noi-bo.test thay vì qua proxy. Trên máy thử, tên miền đó không có thật nên curl báo không phân giải được, đúng là dấu hiệu nó đã bỏ qua proxy.
Ứng dụng mở từ menu không đọc .bashrc
Biến export trong .bashrc chỉ có trong cửa sổ terminal mở shell đó. Ứng dụng mở từ menu Plasma được khởi chạy từ phiên đăng nhập, không đi qua .bashrc. Theo trang biến môi trường của phiên KDE, Plasma chạy mọi file có đuôi .sh trong thư mục $HOME/.config/plasma-workspace/env khi đăng nhập, và biến phải được export mới có tác dụng.
mkdir -p ~/.config/plasma-workspace/env
cat > ~/.config/plasma-workspace/env/proxy.sh <<'EOF'
export http_proxy="http://proxy.vi-du.vn:8080"
export https_proxy="$http_proxy"
export no_proxy="localhost,127.0.0.1"
EOF
Đăng xuất rồi đăng nhập lại để biến có hiệu lực cho cả phiên. Cách này ghi mật khẩu dưới dạng chữ thường trong file, nên với proxy có tài khoản, đặt quyền đọc chỉ cho chủ tài khoản, hoặc dùng xác thực bằng IP.
Chế độ dùng cấu hình hệ thống
Lựa chọn thứ tư trên trang cài đặt cho KDE đọc proxy từ biến môi trường. Nút Auto-Detect dò các tên biến phổ biến. Mã nguồn liệt kê HTTP_PROXY, http_proxy, HTTPPROXY, httpproxy, PROXY, proxy cho ô HTTP, và tương tự cho các ô còn lại.
Điều cần biết là ở chế độ này, kioslaverc lưu tên biến chứ không lưu giá trị. File sẽ có dòng httpProxy=HTTP_PROXY. Chromium hiểu điều này: mã nguồn của nó coi ProxyType 4 là cấu hình gián tiếp qua biến môi trường và đổi tên biến thành giá trị trước khi dùng.
Còn mã nguồn libproxy hiện tại xử lý ProxyType 4 giống hệt chế độ thủ công, đọc thẳng chuỗi trong file. Mình chưa kiểm được trên máy KDE thật nên không khẳng định ứng dụng Qt sẽ hỏng ở chế độ này. Nhưng để tránh rủi ro, mình khuyên dùng chế độ thủ công và đặt biến môi trường riêng cho terminal.
Ứng dụng nào theo cài đặt nào
Bảng dưới tóm tắt từ mã nguồn mình đã đọc và tài liệu đi kèm. Với ứng dụng không có trong bảng, kiểm trực tiếp bằng cách xem IP thoát như phần sau.
Nhóm ứng dụng |
Đọc proxy từ đâu |
Ghi chú |
|---|---|---|
Ứng dụng KDE, Qt (Dolphin, Konqueror, Discover) |
kioslaverc qua libproxy |
Cần Qt có hỗ trợ libproxy |
Chromium, Chrome, Brave |
kioslaverc khi chạy dưới KDE |
Bỏ mật khẩu trong địa chỉ, hỏi sau |
Firefox |
Cài đặt riêng hoặc tùy chọn dùng proxy hệ thống |
Nên kiểm lại IP sau khi chọn |
curl, wget, pip, git |
Biến môi trường |
Mã hóa ký tự đặc biệt trong mật khẩu |
Ứng dụng Flatpak, Snap |
Tùy gói và quyền truy cập |
Kiểm từng ứng dụng |

Ba nơi chứa cài đặt proxy trên Linux
APT, Flatpak và dịch vụ hệ thống
Trình quản lý gói chạy dưới quyền root không đọc kioslaverc và cũng không đọc biến môi trường trong phiên của anh em. APT cần file cấu hình riêng trong /etc/apt/apt.conf.d, bài cấu hình proxy Ubuntu đã hướng dẫn phần này. Trình cài phần mềm Discover gọi xuống APT hoặc Flatpak, nên cài proxy cho Discover thực chất là cài cho tầng bên dưới.
Dịch vụ chạy bằng systemd lấy biến môi trường từ file đơn vị dịch vụ hoặc từ cấu hình chung của systemd, không lấy từ phiên desktop. Nếu một dịch vụ cần ra Internet qua proxy, đặt biến trong file đơn vị của chính dịch vụ đó và khởi động lại nó.
Ứng dụng không hỗ trợ proxy
Một số ứng dụng không có ô cài proxy và không đọc cả hai nguồn trên. Với nhóm này có hai cách. Cách đầu là proxychains, chạy ứng dụng qua một lớp chặn kết nối để ép đi proxy. Bài proxychains hướng dẫn cách dùng.
Cách thứ hai là chạy ứng dụng trong trình duyệt hoặc máy ảo đã cài proxy. Cách này nặng hơn nhưng không phụ thuộc vào việc ứng dụng có tôn trọng proxy hay không.
Kiểm tra IP thoát khi dùng KDE proxy
Đặt xong proxy chưa đủ, cần kiểm từng nhóm ứng dụng xem đi đúng đường không. Phần này gồm một script đọc kioslaverc và các lệnh kiểm nhanh.
Script đọc kioslaverc và thử từng proxy
Mình viết script Python dưới đây, chạy được trên mọi bản phân phối có Python 3. Script in chế độ proxy, giá trị từng ô, biến môi trường đang có, rồi gửi yêu cầu qua từng proxy để xem IP trả về.
import configparser, os, sys, urllib.request, urllib.error
path = os.path.expanduser("~/.config/kioslaverc")
url = sys.argv[1] if len(sys.argv) > 1 else "https://api.ipify.org"
cp = configparser.RawConfigParser(strict=False)
cp.optionxform = str
with open(path, encoding="utf-8") as f:
# kioslaverc co khoa nam truoc moi nhom, them nhom gia de doc duoc
cp.read_string("[dau_file]\n" + f.read())
ps = cp["Proxy Settings"]
kieu = int(ps.get("ProxyType", "0") or 0)
print("ProxyType:", kieu, "| XDG_CURRENT_DESKTOP:", os.environ.get("XDG_CURRENT_DESKTOP"))
for khoa in ("httpProxy", "httpsProxy"):
v = ps.get(khoa, "").strip().strip('"')
v = os.environ.get(v, "") if kieu == 4 else v.replace(" ", ":", 1)
if not v:
continue
op = urllib.request.build_opener(urllib.request.ProxyHandler({"http": v, "https": v}))
try:
print(khoa, v, "->", op.open(url, timeout=15).read(200).decode())
except urllib.error.HTTPError as e:
print(khoa, v, "-> HTTP", e.code)
Lần chạy đầu, script báo lỗi MissingSectionHeaderError. Nguyên nhân là file kioslaverc có dòng ProxyUrlDisplayFlags nằm trước mọi nhóm, trong khi configparser của Python đòi mọi khóa phải nằm trong một nhóm. Thêm một nhóm giả ở đầu như trong đoạn trên là đọc được.
Kết quả chạy thử script
Mình chạy bản đầy đủ của script với ba file kioslaverc khác nhau, trỏ tới proxy HTTP thử yêu cầu tài khoản user1. Kết quả như bảng dưới.
File kioslaverc |
Kết quả |
|---|---|
Thủ công, chỉ địa chỉ và cổng |
Proxy trả 407, thiếu tài khoản |
Thủ công, tài khoản mã hóa trong địa chỉ |
Qua proxy, xác thực đúng |
Chế độ biến môi trường, biến có tài khoản mã hóa |
Qua proxy, xác thực đúng |
Script chạy trên máy Windows với file kioslaverc mẫu, vì máy thử không có KDE. Phần đọc file và gọi proxy giống nhau trên Linux. Phần anh em cần tự xem trên máy KDE là dòng XDG_CURRENT_DESKTOP: libproxy chỉ đọc kioslaverc khi biến này có chữ KDE.
Kiểm trình duyệt và ứng dụng desktop
Với trình duyệt, mở một trang hiển thị IP và so với IP proxy. Với Dolphin, có thể mở một địa chỉ web trong thanh địa chỉ để tải file qua giao thức HTTP và xem log phía proxy nếu nhà cung cấp có. Với ứng dụng Flatpak, kiểm riêng vì chúng chạy trong môi trường cô lập.
Đừng quên WebRTC trong trình duyệt, có thể làm lộ IP thật qua UDP dù trang web đã đi proxy. Bài cách tắt WebRTC hướng dẫn chặn phần này.
Kiểm nhanh bằng curl
Khi chưa muốn chạy script, có thể dùng curl gọi thẳng từng proxy với cùng địa chỉ trong kioslaverc. Đổi dấu cách trước cổng thành dấu hai chấm, thêm tài khoản đã mã hóa nếu có.
curl -x http://proxy.vi-du.vn:8080 https://api.ipify.org
curl -x socks5h://proxy.vi-du.vn:1080 https://api.ipify.org
Nếu curl ra IP proxy mà trình duyệt vẫn ra IP nhà, proxy không có lỗi, vấn đề nằm ở chỗ trình duyệt chưa đọc cài đặt KDE. Nếu curl cũng không ra IP proxy, kiểm lại proxy trước khi đụng tới cài đặt desktop.
Kiểm DNS
Ở chế độ proxy HTTP, trình duyệt gửi tên miền cho proxy phân giải. Với proxy SOCKS, tùy ứng dụng có thể tự phân giải trước rồi gửi IP. Dùng trang kiểm tra DNS để xem máy chủ DNS hiển thị thuộc mạng nào. Nếu là DNS nhà mạng của anh em, truy vấn tên miền đang đi ngoài proxy.

Script đọc kioslaverc và kiểm IP
Chẩn đoán lỗi KDE proxy thường gặp
Phần này gom các lỗi theo triệu chứng. Đa số lỗi KDE proxy không nằm ở proxy mà ở chỗ ứng dụng đọc cài đặt từ nguồn nào.
Đã đặt proxy nhưng IP không đổi
Kiểm ba thứ theo thứ tự. Một, ứng dụng đã được mở lại sau khi Apply chưa. Hai, ứng dụng có thuộc nhóm đọc kioslaverc không, xem bảng ở trên. Ba, tên miền đang mở có nằm trong danh sách ngoại lệ không, nhất là khi tùy chọn đảo ngược đang bật.
Trình duyệt hỏi mật khẩu liên tục
Đây là hành vi đúng của Chromium khi proxy yêu cầu tài khoản mà cài đặt KDE không chứa được mật khẩu. Nhập tài khoản khi được hỏi, hoặc chuyển proxy sang xác thực bằng IP. Nếu nhập đúng mà vẫn bị hỏi lại, đọc bài sửa lỗi 407 Proxy Authentication Required.
Terminal đi proxy, ứng dụng desktop thì không
Biến môi trường đang nằm trong .bashrc. Chuyển sang file .sh trong thư mục plasma-workspace/env như phần trên, đăng xuất và đăng nhập lại.
Sai giao thức
Ô SOCKS Proxy nhận proxy SOCKS, ô HTTP Proxy nhận proxy HTTP. Nhập cổng SOCKS5 vào ô HTTP sẽ làm trình duyệt báo lỗi kết nối proxy. Đối chiếu loại proxy trong trang quản lý với ô đang nhập.
Timeout và DNS
Khi trang tải rất lâu rồi báo hết giờ, thử proxy bằng curl gọi thẳng để tách lỗi. Nếu curl cũng chậm, vấn đề ở proxy hoặc đường mạng tới proxy. Nếu curl nhanh, xem lại danh sách ngoại lệ và chế độ PAC. Bài công cụ kiểm tra proxy có thêm cách đo độ trễ.
Checklist KDE proxy và câu hỏi thường gặp
Gỡ proxy khi không cần nữa
Khi hết hạn proxy hoặc mang máy về mạng khác, nhớ gỡ ở cả ba nơi. Trên giao diện, chọn không dùng proxy rồi Apply. Xóa file .sh trong thư mục plasma-workspace/env nếu đã tạo, rồi đăng xuất. Mở terminal mới, gõ env và lọc chữ proxy để chắc không còn biến cũ.
Quên gỡ một trong ba nơi là nguyên nhân của tình trạng trình duyệt vào mạng được mà terminal báo không kết nối được, hoặc ngược lại. Proxy hết hạn thường trả lỗi xác thực hoặc từ chối kết nối, dễ bị nhầm là lỗi mạng.
Máy nhiều tài khoản người dùng
Cài đặt KDE proxy nằm trong thư mục cấu hình của từng tài khoản, nên mỗi người đăng nhập có proxy riêng. Đây là điểm tiện khi nhiều người dùng chung máy nhưng cần IP khác nhau. Ngược lại, muốn đặt chung cho mọi tài khoản thì phải làm ở tầng hệ thống, ví dụ file /etc/environment, và tầng này không có giao diện.
Checklist sau khi cài
- Xem phiên bản Plasma và KDE Frameworks trong About this System.
- Chọn chế độ thủ công, nhập địa chỉ và cổng cho từng giao thức cần dùng.
- Ưu tiên proxy xác thực bằng IP vì giao diện không có ô mật khẩu.
- Điền danh sách ngoại lệ cho mạng nội bộ, dùng dấu chấm trước tên miền.
- Đặt biến môi trường trong plasma-workspace/env nếu cần terminal và ứng dụng ngoài KDE đi proxy.
- Mã hóa ký tự đặc biệt trong mật khẩu khi ghi vào địa chỉ.
- Mở lại ứng dụng và kiểm IP, DNS, WebRTC.
- Đặt quyền đọc chỉ cho chủ tài khoản với file chứa mật khẩu.
Cần proxy để đặt cho máy KDE, anh em có thể mua proxy tại ProxyVN: proxy dân cư tĩnh Viettel, VNPT, FPT, datacenter Việt Nam và Mỹ, 4G và proxy xoay, hỗ trợ HTTP và SOCKS5.
Cài đặt proxy của KDE là lời đề nghị, không phải mệnh lệnh. Ứng dụng nào đọc thì theo, ứng dụng nào không đọc thì đi thẳng, nên kiểm từng ứng dụng quan trọng.

Checklist sau khi cài proxy KDE
Câu hỏi thường gặp
KDE proxy có áp dụng cho toàn bộ máy không. Không. Nó áp dụng cho ứng dụng đọc kioslaverc, chủ yếu là ứng dụng KDE, Qt có libproxy và trình duyệt nhân Chromium. Công cụ dòng lệnh và dịch vụ hệ thống cần biến môi trường hoặc cài đặt riêng.
Có nhập được tài khoản proxy trong KDE không. Giao diện không có ô. Có thể ghi tài khoản vào địa chỉ với mật khẩu đã mã hóa, nhưng Chromium bỏ phần này và hỏi lại mật khẩu. Proxy xác thực bằng IP tránh được mọi rắc rối đó.
Sửa tay file kioslaverc có được không. Được, nhưng giữ đúng định dạng địa chỉ, dấu cách, rồi cổng. Một báo cáo lỗi trên hệ thống của KDE ghi nhận giao diện cài đặt không phản ánh ngay các thay đổi sửa tay trong file. Sau khi sửa tay, đóng và mở lại System Settings để kiểm.
Dùng KDE proxy có thay được VPN không. Hai thứ khác nhau. Proxy chỉ áp dụng cho ứng dụng tuân theo cài đặt, VPN chuyển toàn bộ lưu lượng của máy. Bài proxy và VPN khác gì nhau so sánh chi tiết.
Plasma chạy Wayland và X11 có khác nhau về proxy không. Cài đặt proxy nằm ở kioslaverc và biến môi trường, không phụ thuộc vào giao thức hiển thị. Mình không thấy khác biệt nào trong mã nguồn đã đọc, nhưng chưa kiểm trên máy thật cho cả hai phiên.
Vì sao ứng dụng Flatpak không theo proxy. Flatpak chạy ứng dụng trong môi trường cô lập, việc đọc cài đặt proxy phụ thuộc vào gói và cổng giao tiếp mà gói đó dùng. Kiểm từng ứng dụng bằng trang hiển thị IP, nếu không theo thì đặt proxy trong cài đặt riêng của ứng dụng.
KDE proxy và những điều cần nhớ
KDE proxy lưu trong kioslaverc, được ứng dụng KDE, Qt có libproxy và Chromium đọc, còn terminal cần biến môi trường riêng. Giao diện không có ô mật khẩu nên ưu tiên proxy xác thực bằng IP, mở lại ứng dụng và kiểm IP sau khi đổi. Cần proxy ổn định, liên hệ Proxy.vn - Nhà cung cấp dịch vụ proxy chất lượng hàng đầu Việt Nam cho KDE proxy.