Cách sửa đổi và quản lý file Hosts trên Linux

Có một file duy nhất trên máy tính hoạt động như một cổng nhỏ giữa người dùng và web, gọi là file hosts. Nếu cần chặn các trang web hoặc tạo các shortcut web được cá nhân hóa trên Linux, hãy giải quyết các công việc này bằng cách thêm hoặc điều chỉnh một vài dòng trong file hosts.

File hosts trên Linux là gì?

File hosts là một file plain text đơn giản mà tất cả các hệ điều hành sử dụng để dịch hostname (còn được gọi là địa chỉ web hoặc URL) thành địa chỉ IP. Khi nhập hostname, chẳng hạn như quantrimang.com, hệ thống sẽ xem xét file hosts để lấy địa chỉ IP cần thiết và kết nối với máy chủ phù hợp.

Nếu mở file hosts, bạn sẽ nhanh chóng nhận thấy rằng không có thư mục của toàn bộ Internet trong đó, mà chỉ có vài dòng ngắn gọn.

Hóa ra, hệ thống sẽ kiểm tra file host trước khi tìm kiếm một trang web trên các máy chủ DNS được xác định trong cài đặt mạng (thường là máy chủ DNS của ISP).

Điều này có nghĩa là có thể sử dụng file hosts để thêm vào những gì máy chủ DNS không thể cung cấp (chẳng hạn như alias cho các vị trí trên mạng cục bộ. Điều này chỉ xảy ra nếu có máy chủ DNS được thiết lập trong mạng cục bộ) hoặc ghi đè những địa chỉ IP mà máy chủ DNS thường cung cấp.

Ví dụ, nếu yêu cầu quantrimang.com, các máy chủ DNS sẽ trả địa chỉ IP Quản Trị Mạng cho máy tính. Nhưng nếu muốn chặn Quản Trị Mạng trên máy tính đó, bạn có thể thêm một mục trong file hosts, để cho máy tính biết rằng quantrimang.com trỏ đến một số địa chỉ IP khác với địa chỉ IP thực tế của Quản Trị Mạng.

Có nhiều thứ khác để làm với file hosts, nhưng đây chỉ là một số ví dụ cơ bản và những cách sử dụng khác phụ thuộc nhiều vào nhu cầu của từng người.

Vị trí của file hosts trên Linux

Trên Linux, bạn có thể tìm thấy file hosts trong /etc/hosts. Vì đây là một file /etc/hosts, nên bạn có thể mở file hosts bằng trình soạn thảo văn bản ưa thích.

Tuy nhiên, vì file hosts là file hệ thống, nên sẽ cần quyền admin để lưu các thay đổi. Vì vậy, để chỉnh sửa file hosts bằng trình soạn thảo văn bản dựa trên terminal Linux, chẳng hạn như nano, trước tiên cần nhập sudo để có quyền truy cập superuser (siêu người dùng):

sudo nano /etc/hosts

Để sử dụng trình soạn thảo văn bản đồ họa như gedit, có thể thử gksu thay thế:

gksu gedit /etc/hosts

Bạn phải sử dụng terminal để có thể khởi chạy ứng dụng phù hợp với quyền admin. Chỉ cần thay thế nano hoặc gedit bằng trình soạn thảo văn bản dựa trên terminal hoặc đồ họa yêu thích. Với nano, khi đã chỉnh sửa xong file, hãy nhấn Ctrl + X và sau đó nhấn Y để xác nhận ghi đè các thay đổi.

Cách thêm trang web vào file hosts

Cách thêm trang web vào file hosts

Trong file hosts, mỗi mục có một dòng riêng. Cú pháp rất đơn giản. Nhập địa chỉ IP muốn hostname dịch sang, nhấn phím Tab trên bàn phím và sau đó nhập hostname.

Ví dụ, để chặn Wikipedia, hãy nhập (nhớ sử dụng phím Tab thay vì phím cách):

127.0.0.1 wikipedia.org

127.0.0.1 là địa chỉ IP loopback sẽ luôn trỏ về hệ thống của riêng bạn. Vì trang web không được lưu trữ trên máy, nên trình duyệt sẽ cho biết trang web không thể được tìm thấy. Bây giờ, trang web đã bị chặn một cách hiệu quả.

Nếu không thích sử dụng Terminal, hãy kiểm tra ứng dụng Domain Blocker của Linux Mint (còn được gọi là mintnanny). Domain Blocker sẽ thêm các mục vào file hosts trỏ đến hostname mà bạn chỉ định thành 127.0.0.1. Nhưng để làm bất cứ điều gì khác, bạn vẫn sẽ cần phải thay đổi bằng trình soạn thảo văn bản.

Sử dụng Domain Blocker

Tạo shortcut trong file hosts

Nếu có một máy tính trên mạng gia đình (giả sử địa chỉ IP của máy là 192.168.1.10) và một trang web đơn giản có ích cho bạn, bạn có thể nhập nội dung sau vào file hosts của mình:

192.168.1.10 homeserver

Sau đó, nếu mở trình duyệt và nhập http://homeserver, nó sẽ tự động chuyển hướng đến 192.168.1.10. Dễ dàng hơn nhiều so với việc gõ địa chỉ IP mỗi lần.

Ngoài ra, bạn có thể sử dụng file hosts để tạo shortcut đến những trang web nhất định trên web. Sử dụng một lệnh như nslookup để tìm địa chỉ IP của trang web, sau đó thêm nó vào file hosts của bạn cùng với shortcut mong muốn, giống như trong ví dụ trên. Nhưng điều này chỉ hoạt động trên các trang web với địa chỉ IP chuyên dụng và có thể không có tác dụng với hầu hết các trang web bạn truy cập.

Các vấn đề tiềm ẩn với file hosts

Bài viết đã đề cập đến các thay đổi file hosts, nhưng bạn vẫn có thể gặp sự cố khi sử dụng Google Chrome. Trình duyệt web này có xu hướng bỏ qua file hosts trừ khi bạn thực hiện một trong hai điều sau:

1. Nhập http:// ở đầu mỗi địa chỉ. Ví dụ, nếu chặn Wikipedia trong file hosts, thì Chrome bỏ qua việc chặn trang này, nếu bạn nhập wikipedia.com vào thanh địa chỉ. Nếu bạn nhập http://wikipedia.com vào thanh địa chỉ, trình duyệt sẽ tuân theo file hosts.

2. Vô hiệu hóa “Use a web service to help resolve navigation errors” trong cài đặt Chrome và sau đó bạn không phải nhập http:// vào đầu thanh địa chỉ mỗi lần truy cập trang web nữa. Đây là một trong một số mẹo bảo mật của Google Chrome đáng để thực hiện.

File hosts cung cấp một cách dễ dàng để chặn truy cập vào một số trang web trên máy tính. Do nhiều phiên bản Linux không kèm theo phần mềm có tính năng kiểm soát của phụ huynh, nên điều này có thể có ích nếu bạn quyết định bắt đầu cho con cái mình sử dụng máy tính Linux.

Thứ Sáu, 29/03/2019 12:28
52 👨 16.914
0 Bình luận
Sắp xếp theo
    ❖ Linux