Bộ giao thức Internet |
---|
Tầng ứng dụng (Application layer) |
Tầng giao vận (Transport layer) |
Tầng mạng (Internet layer) |
Tầng liên kết (Link layer) |
TELNET (viết tắt của Terminal network) là một giao thức mạng (network protocol) được dùng trên các kết nối với Internet hoặc các kết nối tại mạng máy tính cục bộ LAN. Tài liệu của IETF, STD 8, (còn được gọi là RFC 854 và RFC 855) có nói rằng:
Mục đích của giao thức TELNET là cung cấp một phương tiện truyền thông chung chung, có tính lưỡng truyền, dùng độ rộng 8 bit, định hướng byte.
TELNET thường được dùng để cung cấp những phiên giao dịch đăng nhập, giữa các máy trên mạng Internet, dùng dòng lệnh có tính định hướng người dùng. Tên của nó có nguồn gốc từ hai chữ tiếng Anh "telephone network" (mạng điện thoại), vì chương trình phần mềm được thiết kế, tạo cảm giác như một thiết bị cuối được gắn vào một máy tính khác.
Đối với sự mở rộng của giao thức, chữ "telnet" còn ám chỉ đến một chương trình ứng dụng, phần người dùng của giao thức - hay còn gọi là trình khách (clients). Trong bao nhiêu năm qua, TELNET vốn được cài đặt sẵn trong hầu hết các hệ điều hành Unix, song với sự tiến triển gần đây của mình, SSH (Secure Shell) trở nên một giao thức có ưu thế hơn trong việc truy cập từ xa, cho các máy dùng hệ điều hành có nền tảng là Unix. SSH cũng được cài đặt sẵn cho hầu hết các loại máy vi tính. Trên rất nhiều hệ thống, chương trình ứng dụng "telnet" còn được dùng trong những phiên giao dịch tương tác TCP ở dạng sơ đẳng (interactive raw-TCP sessions), và còn được dùng để thông nối với những dịch vụ trên các máy chủ POP3, mà không cần đến những trình khách chuyên dụng. Cụm từ tiếng Anh "to telnet" còn được dùng như là một động từ, có nghĩa là "thành lập" hoặc "sử dụng", một kết nối dùng giao thức TELNET, như trong câu "To change your password, telnet to the server and run the passwd command" - (Để đổi mật khẩu của mình, telnet vào máy chủ và chạy dòng lệnh passwd).
Cụm từ trên còn có nghĩa là kết nối, theo thể thức mới, với Telnet Bulletin Board Systems - Hệ thống bảng tin Telnet - (mà một thời chỉ dùng kết nối quay số (dialup), trong những năm giữa 1980 và 1990), là kết nối cho phép sử dụng TCP/IP, cho những người còn luyến tiếc nó, cũng như hỗ trợ tất cả các giao thức nổi tiếng và các giao thức thường được dùng trên mạng Internet hiện nay, như là một bộ máy chủ, đa giao thức, toàn năng.
TELNET là một giao thức khách-chủ (client-server protocol), dựa trên nền TCP, và phần khách (người dùng) thường kết nối vào cổng 23 với một máy chủ, nơi cung cấp chương trình ứng dụng thi hành các dịch vụ. Người ta cũng có thể sử dụng chương trình ứng dụng TELNET, để thiết lập một kết nối TCP tương tác của giao thức, và đồng thời còn có thể dùng nó để định nghĩa những thực thi mở rộng. Rất nhiều mở rộng của giao thức đã hoàn thành và một số những thực thi trong đó đã được chấp nhận là tiêu chuẩn của Internet. Tài liệu số 27 đến 32 của IETF STD định nghĩa những mở rộng của TELNET (phần đông trong số đó là những cái đang được dùng rất phổ biến). Trong số những mở rộng còn lại, những cái có tác dụng nhất, rất có thể là những cái vốn là những dự thảo tiêu chuẩn, lại là những cái đang trên đà trở thành tiêu chuẩn của IETF. Chi tiết về chúng có thể được tìm thấy ở trang STD 1.
Nếu cân nhắc về bảo mật vi tính (computer security) thì TELNET là một giao thức không nên dùng, do ba nguyên nhân chính sau đây:
Trong một môi trường làm việc mà sự an toàn và bí mật là một yêu cầu quan trọng, nhưng trên mạng lưới công cộng Internet, việc dùng TELNET là một việc không nên. Phiên giao dịch dùng TELNET là một phiên giao dịch thường, dữ liệu truyền thông không được mật mã hóa (unencrypted). Nếu có một người ngoài nào có khả năng truy cập, hoặc đến gần được vào một bộ định tuyến (router), một bộ chuyển mạch (switch), hoặc một cổng nối (gateway) nằm trên mạng lưới, giữa hai máy chủ dùng "telnet" ở trên, người đó có thể chặn các gói dữ liệu của TELNET trên đường truyền, lấy những tin tức về đăng nhập, mật khẩu (và tất cả những gì mà người gửi đã đánh máy), bằng cách sử dụng một số những công cụ phần mềm như tcpdump hoặc Wireshark chẳng hạn.
Những sơ hở này gây sự mất uy tín đối với TELNET rất cao, và càng ngày càng ít người sử dụng nó. Người ta dần dần chuyển sang dùng SSH, một giao thức có tính năng tương tự, nhưng an toàn hơn. SSH ra đời vào năm 1995. SSH cung cấp tất cả những chức năng đã có trong "telnet", nhưng thêm chức năng mật mã hóa dữ liệu, tránh cho những dữ liệu có tính nhạy cảm cao bị chặn lại và bị nghe trộm. Phương pháp xác minh, dùng khóa công khai (public key), để chứng minh một máy tính ở xa nào đấy, thực sự là máy mà mình muốn liên lạc, đã được thực hiện.
Những chuyên gia về bảo mật máy tính như Viện SANS (SysAdmin, Audit, Network, Security Institute) và những thành viên của nhóm tin tức (newsgroup) comp.os.linux.security - (xem thêm FAQ ở đây) - khuyên mọi người rằng bất cứ một kết nối nào, hòng sử dụng đăng nhập từ xa (remote logins) dùng TELNET, trong những hoàn cảnh bình thường, đều đáng phải bị ngắt mạch, không được phép tiếp tục.
Khi TELNET mới được thiết kế và xây dựng vào năm 1969, phần đông những người dùng máy tính liên kết mạng là những người làm việc trong bộ phận vi tính của các cơ quan giáo dục, những bộ phận nghiên cứu lớn của tư nhân hoặc của chính phủ. Dưới môi trường ấy, bảo an truyền thông là một việc không mấy người quan tâm. Mãi cho đến khi sự bùng nổ về dải tần trong năm thuộc thập niên 1990, khi số lượng người truy cập và sử dụng Internet tăng lên gấp bội lần, và đồng thời với sự tăng trưởng này, số lượng người tấn công vào các máy chủ cũng tăng nhanh, thì việc bảo an truyền thông kết nối mới được để ý đến. Trong những điều kiện thông thường TELNET không nên được dùng trên những mạng lưới có kết nối với Internet.
Trong khi bản thân giao thức TELNET đã bị thay thế, thì những trình khách (clients) của TELNET vẫn thỉnh thoảng được sử dụng để "nói chuyện" với các dịch vụ khác, bằng tay. Đôi khi nó được dùng trong việc lùng tìm và gỡ lỗi những sai sót trong các trình dịch vụ của mạng (network services), ví dụ trong các máy chủ được cài SMTP hoặc HTTP chẳng hạn. Họ thường dùng TELNET như là một công cụ để truyền những dòng lệnh sang cho các máy chủ và kiểm tra những phản ứng hồi âm của trình dịch vụ. TELNET còn được dùng như trình khách IRC thô sơ, nếu người dùng hiểu biết kỹ lưỡng giao thức này. TELNET được dùng rất nhiều trong cái trò chơi qua đường truyền Internet, như MUD (Multi-User Dungeon), hoặc như trong các phần mềm như talker, MUSH, MUCK và MOO.
Trình khách "telnet" được cài đặt sẵn trong Windows và có thể truy cập được trong chế độ chờ lệnh (accessible from the command prompt).