1. Giới thiệu PVLAN
Trước khi tìm hiểu PVLAN, ta hãy xem lại khái niệm VLAN. Như đã biết mỗi VLAN là một miền broadcast (broadcast domain). Các VLAN không thể giao tiếp với nhau được, mà cần phải có một thiết bị ở layer 3 để chuyển gói giữa các broadcast domain.
PVLAN sẽ chia nhỏ domain này thành nhiều subdomain riêng biệt, khi đó giống như VLAN trong VLAN. Do các subdomain cũng là các domain riêng biệt nên cũng cần một thiết bị layer 3 để chuyển gói như router, router cũng có thể ngăn chặn hoặc cho phép giao tiếp giữa các sub-VLAN dùng access-list.
VLAN và PVLAN có sự khác biệt sau:
– Mỗi VLAN sẽ có subnet khác nhau, nên các host thuộc các VLAN khác nhau sẽ có subnet khác nhau.
– Còn khi ta chia nhỏ VLAN thành các PVLAN thì các host thuộc các PVLAN khác nhau vẫn thuộc cùng một subnet.
2. Mục đích PVLAN
Mục đích chính của việc phát triển và sử dụng PVLAN là nâng cao tính bảo mật, an toàn cho hệ thống mạng. PVLAN cho phép tạo thêm một hàng rào bảo vệ các thiết bị bên trong một VLAN bằng cách qui định các luồng dữ liệu permit hay deny giữa các port trong 1 VLAN với nhau.
Private VLAN thường được dùng trong các ISP nhằm cung cấp cùng một subnet cho nhiều khách hàng nhưng vẫn bảo đảm độ độc lập riêng của mỗi khách hàng.
3. Thành phần PVLAN
Trong Private VLAN có các loại port sau:
+ Promiscuous (P): thường kết nối tới router, là kiểu port cho phép gửi và nhận frame với bất kỳ port nào khác (gửi/nhận với P,I,C)
+ Isolated (I): thường được kết nối đến host, là kiểu port chỉ cho phép giao tiếp với port P (gửi/nhận với P)
+ Community (C): là kiểu port có thể giao tiếp với các port C cùng nhóm khác (community), và tất nhiên có thể giao tiếp với port I (gửi/nhận với C,I)
Có các loại PVLAN sau: primary VLAN và secondary VLAN (isolated VLAN và community VLAN).
+ Primary VLAN: đó là VLAN ban đầu (truờng hợp này là VLAN 100), VLAN này sẽ chuyển các frame downstream từ port P tới tất cả các kiểu port khác (port I và C).
+ Isolated VLAN: chuyển các frame từ port I tới port P. Do các port I không trao đổi frame với nhau, nên ta có thể chỉ dùng 1 isolated VLAN để kết nối tất cả các port I tới port P.
+ Community VLAN: chuyển đổi các frame giữa các port C thuộc cùng nhóm (community) và chuyển đổi các frame upstream tới port P của primary VLAN.
Như ví dụ trong hình trên thì trong 1 VLAN ta có thể tách ra 2 sub-vlan: Isolated VLAN và Community VLAN. Hai VLAN này không trao đổi dữ liệu được với nhau mà chỉ có thể liên lạc với gateway để đi ra/vào mạng khác. (Gateway được nối vào port Promiscuous để có thể liên lạc với tất cả các port trong VLAN).
Ví dụ máy Sever trong Isolated vlan bị nhiễm virus, trong trường hợp này Virus không thể phát tán sang các Server khác trong VLAN chính. Nếu không dùng PVLAN thì nguy cơ tất cả các Server trong VLAN này sẽ bị lây nhiễm là rất cao.
Chú ý là trong PVLAN Isolated port có mức độ bảo mật cao nhất, ngay cả các port Isolated cũng không thể liên lạc được với nhau. Vì vậy chỉ có duy nhất 1 port trong Isolated VLAN, tuy nhiên có thể có nhiều Isolated VLAN trong 1 VLAN thường.
PVLAN có thể bị hack bằng kỹ thuật PVLAN proxy attack.
4. Cấu hình PVLAN
Ta sẽ lấy VLAN 100 và chia nó thành 2 PVLAN: sub-VLAN 101 và 102. Lấy một VLAN hợp lệ và xem nó là chính (primary) như VLAN 100 trong ví dụ này. Tiếp đó ta chia các port thuộc VLAN này theo các kiểu như: promiscous, isolated, community.
Ở đây ta có các PVLAN sau : primary VLAN 100, isolated VLAN 101 và community VLAN 102.
Bước 1: tạo các VLAN primary và secondary và nhóm chúng vào trong PVLAN domain
!! Creating VLANs: Primary, subject to subdivision
#vlan 100
#private-vlan primary
!! Isolated VLAN: Connects all stub hosts to router
#vlan 101
#private-vlan isolated
!! Community VLAN: allows a subVLAN within a Primary VLAN
#vlan 102
#private-vlan community
!! Associating
#vlan 100
#private-vlan assoc 101,102
Bước 2: cấu hình các port host và gắn chúng đến các PVLAN khác nhau. Chú ý rằng một port host thuộc các VLAN khác nhau cùng một thời điểm: downstream primary và upstream secondary.
!! Isolated port (uses isoalated VLAN to talk to P-port)
#interface FastEthernet x/y
#switchport mode private-vlan host
#switchport private-vlan host-association 100 101
!! Community ports: use community VLAN
#interface range FastEthernet x/y – z
#switchport mode private-vlan host
#switchport private-vlan host-association 100 102
Bước 3: tạo một port P và cấu hình ánh xạ downstream. Ở đây ta thêm các secondary VLAN để biết traffic của port nào được nhận bởi port P này.
!! Router port
#interface FastEthernet x/y
#switchport mode private-vlan promisc
#switchport private-vlan mapping 100 add 101,102
Trước khi tìm hiểu PVLAN, ta hãy xem lại khái niệm VLAN. Như đã biết mỗi VLAN là một miền broadcast (broadcast domain). Các VLAN không thể giao tiếp với nhau được, mà cần phải có một thiết bị ở layer 3 để chuyển gói giữa các broadcast domain.
PVLAN sẽ chia nhỏ domain này thành nhiều subdomain riêng biệt, khi đó giống như VLAN trong VLAN. Do các subdomain cũng là các domain riêng biệt nên cũng cần một thiết bị layer 3 để chuyển gói như router, router cũng có thể ngăn chặn hoặc cho phép giao tiếp giữa các sub-VLAN dùng access-list.
VLAN và PVLAN có sự khác biệt sau:
– Mỗi VLAN sẽ có subnet khác nhau, nên các host thuộc các VLAN khác nhau sẽ có subnet khác nhau.
– Còn khi ta chia nhỏ VLAN thành các PVLAN thì các host thuộc các PVLAN khác nhau vẫn thuộc cùng một subnet.
2. Mục đích PVLAN
Mục đích chính của việc phát triển và sử dụng PVLAN là nâng cao tính bảo mật, an toàn cho hệ thống mạng. PVLAN cho phép tạo thêm một hàng rào bảo vệ các thiết bị bên trong một VLAN bằng cách qui định các luồng dữ liệu permit hay deny giữa các port trong 1 VLAN với nhau.
Private VLAN thường được dùng trong các ISP nhằm cung cấp cùng một subnet cho nhiều khách hàng nhưng vẫn bảo đảm độ độc lập riêng của mỗi khách hàng.
3. Thành phần PVLAN
Trong Private VLAN có các loại port sau:
+ Promiscuous (P): thường kết nối tới router, là kiểu port cho phép gửi và nhận frame với bất kỳ port nào khác (gửi/nhận với P,I,C)
+ Isolated (I): thường được kết nối đến host, là kiểu port chỉ cho phép giao tiếp với port P (gửi/nhận với P)
+ Community (C): là kiểu port có thể giao tiếp với các port C cùng nhóm khác (community), và tất nhiên có thể giao tiếp với port I (gửi/nhận với C,I)
Có các loại PVLAN sau: primary VLAN và secondary VLAN (isolated VLAN và community VLAN).
+ Primary VLAN: đó là VLAN ban đầu (truờng hợp này là VLAN 100), VLAN này sẽ chuyển các frame downstream từ port P tới tất cả các kiểu port khác (port I và C).
+ Isolated VLAN: chuyển các frame từ port I tới port P. Do các port I không trao đổi frame với nhau, nên ta có thể chỉ dùng 1 isolated VLAN để kết nối tất cả các port I tới port P.
+ Community VLAN: chuyển đổi các frame giữa các port C thuộc cùng nhóm (community) và chuyển đổi các frame upstream tới port P của primary VLAN.
Như ví dụ trong hình trên thì trong 1 VLAN ta có thể tách ra 2 sub-vlan: Isolated VLAN và Community VLAN. Hai VLAN này không trao đổi dữ liệu được với nhau mà chỉ có thể liên lạc với gateway để đi ra/vào mạng khác. (Gateway được nối vào port Promiscuous để có thể liên lạc với tất cả các port trong VLAN).
Ví dụ máy Sever trong Isolated vlan bị nhiễm virus, trong trường hợp này Virus không thể phát tán sang các Server khác trong VLAN chính. Nếu không dùng PVLAN thì nguy cơ tất cả các Server trong VLAN này sẽ bị lây nhiễm là rất cao.
Chú ý là trong PVLAN Isolated port có mức độ bảo mật cao nhất, ngay cả các port Isolated cũng không thể liên lạc được với nhau. Vì vậy chỉ có duy nhất 1 port trong Isolated VLAN, tuy nhiên có thể có nhiều Isolated VLAN trong 1 VLAN thường.
PVLAN có thể bị hack bằng kỹ thuật PVLAN proxy attack.
4. Cấu hình PVLAN
Ta sẽ lấy VLAN 100 và chia nó thành 2 PVLAN: sub-VLAN 101 và 102. Lấy một VLAN hợp lệ và xem nó là chính (primary) như VLAN 100 trong ví dụ này. Tiếp đó ta chia các port thuộc VLAN này theo các kiểu như: promiscous, isolated, community.
Ở đây ta có các PVLAN sau : primary VLAN 100, isolated VLAN 101 và community VLAN 102.
Bước 1: tạo các VLAN primary và secondary và nhóm chúng vào trong PVLAN domain
!! Creating VLANs: Primary, subject to subdivision
#vlan 100
#private-vlan primary
!! Isolated VLAN: Connects all stub hosts to router
#vlan 101
#private-vlan isolated
!! Community VLAN: allows a subVLAN within a Primary VLAN
#vlan 102
#private-vlan community
!! Associating
#vlan 100
#private-vlan assoc 101,102
Bước 2: cấu hình các port host và gắn chúng đến các PVLAN khác nhau. Chú ý rằng một port host thuộc các VLAN khác nhau cùng một thời điểm: downstream primary và upstream secondary.
!! Isolated port (uses isoalated VLAN to talk to P-port)
#interface FastEthernet x/y
#switchport mode private-vlan host
#switchport private-vlan host-association 100 101
!! Community ports: use community VLAN
#interface range FastEthernet x/y – z
#switchport mode private-vlan host
#switchport private-vlan host-association 100 102
Bước 3: tạo một port P và cấu hình ánh xạ downstream. Ở đây ta thêm các secondary VLAN để biết traffic của port nào được nhận bởi port P này.
!! Router port
#interface FastEthernet x/y
#switchport mode private-vlan promisc
#switchport private-vlan mapping 100 add 101,102
Đào Lê Hoàng – VnPro