Friday, March 2, 2012

kinh nghiệm làm việc với file hosts trong hệ thống

Standard
Việc sử dụng một số chương trình tiện ích hỗ trợ như Adblock Plus đã trở nên khá quen thuộc với phần lớn người dùng chúng ta, vì không ai có thể chịu được tình trạng quá nhiều thông tin quảng cáo liên tục hiện thị trên website truy cập, chúng sẽ khiến cho người dùng mất tập trung, đồng thời ảnh hưởng rất nhiều đến tốc độ kết nối. Tuy nhiên, cách dùng như vậy lại có 1 nhược điểm rất dễ nhận ra, đó là chúng chỉ hoạt động trên những trình duyệt đã được cài đặt. Còn nếu các bạn muốn chặn quảng cáo từ những domain nhất định nào đó, thì nên chỉnh sửa file hosts của hệ điều hành (hoặc tốt hơn là của router) để chặn luồng thông tin đầu vào qua trình duyệt, do vậy cách này thường mang lại hiệu quả cao hơn so với việc dùng phần mềm hỗ trợ.

Cơ chế hoạt động của quá trình này như thế nào?

Để bắt đầu, các bạn cần tham khảo và tìm hiểu một số khái niệm về DNS, hoặc có thể hiểu nôm na đây là 1 cuốn sổ địa chỉ của Internet. Về bản chất kỹ thuật, máy tính của chúng ta sử dụng 2 cách để xác định server qua hệ thống mạng. Trong thời điểm ban đầu, chỉ file /etc/hosts được sử dụng, sau 1 thời gian thì file này sẽ chứa đầy các thông tin về host DARPA và University, sau đó DNS sẽ được tạo để tìm kiếm các dịch vụ khác cho người sử dụng.
Ngày nay, hầu hết các nền tảng hệ điều hành đều thực hiện quá trình tìm kiếm tên dịch vụ qua địa chỉ IP bằng cách:
- Kiểm tra file /etc/hosts trước tiên
- Nếu không thấy, hệ thống sẽ gửi đi câu lệnh truy vấn về DNS
Bất kỳ thông tin hostname nào được tìm thấy trong file hosts sẽ ngăn chặn các câu lệnh truy vấn tiếp theo. Mặt khác, DNS lại đặc biệt quan trọng trong vấn đề bảo mật của Internet đối với hệ thống. Bất cứ người dùng nào cũng có thể thay thế những thông số này để “lừa” hệ thống, kết nối tới những server được điều khiển từ xa vớiSSL mà không đề phòng gì cả. Sự đảm bảo an toàn của các chứng nhận SSL được dùng để đảm bảo hoạt động mua bán hoặc các thao tác trực tuyến khác được thực hiện trong vòng an ninh bảo mật và dựa trên cấu hình DNS của hệ thống.

Một số điểm lợi thế của việc làm này:

- Cải thiện tốc độ kết nối Internet từ khi file hosts trên local được sử dụng ở chế độ mặc định, trước khi DNS được áp dụng.
- Không chỉ đối với trình duyệt, cách làm này còn có thể áp dụng được với ứng dụng client của iTunes, RealPlayer, Twitter… hoặc bất kỳ chương trình nào khác, không phụ thuộc vào giao thức traffic UDP hoặc TCP.
- Có thể hoạt động trên các nền tảng hệ điều hành riêng biệt, Portable, Mac OS X, Linux hoặc Microsoft Windows. Nếu hệ thống có sử dụng giao thức IP – Internet Protocol thì file /etc/hosts này chắc chắn có ở đâu đó trên hệ điều hành.
- Đồng thời, việc này cũng có thể ngăn chặn hoàn toàn quá trình tracking từ các server quảng cáo. Việc áp dụng file hosts sau khi tùy chỉnh sẽ trở nên vô cùng hữu ích trong trường hợp người dùng muốn hoàn toàn “thoát khỏi” sự giám sát của các chương trình quảng cáo có liên quan đến chức năng hoạt động cơ bản của cookies.
- Có thể ngăn chặn được các nguồn phần mềm độc hại, spyware, malware…

Chính xác là file nào trong hệ thống cần được sử dụng?

Đối với các hệ điều hành dựa trên nền tảng OS X và UNIX, thì file này được lưu trữ tại /etc/hosts. Còn trên Windows, file này thường xuyên có tại %SystemRoot%\system32\drivers\ (với Windows Vista hoặc 7 là:c:\Windows\System32\drivers\etc).
Thông thường, file host nguyên bản sẽ chứa một số thông tin như sau:
127.0.0.1 localhost
127.0.1.1 my-real-hostname
::1 my-ipv6-addr
File hosts này không có phần đuôi mở rộng – extension, do vậy các bạn cần phải cẩn thận trước khi tha tác trực tiếp đến. Cách đảm bảo tốt nhất là lưu trước nội dung của file hosts này vào 1 nơi an toàn (trong Mac OS, các bạn mở Go > Go To Folder và gõ /etc, sau đó tìm file hosts). Trên thực tế, chúng ta hoàn toàn có thể tự tạo file hosts cho riêng mình, qua đó gán thêm bao nhiêu địa chỉ server quảng cáo vào danh sách hạn chế này. Tuy nhiên, cách đơn giản hơn là sử dụng file hosts có sẵn từ cộng đồng mạng, có thể qua tìm kiếm với Google hoặc hpHosts.
Sau khi chuẩn bị được file hosts này, các bạn hãy copy tới thư mục etc, nếu đã mở sẵn file đó, hãy copy phần nội dung bắt đầu từ dòng 127.0.0.1 hoặc dãy địa chỉ IP khác. Khi lưu lại, hãy chắc chắn rằng bạn không lưu file có phần mở rộng. Một cách khác để kiểm tra file hosts hoặc phần nội dung bên trong có đảm bảo hay không, chúng ta chỉ cần tìm kiếm bất kỳ dòng thông tin nào không bắt đầu bằng 127.0.0.1 hoặc ký hiệu phần chú thích bên ngoài, chẳng hạn như:
egrep -v ‘^127.0.0.1|^#’ /etc/hosts |more
Tuy nhiên, không phải bất cứ file hosts nào được cung cấp sẵn trên Internet đều là an toàn. Trong một số trường hợp, những kẻ xấu thường cố tình chèn tên miền cung cấp, phát tán mã độc của chúng vào trong file để đánh lừa người sử dụng, ví dụ như cnbc7.com, trông có vẻ giống với kênh TV CNBC nhưng trên thực tế thì không phải như vậy. Để ngăn chặn, các bạn hãy thêm dòng này vào tất cả các file hosts trên hệ thống để ngăn chặn spyware, malware và virus:
127.0.0.1 cnbc7.com

Một số điểm cần lưu ý:

Về cơ bản, cấu trúc định dạng của file này hoàn toàn giống nhau đối với tất cả các nền tảng hệ điều hành, và nhiều người sử dụng muốn kết hợp phần nội dung, thông tin bên trong với file hosts có sẵn trên mạng. Tại 1 thời điểm nào đó, nếu bạn muốn quay trở lại 1 website đã bị chặn trước kia, thì chỉ cần đặt dấu chú thích ở phía trước server đó trong file hosts.
Ví dụ, nếu các bạn chặn facebook.com và www.facebook.com, thì sẽ ảnh hưởng tới một số website hoặc ứng dụng được có cơ chế hoạt động thông qua server lưu trữ của Facebook. Tuy nhiên, để giảm thiểu tối đa tỉ lệ rủi ro có thể xảy ra, các bạn hãy chuẩn bị sẵn 3 file hosts: hosts, hosts.noFB, hosts.FB. Nếu muốn sử dụng như thế nào thì chỉ cần copy nội dung của 1 trong 3 file đó vào file hosts chính thức.
Trong trường hợp chúng ta chặn toàn bộ 1 website nào đó, chẳng hạn như www.facebook.com thì kết quả hiển thị từ trình duyệt sẽ trông giống như sau:

Bất cứ sự thay đổi nào sẽ được áp dụng ngay lập tức, nếu các bạn chặn 1 domain nào đó chỉ vì những đoạn thông tin quảng cáo thì phần còn lại của màn hình sẽ hiển thị thành khoảng trắng, sau khi thay đổi file hosts thì phần còn lại sẽ trông giống như sau:
127.0.0.1 localhost
127.0.1.1 my-real-hostname
::1 my-ipv6-addr
Trên 1 số hệ điều hành hiện đại ngày nay, thì file hosts này được bảo vệ khá chặt chẽ, do vậy người dùng phải có quyền truy cập ở mức cao nhất – Adminsitrator. Còn đối với 1 số phiên bản của hệ điều hành Mac OS X,hệ thống không cho phép truy cập và thay đổi file hosts theo cách thông thường, các bạn hãy tham khảo thêm về những sự thay đổi này tại đây.
hostfile kinh nghiệm làm việc với file hosts trong hệ thống
Với những ứng dụng hỗ trợ firewall như Smoothwall, người dùng sẽ được toàn quyền xử lý tập trung file/etc/hosts đối với tất cả các máy, thiết bị trong hệ thống mạng. Thực ra thì tính năng này tỏ ra vô cùng hữu ích trong việc quản lý và giám sát hệ thống với rất nhiều thành phần máy tính bên trong. Trong trường hợp các bạn không muốn chặn thông tin nội dung từ 1 số website hoặc server nhất định thì việc áp dụng file /etc/hosts có thể không thực sự hợp lý. Trong thời điểm hiện nay, những trang web miễn phí phụ thuộc phần lớn vào việc bán quảng cáo sẽ khó có thể tồn tại được nếu chúng ta áp dụng các cách khác nhau để chặn dữ liệu quảng cáo, hơn nữa các bạn cần phải xác định rõ ràng và chính xác rằng, đó chỉ là các mẩu thông tin quảng cáo hay là lỗ hổng bảo mật của hệ thống dựa trên Flash hoặc JavaScript, nếu rơi đúng vào trường hợp này thì tốt nhất là chúng ta nên chặn hoàn toàn tên miền đó hoặc áp dụng tiện ích mở rộng hỗ trợ bên ngoài. Chúc các bạn thành công!


NHÀ CUNG CẤP DỊCH VỤ CHUYÊN NGHIỆP
PHÁT TRIỂN
WEBDESIGN - HOSTING - DOMAIN

0 comments:

Post a Comment