Dịch vụ nào kết nối với cổng udp. Cổng mạng máy tính là gì? Cách sử dụng trong URL

Để giao tiếp với các ứng dụng chạy trên các máy chủ mạng khác (cũng như với các ứng dụng khác trên cùng một máy chủ).

Nguyên tắc cơ bản cần thiết để hiểu hoạt động của cổng: 1) Cổng chỉ có thể được sử dụng bởi một chương trình và tại thời điểm này không thể được sử dụng bởi một chương trình khác. 2) Tất cả các chương trình đều sử dụng cổng để liên lạc với nhau qua mạng.

Đối với mỗi giao thức TCP và UDP, tiêu chuẩn chỉ định khả năng phân bổ đồng thời tối đa 65536 cổng duy nhất trên máy chủ, được xác định bằng các số từ 0 đến 65535. Khi truyền qua mạng, số cổng trong tiêu đề gói được sử dụng ( cùng với địa chỉ IP của máy chủ) để giải quyết một ứng dụng cụ thể (và kết nối mạng cụ thể thuộc về nó).

Số cổng

Cổng TCP không trùng với cổng UDP. Nghĩa là, cổng TCP 1234 sẽ không can thiệp vào lưu lượng UDP qua cổng 1234.

Một số số cổng được chuẩn hóa (xem Danh sách cổng TCP và UDP). Danh sách này được duy trì bởi tổ chức phi lợi nhuận IANA.

Trên hầu hết các hệ điều hành giống UNIX, việc nghe trên các cổng được đánh số 0-1023 (hầu hết tất cả đều đã được đăng ký) yêu cầu các đặc quyền đặc biệt. Mỗi cổng còn lại có thể bị chiếm giữ bởi quy trình đầu tiên yêu cầu nó. Tuy nhiên, có nhiều số được đăng ký hơn 1024.

Danh sách ngắn gọn các số cổng

TCP được coi là được sử dụng trừ khi có ghi chú khác.

  • DISCARD: 9, Cổng hủy (RFC 863)
  • FTP: 21 cho lệnh, 20 cho dữ liệu
  • SSH: 22 (truy cập từ xa)
  • telnet: 23 (truy cập từ xa)
  • SMTP: 25, 465, 587
  • máy chủ: 3055
  • XMPP (Jabber): 5222/5223 - máy khách-máy chủ, 5269 - máy chủ-máy chủ
  • traceroute : trên 33434 (UDP) (một số nguồn chỉ ra rằng việc chỉ định phạm vi cổng từ 33434 đến 33534 là đủ)

Cổng người gửi và người nhận

Các gói TCP hoặc UDP luôn chứa hai trường số cổng: nguồn và đích. Loại chương trình dịch vụ được xác định bởi cổng người nhận của các yêu cầu đến và cùng một số là cổng phản hồi của người gửi. Cổng “đảo ngược” (cổng của người gửi yêu cầu hay còn gọi là cổng của người nhận phản hồi) khi kết nối qua TCP được khách hàng xác định tùy ý (mặc dù các số nhỏ hơn 1024 và các cổng đã chiếm dụng không được chỉ định), và không được người dùng quan tâm. Việc sử dụng số cổng ngược trong UDP phụ thuộc vào việc triển khai.

Liên kết

Ghi chú


Quỹ Wikimedia. 2010.

Xem "Cổng (TCP/IP)" là gì trong các từ điển khác:

    Tên: Lớp giao thức điều khiển vận chuyển (mô hình OSI): Họ vận chuyển: TCP/IP Cổng/ID: 6/IP Đặc điểm kỹ thuật: RFC 793 / STD 7 Triển khai chính ... Wikipedia

    Cảng: Wiktionary có một mục nhập cho “port” Port (tiếng Latinh portus “bến cảng”, “bến tàu”) ... Wikipedia

    Tên: Lớp giao thức điều khiển truyền (mô hình OSI): Họ truyền tải: TCP/IP Cổng/ID: 6/IP Đặc điểm kỹ thuật: RFC 793 / STD 7 Triển khai chính: Linux, Windows Khả năng mở rộng ... Wikipedia

    Ngăn xếp giao thức TCP/IP (Transmission Control Protocol/Internet Protocol) là một tập hợp các giao thức mạng ở các cấp độ khác nhau của mô hình tương tác mạng DOD được sử dụng trong các mạng. Các giao thức hoạt động với nhau trong một ngăn xếp (tiếng Anh stack, stack) ... ... Wikipedia

    Số cổng TCP xác định một quy trình hoặc ứng dụng trong máy tính. Đối với các ứng dụng khách, số cổng được hệ điều hành gán động. Đối với các máy chủ phần mềm, số cổng không thay đổi và do Internet quy định... ... Từ điển tài chính

    Cổng mạng là một tham số của các giao thức UDP xác định mục đích của các gói dữ liệu có định dạng Đây là số có điều kiện từ 0 đến 65535, cho phép các chương trình khác nhau chạy trên cùng một máy chủ nhận dữ liệu độc lập với nhau (với điều kiện như thế này.. . ... Wikipedia

    Cổng mạng là một tham số của các giao thức UDP xác định mục đích của các gói dữ liệu có định dạng Đây là số có điều kiện từ 0 đến 65535, cho phép các chương trình khác nhau chạy trên cùng một máy chủ nhận dữ liệu độc lập với nhau (với điều kiện như thế này.. . ... Wikipedia

    Cổng mạng là một tham số của các giao thức UDP xác định mục đích của các gói dữ liệu có định dạng Đây là số có điều kiện từ 0 đến 65535, cho phép các chương trình khác nhau chạy trên cùng một máy chủ nhận dữ liệu độc lập với nhau (với điều kiện như thế này.. . ... Wikipedia

    Cổng mạng là một tham số của các giao thức UDP xác định mục đích của các gói dữ liệu có định dạng Đây là số có điều kiện từ 0 đến 65535, cho phép các chương trình khác nhau chạy trên cùng một máy chủ nhận dữ liệu độc lập với nhau (với điều kiện như thế này.. . ... Wikipedia

Trong mạng máy tính, cổng là điểm cuối của giao tiếp trong hệ điều hành. Thuật ngữ này cũng được sử dụng cho các thiết bị phần cứng, nhưng trong phần mềm, nó là một cấu trúc logic xác định một quy trình hoặc loại dịch vụ cụ thể.

Một cổng luôn được liên kết với loại và địa chỉ IP máy chủ và do đó hoàn thành việc gán địa chỉ phiên. Nó được xác định cho từng địa chỉ và giao thức bằng số 16 bit, thường được gọi là số cổng. Số cổng cụ thể thường được sử dụng để xác định các dịch vụ cụ thể. Trong số hàng nghìn cổng được liệt kê, 1024 số cổng nổi tiếng được bảo vệ theo quy ước để xác định các loại dịch vụ cụ thể trên máy chủ. Các giao thức chủ yếu sử dụng cổng được sử dụng để kiểm soát các quy trình (chẳng hạn như Giao thức điều khiển truyền (TCP) và Giao thức gói dữ liệu người dùng (UDP) từ bộ giao thức Internet).

Nghĩa

Cổng TCP không cần thiết trên các liên kết điểm-điểm trực tiếp trong đó các máy tính ở mỗi đầu chỉ có thể chạy một chương trình tại một thời điểm. Chúng trở nên cần thiết khi máy móc có khả năng chạy nhiều chương trình cùng một lúc và được kết nối với các mạng chuyển mạch gói hiện đại. Trong mô hình máy khách-máy chủ, các cổng và máy khách mạng kết nối để khởi tạo dịch vụ, cung cấp dịch vụ ghép kênh sau khi liên lạc ban đầu được liên kết với một số cổng đã biết và nó được giải phóng bằng cách chuyển từng phiên bản dịch vụ yêu cầu sang một đường dây chuyên dụng. Kết nối được thực hiện đến một số cụ thể và nhờ đó, các khách hàng bổ sung có thể được phục vụ mà không phải chờ đợi.

Chi tiết

Các giao thức truyền dữ liệu - Giao thức điều khiển truyền (TCP) và Giao thức gói dữ liệu người dùng (UDP) - được sử dụng để chỉ ra số cổng đích và nguồn trong tiêu đề phân đoạn của chúng. Số cổng là số nguyên không dấu 16 bit. Vì vậy, nó có thể nằm trong khoảng từ 0 đến 65535.

Tuy nhiên, các cổng TCP không thể sử dụng số 0. Cổng nguồn cho UDP là tùy chọn và giá trị bằng 0 có nghĩa là nó không xuất hiện.

Một quy trình giao tiếp các kênh đầu vào hoặc đầu ra của nó thông qua ổ cắm Internet (một loại bộ mô tả tệp) bằng cách sử dụng giao thức truyền tải, số cổng và địa chỉ IP. Quá trình này được gọi là ràng buộc và nó cho phép gửi và nhận dữ liệu qua mạng.

Hệ điều hành chịu trách nhiệm truyền dữ liệu đi từ tất cả các cổng ứng dụng tới mạng, cũng như chuyển tiếp các gói mạng đến (bằng cách ánh xạ địa chỉ IP và số). Chỉ một quy trình có thể được liên kết với một địa chỉ IP và kết hợp cổng cụ thể bằng cách sử dụng cùng một giao thức truyền tải. Sự cố ứng dụng phổ biến, đôi khi được gọi là xung đột cổng, xảy ra khi nhiều chương trình cố gắng giao tiếp với cùng số cổng trên cùng một địa chỉ IP bằng cùng một giao thức.

Chúng được sử dụng như thế nào?

Các ứng dụng triển khai dịch vụ chia sẻ thường sử dụng danh sách cổng TCP và UDP được dành riêng và nổi tiếng để chấp nhận các yêu cầu dịch vụ từ máy khách. Quá trình này được gọi là lắng nghe và nó bao gồm việc nhận yêu cầu từ một cổng phổ biến và thiết lập cuộc trò chuyện trực tiếp giữa máy chủ và máy khách bằng cùng một số cổng cục bộ. Các máy khách khác có thể tiếp tục kết nối - điều này có thể thực hiện được vì kết nối TCP được xác định là một chuỗi bao gồm các địa chỉ và cổng cục bộ và từ xa. Các cổng TCP và UDP tiêu chuẩn được xác định theo thỏa thuận dưới sự kiểm soát của Cơ quan quản lý số được gán Internet (IANA).

Các dịch vụ mạng lõi (đáng chú ý nhất là WorldWideWeb) có xu hướng sử dụng số cổng nhỏ - dưới 1024. Nhiều hệ điều hành yêu cầu các đặc quyền để ứng dụng liên kết với chúng vì chúng thường được coi là quan trọng đối với hoạt động của mạng IP. Mặt khác, máy khách cuối của kết nối thường sử dụng một số lượng lớn các cổng này, được phân bổ để sử dụng trong thời gian ngắn, đó là lý do tại sao có cái gọi là cổng phù du.

Kết cấu

Các cổng TCP được mã hóa trong tiêu đề gói giao thức truyền tải và chúng có thể được hiểu dễ dàng không chỉ bởi các máy tính gửi và nhận mà còn bởi các thành phần khác của cơ sở hạ tầng mạng. Đặc biệt, tường lửa thường được cấu hình để phân biệt các gói dựa trên số cổng nguồn hoặc đích của chúng. Chuyển hướng là một ví dụ cổ điển về điều này.

Việc cố gắng kết nối tuần tự với nhiều cổng trên một máy tính được gọi là quét cổng. Điều này thường là do các nỗ lực phá hoại có mục đích xấu hoặc do quản trị viên mạng đang tìm kiếm các lỗ hổng có thể có để giúp ngăn chặn các cuộc tấn công như vậy.

Các hoạt động tập trung vào tần suất máy tính được theo dõi và ghi lại. Kỹ thuật này sử dụng một số kết nối dự phòng để đảm bảo kết nối đến máy chủ không bị gián đoạn.

Ví dụ về việc sử dụng

Ví dụ quan trọng nhất nơi các cổng TCP/UDP được sử dụng tích cực là hệ thống thư Internet. Máy chủ được sử dụng để làm việc với email (gửi và nhận) và nói chung yêu cầu hai dịch vụ. Dịch vụ đầu tiên được sử dụng để vận chuyển qua email và các máy chủ khác. Điều này đạt được bằng cách sử dụng Thông thường, ứng dụng dịch vụ SMTP sẽ lắng nghe trên cổng TCP số 25 nhằm mục đích xử lý các yêu cầu đến. Một dịch vụ khác là POP (Giao thức Bưu điện) hoặc IMAP (hoặc Giao thức Truy cập Thư Internet) được yêu cầu cho các ứng dụng email client trên máy của người dùng để nhận email từ máy chủ. Các dịch vụ POP lắng nghe các số trên cổng TCP 110. Các dịch vụ trên đều có thể chạy trên cùng một máy chủ. Khi điều này xảy ra, số cổng sẽ phân biệt dịch vụ được yêu cầu bởi thiết bị từ xa - PC của người dùng hoặc một số máy chủ thư khác.

Mặc dù số cổng nghe của máy chủ được xác định rõ ràng (IANA gọi chúng là các cổng nổi tiếng), tham số máy khách này thường được chọn từ phạm vi động. Trong một số trường hợp, máy khách và máy chủ sử dụng riêng các cổng TCP cụ thể được chỉ định trong IANA. Một ví dụ điển hình là DHCP, trong đó máy khách sử dụng UDP 68 trong mọi trường hợp và máy chủ sử dụng UDP 67.

Cách sử dụng trong URL

Số cổng đôi khi được hiển thị rõ ràng trên Internet hoặc các Bộ định vị tài nguyên thống nhất (URL) khác. Theo mặc định, HTTP sử dụng và HTTPS sử dụng 443. Tuy nhiên, có các biến thể khác. Ví dụ: URL http://www.example.com:8080/path/ cho biết trình duyệt web đang kết nối với 8080 thay vì máy chủ HTTP.

Danh sách các cổng TCP và UDP

Như đã lưu ý, Cơ quan quản lý số được gán Internet (IANA) chịu trách nhiệm điều phối toàn cầu về DNS-Root, địa chỉ IP và các tài nguyên Giao thức Internet khác. Điều này bao gồm việc ghi nhật ký số cổng được sử dụng thường xuyên cho các dịch vụ Internet nổi tiếng.

Số cổng được chia thành ba phạm vi: nổi tiếng, đã đăng ký và động hoặc riêng tư. Nổi tiếng (còn được gọi là hệ thống) là những dữ liệu được đánh số từ 0 đến 1023. Yêu cầu đối với các cuộc hẹn mới trong phạm vi này nghiêm ngặt hơn so với các đăng ký khác.

Những ví dụ nổi tiếng

Các ví dụ được tìm thấy trong danh sách này bao gồm:

  • Cổng TCP 443: HTTP Secure (HTTPS).
  • 22: Vỏ bảo mật (SSH).
  • 25: Giao thức truyền thư đơn giản (SMTP).
  • 53: Hệ thống tên miền (DNS).
  • 80: Giao thức truyền siêu văn bản (HTTP).
  • 119: Giao thức truyền tin tức mạng (NNTP).
  • 123: Giao thức thời gian mạng (NTP)..
  • 143: Giao thức truy cập tin nhắn Internet (IMAP)
  • 161: Giao thức quản lý mạng đơn giản (SNMP)1.
  • 94: Trò chuyện chuyển tiếp Internet (IRC).

Các cổng đã đăng ký nằm trong khoảng từ 1024 đến 49151. IANA duy trì danh sách chính thức các phạm vi đã biết và đã đăng ký. Động hoặc Riêng tư - 49152 đến 65535. Một lần sử dụng phạm vi này là dành cho các cổng tạm thời.

Lịch sử sáng tạo

Khái niệm số cổng được tạo ra bởi các nhà phát triển ARPANET ban đầu trong sự cộng tác không chính thức giữa tác giả phần mềm và quản trị viên hệ thống.

Thuật ngữ "số cổng" vẫn chưa được sử dụng vào thời điểm đó. Chuỗi số cho máy chủ từ xa là số 40 bit. 32 bit đầu tiên tương tự như địa chỉ IPv4 ngày nay, nhưng 8 bit đầu tiên là quan trọng nhất. Phần nhỏ nhất của số (bit 33 đến 40) đại diện cho một đối tượng khác gọi là AEN. Đây là nguyên mẫu của số cổng hiện đại.

Vào ngày 26 tháng 3 năm 1972, việc tạo ra một thư mục số ổ cắm lần đầu tiên được đề xuất trong RFC 322, trong đó yêu cầu mỗi số liên tục được mô tả theo chức năng và dịch vụ mạng của nó. Thư mục này sau đó được xuất bản trong RFC 433 vào tháng 12 năm 1972 và bao gồm danh sách các máy chủ, số cổng của chúng và chức năng tương ứng được sử dụng trên mỗi nút trên mạng. Vào tháng 5 năm 1972, việc gán chính thức số cổng, dịch vụ mạng và chức năng quản trị đặc biệt để duy trì sổ đăng ký này lần đầu tiên được ghi lại.

Danh sách cổng TCP đầu tiên có 256 giá trị AEN, được chia thành các phạm vi sau:

  • 0 đến 63: chức năng tiêu chuẩn của toàn bộ mạng
  • 64 đến 127: Chức năng dành riêng cho máy chủ
  • 128 đến 239: Dự trữ để sử dụng sau này
  • 240 đến 255: Bất kỳ tính năng thử nghiệm nào.

Dịch vụ Telnet đã nhận được sự gán giá trị chính thức đầu tiên là 1. Trong những ngày đầu của ARPANET, thuật ngữ AEN cũng dùng để chỉ tên của ổ cắm được sử dụng với giao thức kết nối ban đầu (MSP) và chương trình điều khiển mạng (NCP). ) thành phần. Hơn nữa, NCP là tiền thân của các giao thức Internet hiện đại sử dụng cổng TCP/IP.

Về cổng mạng máy tính.

Bài viết mô tả rõ ràng cổng hệ thống là gì, tại sao các chương trình cần nó, cách thức và thiết bị nào sử dụng cổng để giao tiếp trên mạng cũng như những cổng liên quan đến bảo mật dữ liệu của bạn. Bài viết giới thiệu; Chúng ta sẽ nói vào lúc khác về cách giám sát các cổng hệ thống, định cấu hình và quét chính xác, tránh lỗi và hiểu điều gì đang xảy ra.

Cổng mạng máy tính: chúng là gì?

Ngay khi các máy tính chuẩn bị trao đổi thông tin qua mạng, chúng lập tức mở các cổng thông tin để trao đổi. Trong kiến ​​trúc mạng, giao tiếp giữa BẤT KỲ hai hệ thống nào đều dựa trên năm những nguyên tắc bất biến. Để dữ liệu “bay” từ điểm MỘT chính xác B, nên biết:

  • Địa chỉ IP của nguồn thông tin
  • Địa chỉ IP người nhận
  • giao thức mà các thiết bị sẽ liên lạc
  • cổng truyền nguồn
  • và cổng đích được sử dụng bởi giao thức truyền tải RFC793

Hải cảng- đây là một loại tiện ích mở rộng ảo, một phần bổ sung cho địa chỉ mạng (như phần bổ sung số cho tên đường hoặc nhà tại địa chỉ nơi bạn sống). Người đưa thư sẽ đến phố của bạn, nhưng sẽ không chuyển thư - anh ta không biết gửi cho ai, vì anh ta không biết số căn hộ. Như vậy thông tin sẽ đến máy tính của bạn qua IP nhưng nếu không có số cổng phù hợp thì thông tin sẽ không đến được máy tính. Đơn giản là máy tính sẽ không hiểu cách xử lý nó, sử dụng ứng dụng nào. Cổng mạng máy tính- đây là các đường dẫn giữa các dịch vụ đang chạy trong hệ điều hành được cài đặt trên máy tính và các tiến trình mẹ/chị em trên máy tính chủ, đôi khi nằm cách xa bạn hàng nghìn km.

Nhân tiện, . Đây là những đầu nối vật lý, không giống như những đầu nối được mô tả, có thể chạm vào được. Nhưng chức năng của chúng về cơ bản là giống nhau: tất cả các cổng đều được thiết kế để nhận thông tin từ các thiết bị khác.

Các giao thức truyền tải (phổ biến nhất và được sử dụng là TCP và UDP) xâm nhập vào máy tính, sử dụng trong tin nhắn, cùng với những thứ khác, các số từ tổng số cổng. Khi một ứng dụng muốn nói chuyện với một thiết bị khác, nó sẽ trực tiếp yêu cầu hệ điều hành cục bộ mở một kênh để truyền. Các ứng dụng có thể giao tiếp bằng cả hai giao thức (UDP và TCP) có thể sử dụng cùng một cổng để thực hiện việc này, nhưng điều kiện này là không bắt buộc.

Cổng máy tính là gì: có bao nhiêu cổng?

Số cổng chính xác trên máy tính là 65 535 . Và họ có sự phân cấp riêng của họ. Vì vậy, các cổng có số lượng lên tới 1023 Linux và các hệ điều hành tương tự Unix được coi là hệ thống “quan trọng” đối với hoạt động mạng, vì vậy việc truy cập vào chúng và các dịch vụ liên quan đến chúng thường yêu cầu nguồn gốc quyền. Windows cũng coi chúng là hệ thống và giám sát chúng chặt chẽ.

Cổng từ 1024 trước 49151 được đánh dấu là “sẵn sàng đăng ký”. Điều này có nghĩa là các cổng này được dành riêng hoặc có thể được dành riêng cho một số dịch vụ nhất định. May mắn thay hoặc không may, chúng không được gán cho các dịch vụ này theo các quy tắc chặt chẽ, nhưng chúng có thể cung cấp chìa khóa để nhận dạng chương trình đang chạy ở phía máy chủ. Phần còn lại (bắt đầu từ 49152 ) các cổng không được đăng ký và được sử dụng theo ý muốn của người dùng hệ điều hành và được gọi là các cổng "động". Vì vậy, việc ghi nhớ cổng nào được dành riêng cho dịch vụ nào thường đơn giản là vô dụng (ít nhất là ngày nay; tuy nhiên, tình hình có thể thay đổi). Nhưng có một danh sách các cổng đã được sử dụng bởi các dịch vụ cụ thể “từ xa xưa”:

20 : Dữ liệu FTP
21 : Điều khiển FTP
22 : SSH
23 : Telnet<= незащищённый, так что не рекомендуется к использованию
25 : SMTP
43 : AI LÀ
53 : Dịch vụ DNS
67 : Dịch vụ DHCP
68 : Máy khách DHCP
80 : lưu lượng HTTP<= обычный веб трафик
110 : Bưu điện POP3
113 : dịch vụ xác thực trong mạng IRC
143 : Thư IMAP
161 : SNMP
194 : IRC
389 :LDAP
443 : HTTPS<= защищённый сетевой трафик
587 : SMTP<= добавление сообщений
631 : Cổng CUPS cho máy in ảo.

Còn một điều nữa bạn cần biết khi tìm hiểu cổng máy tính là gì. Đây là những thuật ngữ đặc biệt mô tả trạng thái của các cổng theo nghĩa trao đổi dữ liệu tại thời điểm hiện tại. Vì thế:

  • Hải cảng– bản địa hóa mạng trong hệ điều hành với việc gán một giá trị số cụ thể để trao đổi thông tin qua các giao thức thích hợp
  • Ổ cắm Internet- hoặc đơn giản ổ cắm– bộ mô tả tệp chỉ định địa chỉ IP và số cổng liên quan cùng với giao thức truyền đặc biệt sẽ hoạt động với dữ liệu
  • Ràng buộc– quá trình sử dụng ổ cắm Internet của một dịch vụ hoặc dịch vụ khi truyền và nhận tệp
  • Nghe– cố gắng liên hệ với một dịch vụ hoặc dịch vụ bằng cổng/giao thức/địa chỉ IP hoặc sự kết hợp của các thành phần nhận dạng mạng của hệ thống này để chờ yêu cầu từ máy khách dịch vụ
  • – kiểm tra trạng thái của các cổng để nhận biết sự sẵn sàng của chúng cho các hành động tiếp theo

Cổng máy tính là gì? Bạn có muốn ngưỡng mộ họ không?

Bạn đã quen thuộc với danh sách các cổng phổ biến, nhưng một số dịch vụ có thể sử dụng cổng không được gán cho chúng theo mặc định. Hoặc, điều không hiếm gặp là các cổng mở được sử dụng làm cửa sau cho kẻ tấn công. Vì vậy, nếu bạn quyết định tự thay đổi cài đặt cổng, bạn cần đảm bảo rằng máy khách và máy chủ tuân thủ luật pháp sẽ tìm thấy nhau. Ngược lại, bạn nên để Windows chặn cổng, cấu hình chặn trong bộ định tuyến hoặc dựa vào nhà cung cấp, họ thường chặn cổng vào cuối ngày mà không hỏi cụ thể nhóm khách hàng.

Bạn có thể xem trên máy tính của mình ngay bây giờ cổng nào đang làm gì. Nhập vào thiết bị đầu cuối:

ít hơn /etc/services

và cuộn bằng chuột cho đến hết. Họ đang ở đây trong tất cả vinh quang của họ.

Kali Linux hữu ích về mọi mặt nmap cũng có thể hiển thị danh sách chúng:

Ít hơn /usr/share/nmap/nmap-services

Nếu bạn đang đọc bài viết này trên Windows, để xem các cổng hiện đang mở, hãy chạy Command Console với tư cách quản trị viên cmd và chạy lệnh trong đó:

Netstat -a

Tuy nhiên, các cổng mở rộng hơn hoạt động trong Windows sẽ được mở cho bạn bằng một chương trình nhỏ có tên Máy phân tích quy trình và cổng, có thể dễ dàng tải xuống trực tuyến. Nó sẽ giải thích một cách đơn giản và rõ ràng những cổng nào hiện đang mở và những cổng này đang nghe chương trình gì. Đây là một trong các tab tiện ích:

Sử dụng chương trình, bạn có thể dễ dàng kiểm tra vị trí của quy trình này trong hệ thống và xác định mức độ an toàn của nó.

Cổng máy tính và an ninh mạng

Các chương trình và dịch vụ được mô tả ở đây cho phép bạn xem các cổng được mở cụ thể trong hệ điều hành của bạn(Windows và Linux) đối với một số chương trình đang chạy trên máy tính. Tuy nhiên, hãy nhớ rằng trong hệ thống truyền thông tin giữa máy tính của bạn và một máy chủ web ở xa ở đâu đó ở Hà Lan, vẫn còn nhiều thiết bị lọc lưu lượng nghiêm trọng hơn, bao gồm cả các cổng giám sát (nhân tiện, bao gồm cả cổng trong bộ định tuyến trong phòng của bạn). Tất nhiên không phải của bạn. Tuy nhiên, các máy chủ này có quyền quyết định xem có dữ liệu nào được đưa vào Windows của bạn hay không. Nhà cung cấp của bạn cũng nhúng tay vào việc này, người mà bạn trả tiền để truy cập mạng, chặn các cổng vì mục đích bảo mật hoặc để ngăn chặn hoạt động mạng không cần thiết (nếu bạn muốn thiết lập máy chủ web của riêng mình tại nhà thì sao? - nó sẽ thắng' t làm việc).

Tại sao việc này lại được thực hiện? Hãy để tôi tiếp tục sự tương tự với những ngôi nhà và đường phố. Hãy tưởng tượng rằng bạn đã quyết định mua một gara cho ô tô của mình (máy tính) tại một hợp tác xã gần đó. Điều đầu tiên cần làm là bảo vệ và tăng cường khả năng không thể vào cơ sở: lắp cửa tốt và lắp ổ khóa đáng tin cậy (đóng cổng). Nhưng bạn có thể làm gì khác? Ai đó đặt báo thức (máy quét mạng đặc biệt để kiểm tra trạng thái của các cổng). Tiết kiệm tiền và lắp thêm hàng rào có cổng (bộ định tuyến vớiđược xây dựng trong bức tường lửa) để bạn có thể đỗ xe máy bên trong (viên thuốc) . Và để các bãi cỏ không bị xe tải làm hỏng, về phần mình, tấm ván (các nhà cung cấp) đã lắp đặt rào chắn tự động (mạng chống bộ lọc): mọi thứ tưởng chừng như rộng mở nhưng một người lạ sẽ không đi qua. Và như thế…

Tuy nhiên, nếu bạn vẫn muốn tìm hiểu làm thế nào máy tính của bạn có thể nhìn thấy được từ mạng toàn cầu (ví dụ: đối với những kẻ tấn công đang cố gắng kiểm tra sức mạnh của bạn), thì các phương pháp được mô tả ở đây là hoàn toàn không phù hợp. Chúng tôi sẽ phát triển chủ đề này trong các bài viết tiếp theo.

Đọc: 2,419

Cổng mạng có thể cung cấp thông tin quan trọng về các ứng dụng truy cập máy tính qua mạng. Bằng cách biết các ứng dụng sử dụng mạng và các cổng mạng tương ứng, bạn có thể tạo các quy tắc tường lửa chính xác và định cấu hình máy chủ để chỉ cho phép lưu lượng truy cập hữu ích. Bằng cách xây dựng cấu hình mạng và triển khai các công cụ nhận dạng lưu lượng mạng, bạn có thể phát hiện những kẻ xâm nhập hiệu quả hơn - đôi khi chỉ đơn giản bằng cách phân tích lưu lượng mạng mà chúng tạo ra. Chúng tôi bắt đầu xem xét chủ đề này trong phần đầu tiên của bài viết đăng trên số trước của tạp chí. Nó cung cấp thông tin cơ bản về các cổng TCP/IP làm nền tảng cho bảo mật mạng. Phần 2 sẽ mô tả một số phương pháp mạng và máy chủ có thể được sử dụng để xác định các ứng dụng đang nghe trên mạng. Phần sau của bài viết chúng ta sẽ nói về cách đánh giá lưu lượng truy cập đi qua mạng.

Chặn các ứng dụng mạng

Bề mặt tấn công mạng là một thuật ngữ phổ biến để mô tả lỗ hổng mạng. Nhiều cuộc tấn công mạng diễn ra thông qua các ứng dụng dễ bị tấn công và bề mặt tấn công có thể giảm đáng kể bằng cách giảm số lượng ứng dụng đang hoạt động trên mạng. Nói cách khác, bạn nên vô hiệu hóa các dịch vụ không sử dụng, cài đặt tường lửa trên hệ thống chuyên dụng để kiểm tra tính hợp pháp của lưu lượng truy cập và tạo danh sách kiểm soát truy cập (ACL) toàn diện cho tường lửa ở chu vi mạng.

Mỗi cổng mạng mở đại diện cho một ứng dụng đang lắng nghe trên mạng. Bề mặt tấn công của mỗi máy chủ được kết nối với mạng có thể được giảm thiểu bằng cách vô hiệu hóa tất cả các ứng dụng và dịch vụ mạng không cần thiết. Windows Server 2003 vượt trội hơn so với các phiên bản trước của hệ điều hành vì theo mặc định, nó cho phép ít dịch vụ mạng hơn. Tuy nhiên, việc kiểm tra vẫn cần thiết để phát hiện các ứng dụng mới cài đặt và các thay đổi cấu hình mở ra các cổng mạng không cần thiết.

Mỗi cổng mở đều là cửa hậu tiềm năng để kẻ tấn công khai thác khoảng trống trong ứng dụng máy chủ hoặc lén lút truy cập ứng dụng bằng tên và mật khẩu của người dùng khác (hoặc sử dụng phương thức xác thực hợp pháp khác). Dù bằng cách nào, bước quan trọng đầu tiên để bảo vệ mạng của bạn chỉ đơn giản là vô hiệu hóa các ứng dụng mạng không sử dụng.

Quét cổng

Quét cổng là quá trình phát hiện các ứng dụng đang nghe bằng cách chủ động thăm dò các cổng mạng của máy tính hoặc thiết bị mạng khác. Khả năng đọc kết quả quét và so sánh các báo cáo mạng với kết quả thăm dò cổng máy chủ cho phép bạn có được bức tranh rõ ràng về lưu lượng truy cập qua mạng của mình. Kiến thức về cấu trúc liên kết mạng rất quan trọng trong việc chuẩn bị kế hoạch chiến lược để quét các khu vực cụ thể. Ví dụ: bằng cách quét một loạt địa chỉ IP bên ngoài, bạn có thể thu thập dữ liệu có giá trị về kẻ tấn công Internet. Vì vậy, bạn nên quét mạng thường xuyên hơn và đóng tất cả các cổng mạng không cần thiết.

Quét cổng tường lửa bên ngoài có thể phát hiện tất cả các dịch vụ phản hồi (chẳng hạn như Web hoặc email) được lưu trữ trên các máy chủ nội bộ. Những máy chủ này cũng cần được bảo vệ. Định cấu hình trình quét cổng quen thuộc (ví dụ: Network Mapper - Nmap) để quét nhóm cổng UDP hoặc TCP mong muốn. Thông thường, quét cổng TCP đáng tin cậy hơn quét UDP do phản hồi sâu hơn từ các giao thức hướng kết nối của TCP. Có phiên bản Nmap cho cả Windows và Unix. Bắt đầu quét cơ bản thật dễ dàng, mặc dù chương trình cung cấp nhiều tính năng nâng cao hơn. Để tìm các cổng đang mở trên máy tính thử nghiệm, tôi chạy lệnh

Nmap 192.168.0.161

Màn hình 1 hiển thị kết quả của phiên quét - trong trường hợp này là máy tính Windows 2003 có cấu hình tiêu chuẩn. Dữ liệu được thu thập từ quá trình quét cổng cho thấy có sáu cổng TCP đang mở.

Màn hình 1: Phiên quét Nmap cơ bản
  • Cổng 135 được sử dụng bởi tính năng ánh xạ điểm cuối RPC có trong nhiều công nghệ Windows, chẳng hạn như ứng dụng COM/DCOM, DFS, ghi nhật ký sự kiện, sao chép tệp, xếp hàng tin nhắn và Microsoft Outlook. Cổng này đáng lẽ phải bị chặn bởi tường lửa chu vi mạng, nhưng rất khó để chặn nó mà vẫn duy trì chức năng của Windows.
  • Cổng 139 được sử dụng bởi dịch vụ phiên NetBIOS, dịch vụ này cho phép Tìm trình duyệt máy tính khác, Dịch vụ chia sẻ tệp, Đăng nhập mạng và dịch vụ Máy chủ. Rất khó để đóng, giống như cổng 135.
  • Cổng 445 được Windows sử dụng để chia sẻ tệp. Để đóng cổng này, bạn phải chặn Chia sẻ Tệp và Máy in cho Mạng Microsoft. Việc đóng cổng này không ngăn máy tính kết nối với các tài nguyên từ xa khác; tuy nhiên, các máy tính khác sẽ không thể kết nối với hệ thống này.
  • Cổng 1025 và 1026 được mở động và được sử dụng bởi các quy trình hệ thống Windows khác, đặc biệt là các dịch vụ khác nhau.
  • Cổng 3389 được Remote Desktop sử dụng, cổng này không được bật theo mặc định nhưng đang hoạt động trên máy tính thử nghiệm của tôi. Để đóng cổng, hãy chuyển đến tab Từ xa trong hộp thoại Thuộc tính Hệ thống và bỏ chọn hộp kiểm Cho phép người dùng kết nối từ xa với máy tính này.

Hãy nhớ tìm kiếm các cổng UDP đang mở và đóng những cổng không cần thiết. Chương trình quét hiển thị các cổng mở của máy tính có thể nhìn thấy được từ mạng. Kết quả tương tự có thể thu được bằng cách sử dụng các công cụ nằm trên hệ thống máy chủ.

Quét máy chủ

Ngoài việc sử dụng trình quét cổng mạng, có thể phát hiện các cổng mở trên hệ thống máy chủ bằng lệnh sau (chạy trên hệ thống máy chủ):

Netstat -an

Lệnh này hoạt động trên cả Windows và UNIX. Netstat cung cấp danh sách các cổng đang hoạt động trên máy tính. Trên Windows 2003 Windows XP, bạn phải thêm tùy chọn -o để lấy mã định danh chương trình (PID) tương ứng. Hình 2 cho thấy đầu ra Netstat của cùng một máy tính đã được quét cổng trước đó. Xin lưu ý rằng một số cổng hoạt động trước đó đã bị đóng.

Kiểm tra nhật ký tường lửa

Một cách hữu ích khác để phát hiện các ứng dụng mạng đang gửi hoặc nhận dữ liệu qua mạng là thu thập và phân tích thêm dữ liệu trong nhật ký tường lửa. Việc từ chối các mục cung cấp thông tin từ giao diện người dùng của tường lửa dường như không hữu ích do "lưu lượng nhiễu" (ví dụ: từ sâu, máy quét, kiểm tra ping) làm tắc nghẽn Internet. Nhưng nếu bạn đăng nhập các gói được phép từ giao diện nội bộ, bạn có thể thấy tất cả lưu lượng truy cập mạng đến và đi.

Để xem dữ liệu lưu lượng thô trên mạng của mình, bạn có thể cài đặt bộ phân tích mạng kết nối với mạng và ghi lại tất cả các gói mạng được phát hiện. Trình phân tích mạng miễn phí được sử dụng rộng rãi nhất là Tcpdump cho UNIX (phiên bản Windows có tên là Windump), rất dễ cài đặt trên máy tính của bạn. Sau khi cài đặt chương trình, bạn nên định cấu hình chương trình để hoạt động ở chế độ nhận tất cả các gói mạng để ghi lại tất cả lưu lượng truy cập, sau đó kết nối nó với trình giám sát cổng trên bộ chuyển mạch mạng và giám sát tất cả lưu lượng truy cập đi qua mạng. Việc thiết lập một màn hình cổng sẽ được thảo luận dưới đây. Tcpdump là một chương trình cực kỳ linh hoạt, có thể được sử dụng để xem lưu lượng mạng bằng các bộ lọc chuyên dụng và chỉ hiển thị thông tin về địa chỉ IP và cổng hoặc tất cả các gói. Rất khó để xem kết xuất mạng trên các mạng lớn nếu không có sự trợ giúp của các bộ lọc thích hợp, nhưng phải cẩn thận để không làm mất dữ liệu quan trọng.

Kết hợp các thành phần

Cho đến nay, chúng ta đã xem xét các phương pháp và công cụ khác nhau có thể được sử dụng để phát hiện các ứng dụng sử dụng mạng. Đã đến lúc kết hợp chúng và chỉ ra cách xác định các cổng mạng mở. Thật ngạc nhiên khi thấy các máy tính có thể trò chuyện trên mạng như thế nào! Trước tiên, bạn nên đọc tài liệu của Microsoft “Tổng quan về dịch vụ và các yêu cầu về cổng mạng cho hệ thống Windows Server” ( http://support.microsoft.com/default.aspx?scid=kb;en-us;832017), liệt kê các giao thức (TCP và UDP) và số cổng được sử dụng bởi các ứng dụng và hầu hết các dịch vụ Windows Server cốt lõi. Tài liệu mô tả các dịch vụ này và các cổng mạng liên quan mà chúng sử dụng. Chúng tôi khuyên bạn nên tải xuống và in hướng dẫn tham khảo hữu ích này dành cho quản trị viên mạng Windows.

Thiết lập máy phân tích mạng

Trước đây đã lưu ý rằng một cách để xác định các cổng được ứng dụng sử dụng là giám sát lưu lượng giữa các máy tính bằng máy phân tích mạng. Để xem tất cả lưu lượng truy cập, bạn cần kết nối bộ phân tích mạng với bộ giám sát trung tâm hoặc cổng trên bộ chuyển mạch. Mỗi cổng trên một hub nhìn thấy tất cả lưu lượng truy cập từ mọi máy tính được kết nối với hub đó, nhưng các hub là một công nghệ lỗi thời và hầu hết các công ty đang thay thế chúng bằng các switch, mang lại hiệu suất tốt nhưng lại cồng kềnh để phân tích: mỗi cổng switch chỉ chấp nhận lưu lượng truy cập dành cho một máy tính được kết nối với hub tới cổng này. Để phân tích toàn bộ mạng, bạn cần giám sát lưu lượng được gửi đến từng cổng switch.

Điều này yêu cầu thiết lập một trình giám sát cổng (các nhà cung cấp khác nhau gọi nó là cổng span hoặc cổng được nhân đôi) trên switch. Việc cài đặt trình giám sát cổng trên bộ chuyển mạch Cisco Catalyst từ Hệ thống Cisco thật dễ dàng. Bạn cần đăng ký trên switch và kích hoạt chế độ Enable, sau đó đi đến cấu hình chế độ đầu cuối và nhập số giao diện của cổng switch mà tất cả lưu lượng được giám sát sẽ được gửi đến. Cuối cùng, bạn phải chỉ định tất cả các cổng được giám sát. Ví dụ: các lệnh sau giám sát ba cổng Fast Ethernet và chuyển tiếp bản sao lưu lượng đến cổng 24.

Giao diện Giám sát cổng FastEthernet0/24 Giám sát cổng FastEthernet0/1 Giám sát cổng FastEthernet0/2 Đầu cuối FastEthernet0/3

Trong ví dụ này, bộ phân tích mạng được kết nối với cổng 24 sẽ xem tất cả lưu lượng đi và đến từ các máy tính được kết nối với ba cổng đầu tiên của bộ chuyển mạch. Để xem cấu hình đã tạo, nhập lệnh

Ghi bộ nhớ

Phân tích ban đầu

Hãy xem một ví dụ về phân tích dữ liệu truyền qua mạng. Nếu bạn đang sử dụng máy tính Linux để phân tích mạng, bạn có thể hiểu toàn diện về loại và tần suất của các gói trên mạng bằng chương trình như IPTraf ở chế độ Thống kê. Chi tiết lưu lượng truy cập có thể được tìm thấy bằng chương trình Tcpdump.

Giao thức TCP/IP là nền tảng của Internet, qua đó các máy tính gửi và nhận thông tin từ mọi nơi trên thế giới, bất kể vị trí địa lý. Truy cập máy tính TCP/IP ở một quốc gia khác cũng dễ dàng như truy cập máy tính ở phòng bên cạnh. Quy trình truy cập giống hệt nhau trong cả hai trường hợp, mặc dù việc kết nối với máy ở quốc gia khác có thể mất thêm vài mili giây. Kết quả là công dân của bất kỳ quốc gia nào cũng có thể dễ dàng mua sắm trên Amazon.com; tuy nhiên, do sự gần gũi về mặt logic, nhiệm vụ bảo mật thông tin trở nên phức tạp hơn: bất kỳ chủ sở hữu máy tính nào được kết nối Internet ở bất kỳ đâu trên thế giới đều có thể cố gắng thiết lập kết nối trái phép với bất kỳ máy nào khác.

Các chuyên gia CNTT có trách nhiệm cài đặt tường lửa và hệ thống để phát hiện lưu lượng truy cập đáng ngờ. Phân tích gói lấy thông tin về địa chỉ IP nguồn và đích cũng như các cổng mạng liên quan. Giá trị của cổng mạng không thua kém địa chỉ IP; đây là những tiêu chí quan trọng nhất để phân biệt lưu lượng truy cập hữu ích với các tin nhắn giả mạo và có hại vào và ra khỏi mạng. Hầu hết lưu lượng truy cập mạng Internet bao gồm các gói TCP và UDP, chứa thông tin về các cổng mạng mà máy tính sử dụng để định tuyến lưu lượng truy cập từ ứng dụng này sang ứng dụng khác. Điều kiện tiên quyết đối với tường lửa và bảo mật mạng là quản trị viên phải hiểu rõ về cách máy tính và thiết bị mạng sử dụng các cổng này.

Nghiên cứu cảng

Kiến thức về các nguyên tắc cơ bản hoạt động của cổng mạng sẽ hữu ích cho bất kỳ quản trị viên hệ thống nào. Với sự hiểu biết cơ bản về cổng TCP và UDP, quản trị viên có thể chẩn đoán độc lập một ứng dụng mạng bị lỗi hoặc bảo vệ máy tính truy cập Internet mà không cần gọi cho kỹ sư mạng hoặc nhà tư vấn tường lửa.

Phần đầu tiên của bài viết này (gồm hai phần) mô tả các khái niệm cơ bản cần thiết để thảo luận về cổng mạng. Vị trí của các cổng mạng trong mô hình mạng chung và vai trò của các cổng mạng và tường lửa NAT (Dịch địa chỉ mạng) trong các kết nối của máy tính công ty với Internet sẽ được hiển thị. Cuối cùng, các điểm mạng sẽ được chỉ định tại đó thuận tiện cho việc xác định và lọc lưu lượng mạng trên các cổng mạng tương ứng. Phần 2 xem xét một số cổng được sử dụng bởi các ứng dụng và hệ điều hành phổ biến và giới thiệu một số công cụ tìm cổng mạng mở.

Tổng quan ngắn gọn về các giao thức mạng

TCP/IP là một tập hợp các giao thức mạng thông qua đó các máy tính giao tiếp với nhau. Bộ TCP/IP không gì khác hơn là những đoạn mã phần mềm được cài đặt trong hệ điều hành cung cấp quyền truy cập vào các giao thức này. TCP/IP là một tiêu chuẩn, vì vậy các ứng dụng TCP/IP trên máy Windows phải giao tiếp thành công với cùng một ứng dụng trên máy UNIX. Trong những ngày đầu của mạng, vào năm 1983, các kỹ sư đã phát triển mô hình kết nối OSI bảy lớp để mô tả các quy trình mạng máy tính, từ cáp đến ứng dụng. Mô hình OSI bao gồm các lớp vật lý, liên kết dữ liệu, mạng, truyền tải, phiên và ứng dụng. Các quản trị viên thường xuyên làm việc với Internet và TCP/IP chủ yếu xử lý các lớp mạng, truyền tải và ứng dụng, nhưng để chẩn đoán thành công cần phải biết các lớp khác. Mặc dù mô hình OSI đã cũ nhưng nó vẫn được nhiều chuyên gia sử dụng. Ví dụ: khi một kỹ sư mạng nói về các bộ chuyển mạch Lớp 1 hoặc Lớp 2 hoặc nhà cung cấp tường lửa nói về điều khiển Lớp 7, họ đang nói về các lớp được xác định trong mô hình OSI.

Bài viết này nói về các cổng mạng nằm ở lớp 4 - vận chuyển. Trong bộ TCP/IP, các cổng này được sử dụng bởi các giao thức TCP và UDP. Nhưng trước khi đi vào chi tiết về một lớp, điều quan trọng là phải xem nhanh bảy lớp OSI và vai trò của chúng trong các mạng TCP/IP hiện đại.

Lớp 1 và 2: Cáp vật lý và địa chỉ MAC

Lớp 1, vật lý, đại diện cho môi trường thực tế mà tín hiệu truyền qua, chẳng hạn như cáp đồng, cáp quang hoặc tín hiệu vô tuyến (trong trường hợp Wi-Fi). Lớp 2, liên kết dữ liệu, mô tả định dạng dữ liệu để truyền trong môi trường vật lý. Ở Lớp 2, các gói được tổ chức thành các khung và các chức năng xử lý lỗi và kiểm soát luồng cơ bản có thể được thực hiện. Tiêu chuẩn IEEE 802.3, hay còn gọi là Ethernet, là tiêu chuẩn Lớp 2 phổ biến nhất cho các mạng cục bộ hiện đại. Bộ chuyển mạch mạng thông thường là thiết bị Lớp 2, qua đó nhiều máy tính kết nối vật lý và trao đổi dữ liệu với nhau. Đôi khi, hai máy tính không thể kết nối với nhau mặc dù địa chỉ IP có vẻ chính xác; sự cố có thể do lỗi trong bộ nhớ đệm Giao thức phân giải địa chỉ (ARP), cho thấy có sự cố ở Lớp 2. Ngoài ra, một số điểm truy cập không dây (Access) Point, AP) cung cấp tính năng lọc địa chỉ MAC, chỉ cho phép các bộ điều hợp mạng có địa chỉ MAC cụ thể kết nối với AP không dây.

Lớp 3 và 4: Địa chỉ IP và cổng mạng

Lớp 3, mạng, hỗ trợ định tuyến. Trong TCP/IP, việc định tuyến được thực hiện trong IP. Địa chỉ IP của gói thuộc Lớp 3. Bộ định tuyến mạng là thiết bị Lớp 3 phân tích địa chỉ IP gói và chuyển tiếp gói đến bộ định tuyến khác hoặc phân phối gói đến máy tính cục bộ. Nếu phát hiện một gói đáng ngờ trên mạng, bước đầu tiên là kiểm tra địa chỉ IP của gói để xác định nguồn gốc của gói.

Cùng với lớp mạng, lớp 4 (vận chuyển) là điểm khởi đầu tốt để chẩn đoán các sự cố mạng. Trên Internet, Lớp 4 chứa các giao thức TCP và UDP cũng như thông tin về cổng mạng liên kết gói với một ứng dụng cụ thể. Ngăn xếp mạng của máy tính sử dụng liên kết cổng mạng TCP hoặc UDP với một ứng dụng để hướng lưu lượng mạng đến ứng dụng đó. Ví dụ: cổng TCP 80 được liên kết với ứng dụng máy chủ Web. Việc ánh xạ các cổng tới các ứng dụng này được gọi là một dịch vụ.

TCP và UDP là khác nhau. Về cơ bản, TCP cung cấp kết nối đáng tin cậy để liên lạc giữa hai ứng dụng. Trước khi bắt đầu giao tiếp, hai ứng dụng phải thiết lập kết nối bằng cách hoàn tất quy trình bắt tay TCP ba bước. UDP là một cách tiếp cận dễ quên hơn. Độ tin cậy của kết nối đối với các ứng dụng TCP được đảm bảo bởi giao thức, nhưng ứng dụng UDP phải kiểm tra độc lập độ tin cậy của kết nối.

Cổng mạng là một số từ 1 đến 65535 được chỉ định và biết cho cả hai ứng dụng mà giao tiếp đang được thiết lập. Ví dụ: một máy khách thường gửi yêu cầu không được mã hóa đến máy chủ tại địa chỉ đích trên cổng TCP 80. Thông thường, máy tính sẽ gửi yêu cầu DNS đến máy chủ DNS tại địa chỉ đích trên cổng UDP 53. Máy khách và máy chủ có một nguồn và địa chỉ IP đích cũng như cổng mạng nguồn và đích, có thể khác nhau. Trong lịch sử, tất cả các số cổng dưới 1024 được gọi là "số cổng đã biết" và được đăng ký với Cơ quan cấp số hiệu Internet (IANA). Trên một số hệ điều hành, chỉ các tiến trình hệ thống mới có thể sử dụng các cổng trong phạm vi này. Ngoài ra, các tổ chức có thể đăng ký cổng 1024 đến 49151 với IANA để liên kết cổng với ứng dụng của họ. Việc đăng ký này cung cấp một cấu trúc giúp tránh xung đột giữa các ứng dụng cố gắng sử dụng cùng một số cổng. Tuy nhiên, nói chung, không có gì ngăn cản ứng dụng yêu cầu một cổng cụ thể miễn là nó không bị chiếm bởi một chương trình đang hoạt động khác.

Về mặt lịch sử, máy chủ có thể lắng nghe trên các cổng được đánh số thấp và máy khách có thể bắt đầu kết nối trên cổng được đánh số cao (trên 1024). Ví dụ: máy khách Web có thể mở kết nối đến máy chủ Web trên cổng đích 80, nhưng liên kết một cổng nguồn được chọn ngẫu nhiên, chẳng hạn như cổng TCP 1025. Khi phản hồi máy khách, máy chủ Web sẽ gửi gói tin tới máy khách bằng nguồn cổng 80 và cổng đích 1025. Sự kết hợp giữa địa chỉ IP và cổng được gọi là ổ cắm và phải là duy nhất trên máy tính. Vì lý do này, khi thiết lập một máy chủ Web có hai trang Web riêng biệt trên cùng một máy tính, bạn phải sử dụng nhiều địa chỉ IP, chẳng hạn như address1:80 và address2:80 hoặc định cấu hình máy chủ Web để nghe trên nhiều cổng mạng, chẳng hạn như như địa chỉ 1:80 và địa chỉ 1:81. Một số máy chủ Web cho phép nhiều trang Web chạy trên một cổng bằng cách yêu cầu tiêu đề máy chủ, nhưng chức năng này thực sự được thực hiện bởi ứng dụng máy chủ Web ở lớp 7 cao hơn.

Khi khả năng kết nối mạng trở nên khả dụng trong các hệ điều hành và ứng dụng, các lập trình viên bắt đầu sử dụng số cổng cao hơn 1024 mà không đăng ký tất cả các ứng dụng với IANA. Bằng cách tìm kiếm trên Internet bất kỳ cổng mạng nào, bạn thường có thể nhanh chóng tìm thấy thông tin về các ứng dụng sử dụng cổng đó. Hoặc bạn có thể tìm kiếm Cổng nổi tiếng và tìm nhiều trang web liệt kê các cổng phổ biến nhất.

Khi chặn các ứng dụng mạng trên máy tính hoặc khắc phục lỗi tường lửa, phần lớn công việc đến từ việc phân loại và lọc địa chỉ IP Lớp 3 cũng như các giao thức và cổng mạng Lớp 4. Để nhanh chóng phân biệt giữa lưu lượng truy cập hợp pháp và đáng ngờ, bạn nên học cách nhận biết 20 lưu lượng truy cập nhiều nhất. được sử dụng rộng rãi trong các cổng TCP và UDP của doanh nghiệp.

Học cách nhận biết và làm quen với các cổng mạng không chỉ dừng lại ở việc gán các quy tắc tường lửa. Ví dụ: một số bản vá bảo mật của Microsoft mô tả cách đóng cổng NetBIOS. Biện pháp này giúp hạn chế sự lây lan của sâu xâm nhập qua các lỗ hổng trong hệ điều hành. Biết cách thức và vị trí đóng các cổng này có thể giúp giảm rủi ro bảo mật mạng trong khi chuẩn bị triển khai bản vá quan trọng.

Và thẳng tới cấp 7

Ngày nay, hiếm khi nghe về Lớp 5 (phiên) và Lớp 6 (bản trình bày), nhưng Lớp 7 (ứng dụng) là một chủ đề nóng giữa các nhà cung cấp tường lửa. Xu hướng mới nhất trong tường lửa mạng là kiểm tra Lớp 7, mô tả các kỹ thuật được sử dụng để phân tích cách ứng dụng tương tác với các giao thức mạng. Bằng cách phân tích tải trọng của gói mạng, tường lửa có thể xác định xem lưu lượng truy cập đi qua nó có hợp pháp hay không. Ví dụ: một yêu cầu Web chứa câu lệnh GET bên trong gói Lớp 4 (cổng TCP 80). Nếu tường lửa của bạn có chức năng Lớp 7, bạn có thể xác minh rằng câu lệnh GET là chính xác. Một ví dụ khác là nhiều chương trình chia sẻ tệp ngang hàng (P2P) có thể chiếm quyền điều khiển cổng 80. Kết quả là người ngoài có thể định cấu hình chương trình để sử dụng cổng mà họ chọn - rất có thể là cổng nên được để mở trong một tường lửa nhất định. Nếu nhân viên của công ty cần truy cập Internet, cổng 80 phải được mở, nhưng để phân biệt lưu lượng Web hợp pháp với lưu lượng P2P do ai đó hướng tới cổng 80, tường lửa phải cung cấp khả năng kiểm soát lớp 7.

Vai trò của tường lửa

Sau khi mô tả các lớp mạng, chúng ta có thể chuyển sang mô tả cơ chế giao tiếp giữa các ứng dụng mạng thông qua tường lửa, đặc biệt chú ý đến các cổng mạng được sử dụng. Trong ví dụ sau, trình duyệt máy khách giao tiếp với máy chủ Web ở phía bên kia tường lửa, giống như nhân viên công ty giao tiếp với máy chủ Web trên Internet.

Hầu hết các tường lửa Internet hoạt động ở lớp 3 và 4 để kiểm tra và sau đó cho phép hoặc chặn lưu lượng mạng đến và đi. Nói chung, quản trị viên viết danh sách kiểm soát truy cập (ACL) xác định địa chỉ IP và cổng mạng của lưu lượng truy cập bị chặn hoặc cho phép. Ví dụ: để truy cập Web, bạn cần khởi chạy trình duyệt và trỏ nó vào trang Web. Máy tính bắt đầu kết nối đi bằng cách gửi một chuỗi các gói IP bao gồm thông tin tiêu đề và tải trọng. Tiêu đề chứa thông tin tuyến đường và các thuộc tính gói khác. Các quy tắc tường lửa thường được viết có lưu ý đến thông tin định tuyến và thường chứa địa chỉ IP nguồn và đích (lớp 3) và giao thức gói (lớp 4). Khi duyệt Web, địa chỉ IP đích thuộc về máy chủ Web, giao thức và cổng đích (theo mặc định) là TCP 80. Địa chỉ IP nguồn là địa chỉ của máy tính mà người dùng truy cập Web và nguồn cổng thường là số được gán động, lớn hơn 1024. Thông tin hữu ích không phụ thuộc vào tiêu đề và được tạo bởi ứng dụng người dùng; trong trường hợp này, đó là yêu cầu máy chủ Web cung cấp một trang Web.

Tường lửa phân tích lưu lượng đi và cho phép nó theo các quy tắc tường lửa. Nhiều công ty cho phép tất cả lưu lượng truy cập đi từ mạng của họ. Cách tiếp cận này đơn giản hóa việc cấu hình và triển khai nhưng làm giảm tính bảo mật do thiếu quyền kiểm soát dữ liệu rời khỏi mạng. Ví dụ: một con ngựa Trojan có thể lây nhiễm một máy tính trên mạng doanh nghiệp và gửi thông tin từ máy tính đó đến một máy tính khác trên Internet. Sẽ rất hợp lý khi tạo danh sách kiểm soát truy cập để chặn những thông tin gửi đi như vậy.

Ngược lại với cách tiếp cận gửi đi của nhiều tường lửa, hầu hết đều được cấu hình để chặn lưu lượng truy cập đến. Thông thường, tường lửa chỉ cho phép lưu lượng truy cập đến trong hai trường hợp. Đầu tiên là lưu lượng truy cập đến để đáp ứng yêu cầu gửi đi của người dùng trước đó. Ví dụ: nếu bạn trỏ trình duyệt của mình tới địa chỉ của một trang Web, tường lửa sẽ cho phép mã HTML và các thành phần khác của trang Web xâm nhập vào mạng. Trường hợp thứ hai là lưu trữ một dịch vụ nội bộ trên Internet, chẳng hạn như máy chủ thư, trang Web hoặc FTP. Lưu trữ một dịch vụ như vậy thường được gọi là dịch cổng hoặc xuất bản máy chủ. Việc triển khai dịch cổng khác nhau giữa các nhà cung cấp tường lửa, nhưng nguyên tắc cơ bản là giống nhau. Quản trị viên xác định một dịch vụ, chẳng hạn như cổng TCP 80 cho máy chủ Web và máy chủ phụ trợ để lưu trữ dịch vụ. Nếu các gói đi vào tường lửa thông qua giao diện bên ngoài tương ứng với dịch vụ này thì cơ chế dịch cổng sẽ chuyển tiếp chúng đến một máy tính cụ thể trên mạng ẩn sau tường lửa. Dịch cổng được sử dụng cùng với dịch vụ NAT được mô tả bên dưới.

NAT cơ bản

Với NAT, nhiều máy tính trong một công ty có thể chia sẻ một không gian địa chỉ IP công cộng nhỏ. Máy chủ DHCP của công ty có thể phân bổ địa chỉ IP từ một trong các khối địa chỉ IP riêng tư, không thể định tuyến trên Internet được xác định trong Yêu cầu Nhận xét (RFC) số 1918. Nhiều công ty cũng có thể chia sẻ cùng một không gian địa chỉ IP riêng tư. Ví dụ về mạng con IP riêng là 10.0.0.0/8, 172.16.0.0/12 và 192.168.0.0/16. Bộ định tuyến Internet chặn mọi gói được chuyển đến một trong các địa chỉ riêng. NAT là một tính năng tường lửa cho phép các công ty sử dụng địa chỉ IP riêng để liên lạc với các máy tính khác trên Internet. Tường lửa biết cách chuyển lưu lượng truy cập đến và đi thành địa chỉ IP nội bộ riêng tư để mọi máy tính đều có thể truy cập Internet.