ASA: cổng VPN và PAT tĩnh cho DMZ trên một IP công cộng
Một địa chỉ công cộng, hai dịch vụ. Kiểm kê địa chỉ, giao vận và cổng cho trình lắng nghe VPN và PAT của DMZ trước khi bên này chiếm mục của bên kia.
Hai dịch vụ, một địa chỉ công cộng và một tên DNS khiến ta tưởng như nó giữ riêng một cổng. Không phải vậy. Trước khi công bố một máy chủ DMZ bên cạnh mục VPN trên ASA, hãy ghi ra các bộ tuple của mục và kiểm tra theo thứ tự; trường đầu tiên khớp với một dịch vụ đang có chính là chỗ kế hoạch dừng lại. Mọi điều dưới đây giả định VPN kết thúc ngay trên thiết bị, không phải trên máy chủ bên trong.
Viết năm trường trước khi viết lệnh
Với mỗi mục công cộng, ghi lại họ địa chỉ, địa chỉ công cộng, giao vận, cổng công cộng và chủ sở hữu. Chủ sở hữu là dịch vụ cục bộ trên ASA hoặc máy chủ bên trong đã được dịch. Hai mục có thể chia sẻ một địa chỉ mà vẫn là hai bộ tuple khác nhau, và hai mục có thể trông khác nhau trên sơ đồ nhưng lại đụng nhau trên thiết bị.
Giữ một cột thứ hai cho cổng thật, cổng mà máy chủ bên trong thực sự lắng nghe. Cổng công cộng và cổng thật là những lựa chọn độc lập, và ngay khi gộp chúng vào một cột, bạn mất khả năng đọc lại bản dịch của chính mình về sau.
| Public entry | Owner | Real side |
|---|---|---|
| TCP 443 on the outside address | ASA VPN listener | Appliance-local, no translation |
| TCP 8443 on the outside address | Static PAT | DMZ server TCP 443 |
| UDP 443 on the outside address | Check the effective listeners | Possibly the VPN data path |
Đọc đúng vị trí thật và vị trí được ánh xạ
Hãy bắt đầu từ bộ tuple bạn đã có, không phải từ máy chủ bạn muốn thêm. Một cách chia minh họa giữ mục VPN đã được phê duyệt trên TCP 443 công cộng và công bố máy chủ DMZ HTTPS trên TCP 8443 công cộng trong khi máy chủ đó vẫn lắng nghe trên 443:
Public TCP 443 -> ASA VPN listener
Public TCP 8443 -> DMZ server TCP 443
Trong lệnh đã triển khai, dịch vụ thật và dịch vụ được ánh xạ nằm ở những vị trí cố định, và đảo chúng lại mô tả một ánh xạ khác chứ không phải một ánh xạ hỏng. Đây là cách phổ biến nhất khiến một bản dịch đang chạy tốt biến thành câu đố: cấu hình vẫn hợp lệ, nó chỉ trỏ sang chỗ khác.
Hướng dẫn NAT ASA 9.16 của Cisco mô tả PAT tĩnh, cách dùng địa chỉ giao diện và ý nghĩa của cổng thật so với cổng được ánh xạ. Hãy đọc phần dành cho bản phát hành bạn thực sự chạy; một lệnh nhớ từ nền tảng cũ không phải là cấu hình hiện tại đầy đủ.
Tính giao vận như một phần của việc giữ chỗ
TCP 443 và UDP 443 là hai bộ tuple khác nhau, và sự khác biệt đó không tặng bạn UDP miễn phí. Một VPN có thể có trình lắng nghe TLS và DTLS riêng, và các dịch vụ đã cấu hình khác có thể đã giữ giao vận bạn muốn. Hãy kiểm kê các trình lắng nghe hiệu lực và chính sách truy cập thay vì cho rằng trang web là toàn bộ mục VPN.
Một tên máy chủ thứ hai phân giải về cùng địa chỉ cũng không giải quyết xung đột ở mức giao vận. DNS là ánh xạ tên sang địa chỉ, không phải nhà môi giới cổng, và công bố máy chủ qua PAT không phải thao tác giống như chuyển trình lắng nghe VPN sang cổng khác.
Nếu mục VPN thực sự phải chuyển đi, bốn thứ thay đổi cùng lúc: hồ sơ máy khách, URL công cộng, lọc ở phía trên và mọi giao vận mà triển khai dùng. Hãy làm trong một cửa sổ thay vì từng thứ một. Giữ mở một đường quản trị riêng tới thiết bị trước khi bạn chạm vào dịch vụ dùng để tới nó. Không có đường thứ hai, việc chuyển đi là thay đổi bạn không thể lùi từ bên ngoài.
Xác minh từ bên ngoài bằng kết nối mới
Chỉ cho phép ứng dụng DMZ dự định dưới chính sách truy cập hiệu lực, sau đó kiểm tra thứ tự dịch khớp, đường về của máy chủ và tên máy chủ trên chứng chỉ. PAT đổi đích mạng; nó không cấp quyền truy cập ứng dụng và không sửa một chứng chỉ ghi tên máy chủ khác.
Hãy thử cả hai dịch vụ bằng kết nối mới từ một máy chủ bên ngoài được cấp quyền: VPN vẫn phải thiết lập được, và yêu cầu DMZ phải tới đúng trình lắng nghe dự định. Một phiên đã thiết lập có thể giữ trạng thái trước đó, nên nó không chứng minh gì về ánh xạ bạn vừa đổi một phút trước.
Khép vòng bằng cách cập nhật bản kiểm kê mục với những gì bạn đã triển khai, kể cả mọi trình lắng nghe bạn phát hiện ra chứ không phải tạo ra. Người tiếp theo công bố dịch vụ trên địa chỉ đó sẽ bắt đầu từ bảng của bạn, và một hàng sai ở đó tốn kém hơn một lệnh sai ở đây.