Hướng dẫn cấu hình IPsec VPN Remote access trên firewall Sophos
Giới thiệu
Trong thời đại làm việc từ xa ngày càng phổ biến, việc đảm bảo kết nối mạng an toàn và linh hoạt là vô cùng quan trọng. VPN Remote access hay còn gọi là Client-to-site là một giải pháp hiệu quả để kết nối các thiết bị từ xa với mạng nội bộ của tổ chức, doanh nghiệp. Với tường lửa Sophos thế hệ mới, bạn có thể dễ dàng thiết lập một đường hầm VPN với người dùng từ xa, cho phép truy cập vào các tài nguyên mạng nội bộ từ bất kỳ đâu có kết nối internet mà vẫn đảm bảo tính bảo mật cao khi sử dụng. Để kết nối VPN remote access, có nhiều giao thức được sử dụng như IPsec, SSL, PPTP, L2TP,… Mỗi giao thức VPN đều có những đặc điểm hoạt động cũng như ưu và nhược điểm riêng. Bài viết này sẽ cung cấp cho bạn những hướng dẫn chi tiết để thực hiện cấu hình VPN client-to-site với IPsec trên Firewall Sophos.
IPsec là một giao thức phổ biến thường được sử dụng để thiết lập kênh truyền VPN an toàn. Giao thức này sử dụng các thuật toán mã hóa và xác thực hiện đại, tính bảo mật cao giúp bảo vệ dữ liệu trên kênh truyền VPN khỏi các nguy cơ bị tấn công và xem trộm một cách hiệu quả.
Mô hình
Trong bài hướng dẫn này, mình sẽ sử dụng mô hình kết nối phổ biến là dùng firewall làm thiết bị biên kết nối với internet từ nhà mạng, bên dưới gồm có các switch và end device.
Dải mạng LAN mình sẽ đặt là 172.16.16.0/24, VPN tunnel subnet là 10.10.100.0/24 và mình sẽ gán ip cho người dùng trong dải này. IP của cổng WAN (Port B) mình sẽ đặt là 192.168.11.44. Tuy nhiên đây là mô phỏng trong Pnetlab nên mình có thể đặt IP tùy ý, trong thưc tế các bạn cần quay PPPoE trên cổng này để nhận IP WAN từ nhà mạng. Cách quay PPPoE và cấu hình cơ bản các bạn có thể tham khảo bài viết Hướng dẫn cấu hình cơ bản firewall Sophos của CNTTShop nhé.
Về trình tự các bước cấu hình, các hãng firewall thường có logic cấu hình giống nhau. Về cơ bản, các bạn sẽ cần phải thực hiện theo các bước sau:
- Bước 1: Tạo user và group cho người dùng VPN
- Bước 2: Định nghĩa cho lớp mạng LAN và lớp mạng dùng cho đường hầm VPN để sử dụng cho policy
- Bước 3: Tạo profile cho VPN: gán dải ip cho người dùng, lựa chọn thuật toán mã hóa, phương pháp xác thưc, loại tunnel,….
- Bước 4: Tạo policy để người dùng truy cập được vào mạng LAN
- Bước 5: Tải và sử dụng phần mềm VPN cho client.
Các bước cấu hình
Tạo user & group cho người dùng VPN
Chọn menu Authentication ⇒ Group ⇒ Add
Khi tạo user, các bạn cần phải add vào một group cụ thể, mặc định trên Sophos đã có các group default, tuy nhiên các bạn nên tạo một group riêng để dễ quản lý. Các thông tin cần đặt bao gồm:
- Group name: nhập tên group
- Description: nhập mô tả cho group
- Group type: các bạn chọn normal
- Surfing quota: chọn thời gian và chu kỳ truy cập có hiệu lực. Ở đây mình sẽ chọn là Unlimited Internet Access để truy cập không bị giới hạn. Ngoài ra các bạn cũng có thế add thêm thời gian theo mục đích riêng
- Access time: Allow hoặc deny theo lịch trình thời gian được thiết lập sẵn. Mình sẽ chọn là allowed all the time
- Network traffic: lưu lượng tối đa được truy cập trong một khoảng thời gian
- Traffic shaping: Truy cập dựa trên chính sách lưu lượng, bao gồm mức độ ưu tiên và giới hạn băn thông cho upload/download
Còn lại các tùy chọn bên dưới các bạn chỉ cần để theo mặc định, chọn Save để lưu lại.
Sau khi tạo xong group, các bạn chuyển sang tab User và chọn Add.
- Username: nhập tên cho user kết nối VPN
- Description: nhập mô tả cho user
- User type: chọn User, nếu bạn muốn user này có quyền login vào firewall để quản trị thì có thể chọn type là Administrator
- Password: nhập mật khẩu cho user để kết nối VPN
- Group: chọn group các bạn vừa tạo
Nhấn Save để lưu lại
Cấu hình dịch vụ xác thực cho IPsec VPN
Tùy từng mô hình sẽ có những phương pháp xác thực người dùng khác nhau như xác thực bằng local, bằng máy chủ LADP, RADIUS, TACACS+,… Trong bài viết này mình tạo user trên firewall nên mình sẽ xác thực local nhé, firewall sẽ xác thực dựa trên username và password có trong database của mình. Vẫn trong menu Authentication, các bạn chuyển sang tab Services, kéo xuống đến mục VPN (IPsec/dial-in/L2TP/PPTP) authentication methods, sau đó tick vào ô Set authentication methods same as firewall và Local ⇒ Apply
Tạo profile cho kết nối VPN
Tạo profile thực chất là bước mà chúng ta cần cấu hình đầy đủ các thông tin cần thiết cho kênh truyền VPN để người dùng từ xa có thể kết nối tới mạng nội bộ được. Các bạn vào menu Remote access VPN ⇒ IPsec và tick chọn enable dịch vụ IPsec VPN.
Trong mục General setting, các bạn cần điền các thông tin sau:
- Interface: chọn cổng WAN
- IPsec profie: tại đây các bạn sẽ lựa chọn các thuật toán mã hóa và xác thực. Trên firewall Sophos cũng đã có sẵn một số profile mặc định. Mình sẽ chọn DefaultRemoteAccess với thuật toán mặc định được sử dụng là AES256 – SHA2. Các bạn cũng có thể xem thông tin về profile này và tạo mới một profile trong menu Profiles ⇒ IPsec profiles
- Authentication type: chọn phương pháp xác thực. Firewall Sophos cung cấp 2 phương thức xác thực cho IPsec là Pre-shared key và chứng chỉ số (Digital Certificate). Với xác thực bằng chứng chỉ số, các bạn cần tạo một certificate trước. Mình sẽ hướng dẫn chi tiết về phương pháp này trong những bài viết tiếp theo. Ở đây mình sẽ sử dụng Pre-shared key.
- Tiếp theo dòng Preshared key bên dưới các bạn nhập key vào. Key sẽ là một chuỗi ký tự bao gồm chữ, số và ký tự đặc biệt.
- Local ID: Các bạn chọn IP address với IP của cổng WAN
- Allowed users and groups: Chọn group user đã tạo ở bước trên.
Tiếp theo là Client information:
- Name: đặt tên cho kết nối
- Assign IP from: các bạn chọn dải IP sẽ gán cho user. Ở đây mình sẽ chọn dải IP nằm trong subnet 10.10.100.0/24 đã quy hoạch từ trước. User khi kết nối VPN sẽ hoạt động dưới IP này.
- DNS server: cấp IP của DNS server cho user để phân giải tên miền
- Idle time: các bạn có thể enable lên và chọn khoảng thời gian tự động ngắt kết nối VPN khi không có traffic đi qua
Cuối cùng là Advanced setting:
- Use as default gateway: Ở đây nếu các bạn muốn tất cả traffic truy cập tài nguyên nội bộ và truy cập internet đều đi qua Sophos (Full-tunnel) thì enable mục này lên, còn mặc định disable, traffic sẽ đi theo kiểu Split-tunnel, tức là dữ liệu truy cập internet vẫn đi qua modem của nhà bạn.
- Permitted network resources (IPv4): cho phép user truy cập được vào tài nguyên của những dải mạng nội bộ nào. Ở đây mình sẽ chọn network là LAN (các bạn có thể add ở đây hoặc add theo bước kế tiếp) đã được định nghĩa trước.
Bên dưới là những tùy chọn cấu hình thêm, các bạn có thể enable các tính năng như Send Security Heartbeat through tunnel (thiết bị của user và firewall trao đổi các thông tin về tình trạng kết nối để đảm bảo kết nối an toàn và có hành động nhanh chóng khi có sự cố xảy ra), cho phép lưu username/password cho những lần đăng nhập tiếp theo, cho phép user xác thực 2 lớp 2FA,….
Sau khi cấu hình xong các bạn ấn Save để lưu cấu hình, sau đó ấn Export connection để tải profile này xuống, user sẽ import file này để truy cập được VPN
Định nghĩa dải mạng LAN và dải mạng của VPN tunnel
Để tạo policy kết nối giữa mạng nội bộ và người dùng từ xa, firewall cần phải biết những dải mạng nào được thực hiện. Do đó chúng ta cần phải định nghĩa các dải mạng này trước.
Các bạn vào menu Host and Services ⇒ IP host ⇒ Add. Ở đây mình sẽ cần định nghĩa cho dải mạng LAN và dải mạng của VPN tunnel sẽ được sử dụng cho người dùng từ xa. Với mô hình có nhiều VLAN, các bạn cũng tạo các định nghĩa tương ứng với VLAN nào muốn truy cập nhé.
Định nghĩa dải mạng LAN:
- Name: đặt tên cho dải mạng
- IP version: chọn IPv4 hoặc IPv6
- Type: Chọn type là Network và nhập địa chỉ IP của dải mạng vào. Ngoài ra còn có 3 tùy chọn khác để các bạn định nghĩa là IP (xác định 1 host cụ thể), IP range (xác định 1 dải IP cụ thể) và IP list (xác định 1 danh sách IP).
Tạo xong các bạn nhấn Save, với dải mạng cho VPN các bạn cũng làm tương tự:
Thiết lập policy
Bước tiếp theo là tạo các rule hay policy để người dùng remote có thể truy cập được vào các tài nguyên trong mạng nội bộ. Các bạn vào menu Rules and policies ⇒ Add firewall rule ⇒ New firewall rule. Sau đó điền đẩy đủ rule name với action là Accept và mô tả nếu cần.
- Tại mục Source zone, các bạn ấn “Add new item” và chọn zone là VPN
- Mục source network and devices: chọn network của VPN như vừa định nghĩa
- During scheduled time: chọn khoảng thời gian rule có hiệu lực, ở đây mình để là All the time
- Destination and services:
- Tại mục Destination zone, các bạn chọn zone là LAN
- Destination networks: chọn network của dải mạng LAN như vừa định nghĩa
- Services: chọn Any để cho phép truy cập tất cả các dịch vụ trong mạng nội bộ. Sophos cũng có sẵn các dịch vụ phổ biến, các bạn có thể chọn các dịch vụ cụ thể hoặc tạo mới để phù hợp với mục đích sử dụng.
Tiếp theo tick vào ô Match known users và chọn group user đã tạo để cho phép chỉ những user này mới có thể truy cập theo policy. Cuối cùng nhấn Save để lưu policy.
Thiết lập Device Access
Sau khi cấu hình xong các thông tin cơ bản, các bạn cần mở các phương thức truy cập cần thiết cho 2 zone WAN và VPN trong menu Administration ⇒ Device Access và tick chọn các mục như hình bên dưới.
Trong đó cần lưu ý các mục:
- User portal cần đươc mở trên cổng LAN hoặc WAN, các bạn sẽ cần truy cập vào User portal để sử dụng được phần mềm VPN client của Sophos. Nếu tick chọn trên cổng LAN thì các bạn sẽ cần tải phần mềm xuống và gửi cho user remote để sử dụng. Còn nếu chọn trên cổng WAN thì người dùng remote cũng có thể tự tải phần mềm khi truy cập bằng IP WAN của thiết bị. Chi tiết về cách tải phần mềm mình sẽ trình bày trong bước sau.
- Ngoài ra các bạn cần tick chọn vào dịch vụ VPN IPsec trên cổng WAN thì mới có thể truy cập được VPN.
- Đối với zone VPN, các bạn nên tick chọn vào ô Ping/Ping6 để cho phép remote user kiểm tra kết nối VPN với firewall bằng giao thức ICMP và DNS để cho phép phân giải tên miền trong trường hợp bạn đã chỉ định một domain cho user để truy cập các tài nguyên nội bộ hoặc truy cập internet.
Tải và sử dụng phần mềm Sophos connect client
Sau khi đã cấu hình xong các thông tin cho firewall, bây giờ các bạn cần phải tải xuống phần mềm Sophos connect client, đây là phần mềm dành riêng cho kết nối VPN remote access của Sophos. Có 2 cách để tải phần mềm này:
Cách 1:
Tại menu Remote access VPN ⇒ IPsec, các bạn nhấn chọn Download client, 1 thư mục nén sẽ được tải xuống máy tính của bạn. Sau khi giải nén các bạn sẽ có 2 file installer cho Windows và macOS. Các bạn chỉ cần gửi cho user muốn kết nối kèm file export connection là được
Cách 2:
Truy cập User portal bằng cách nhập URL https://[ip_LAN|ip_WAN]:443 trên trình duyệt. Với trường hợp bạn ở trong mạng LAN đang kết nối trực tiếp với firewall để cấu hình, các bạn cần nhập IP LAN của cổng mạng đang kết nối. Giao diện User portal sẽ hiện ra, các bạn nhập username/password của user vừa tạo để đăng nhập. Sau đó download cho Windows hoặc macOS và gửi cho user muốn kết nối tương tự như cách 1.
Trường hợp user muốn tự tải xuống thì sẽ cần nhập IP WAN của firewall trên trình duyệt của mình, với điều kiện User portal đã được bật trên cổng WAN trong phần Device access
Sau khi tải phần mềm, các bạn ấn vào import connection và chọn file Sophos Connect VPN Client (.scx) trong thư mục IPsecVPNRemoteAccess đã giải nén sau khi export connection ở bước trên. Import thành công, kết quả sẽ giống như hình bên dưới:
Tiếp theo các bạn ấn Connect và nhập username/password để kết nối VPN. Pre-shrared key đã được import trong file .scx rồi nên ở đây các bạn sẽ không cần phải nhập nữa. Phần mềm hiển thị Connected tức là các bạn đã kết nối VPN thành công.
Kiểm tra kết quả
Quay lại với mô hình ban đầu, mình có một PC trong mạng nội bộ đang nhận IP 172.16.16.10, máy tính của mình truy cập từ xa sau khi kết nối VPN đã nhận IP 10.10.100.10. Mình sẽ ping đến PC để kiểm tra kết nối đã thông chưa:
Ok vậy là máy tính của mình đã có thể kết nối đến PC này và có thể truy cập được các tài nguyên trong mạng nội bộ.
Như vậy là mình đã hướng dẫn các bạn cấu hình thành công VPN client-to-site bằng giao thức IPsec trên firewall Sophos. Đối với các giao thức khác như SSL, L2TP, PPTP cũng có cách làm tương tự, mình sẽ thực hiện trong các bài viết tiếp theo nhé. Nếu các bạn có thắc mắc thì hãy để lại comment bên dưới để mọi người cùng trao đổi. Đừng quên like, share để ủng hộ mình nhé. Cảm ơn các bạn đã theo dõi.
Bình luận bài viết!