Bài viết này đã được cập nhật để bao gồm các giao thức VPN WireGuard® và Stealth.
Chúng tôi giải thích giao thức VPN là gì và nó làm gì. Chúng tôi cũng so sánh điểm mạnh và điểm yếu của các giao thức phổ biến nhất, bao gồm OpenVPN, WireGuard®, IKEv2, PPTP và L2TP.
Trước khi tin tưởng một VPN để bảo vệ hoạt động internet, bạn cần đảm bảo rằng họ đã áp dụng các biện pháp bảo vệ cần thiết. Việc đánh giá các khía cạnh kỹ thuật hơn của VPN có thể khó khăn. Nó thường có nghĩa là phải vật lộn để hiểu một mớ hỗn độn các từ viết tắt khác nhau.
Chúng tôi đã bắt đầu một loạt bài đăng để giải thích một số biện pháp bảo mật của mình để mọi người có thể đưa ra quyết định sáng suốt hơn. Bài đăng đầu tiên của chúng tôi đã giải thích ý nghĩa của HMAC SHA-384. Bài đăng này sẽ điều tra các giao thức VPN, chúng làm gì, hoạt động như thế nào và ý nghĩa nếu dịch vụ VPN sử dụng OpenVPN qua L2TP chẳng hạn.
Bài đăng này đi sâu vào một số hoạt động bên trong của VPN. Mặc dù chúng tôi cố gắng giải thích các thuật ngữ rõ ràng, bài đăng này sẽ hữu ích hơn nếu bạn có một số kiến thức kỹ thuật cơ bản. Nếu không chắc chắn về cách hoạt động của VPN, có thể hữu ích khi đọc bài viết được liên kết bên dưới trước khi tiếp tục.
Tìm hiểu cách hoạt động của VPN
Các giao thức VPN
VPN dựa vào cái gọi là “đường hầm” để tạo ra một mạng riêng giữa hai máy tính qua internet. Một giao thức VPN, còn được gọi là “giao thức đường hầm”, là các hướng dẫn mà thiết bị sử dụng để đàm phán kết nối được mã hóa an toàn hình thành mạng giữa máy tính này và máy tính khác.
Một giao thức VPN thường bao gồm hai kênh: kênh dữ liệu và kênh kiểm soát. Kênh kiểm soát chịu trách nhiệm trao đổi khóa, xác thực và trao đổi tham số (như cung cấp IP hoặc các tuyến đường và máy chủ DNS). Kênh dữ liệu, như bạn có thể đoán, chịu trách nhiệm vận chuyển dữ liệu lưu lượng internet. Cùng với nhau, hai kênh này thiết lập và duy trì một đường hầm VPN an toàn. Tuy nhiên, để dữ liệu đi qua đường hầm an toàn này, nó phải được đóng gói.
Đóng gói là khi giao thức VPN lấy các bit dữ liệu, được gọi là gói dữ liệu, từ lưu lượng internet và đặt chúng vào bên trong một gói khác. Lớp bổ sung này là cần thiết vì cấu hình giao thức mà VPN sử dụng bên trong kênh dữ liệu không nhất thiết giống như internet thông thường sử dụng. Lớp bổ sung cho phép thông tin đi qua đường hầm VPN và đến đúng đích.
Tất cả điều này hơi mang tính kỹ thuật, vì vậy tổng quan chung: Khi kết nối với máy chủ VPN, VPN sử dụng kênh kiểm soát để thiết lập các khóa chia sẻ và kết nối giữa thiết bị và máy chủ. Khi kết nối này được thiết lập, kênh dữ liệu bắt đầu truyền lưu lượng internet. Khi VPN thảo luận về điểm mạnh và điểm yếu trong hiệu suất của nó hoặc nói về “đường hầm VPN an toàn”, nó đang nói về kênh dữ liệu của mình. Khi đường hầm VPN đã được thiết lập, kênh kiểm soát sau đó có nhiệm vụ duy trì sự ổn định của kết nối.
PPTP
Giao thức đường hầm điểm-điểm (PPTP) là một trong những giao thức VPN cũ hơn. Giao thức này ban đầu được phát triển với sự hỗ trợ từ Microsoft, do đó tất cả các phiên bản Windows và hầu hết các hệ điều hành khác đều có hỗ trợ gốc cho PPTP.
PPTP sử dụng Giao thức điểm-điểm (PPP), bản thân nó giống như một proto-VPN. Mặc dù khá cũ, PPP có thể xác thực người dùng (thường bằng MS-CHAP v2) và tự đóng gói dữ liệu, cho phép nó xử lý cả nhiệm vụ kênh kiểm soát và kênh dữ liệu. Tuy nhiên, PPP không thể định tuyến; nó không thể tự gửi qua internet. Vì vậy, PPTP đóng gói dữ liệu đã được PPP đóng gói một lần nữa bằng cách sử dụng đóng gói định tuyến chung (GRE) để thiết lập kênh dữ liệu của nó.
Thật không may, PPTP không có bất kỳ tính năng mã hóa hoặc xác thực riêng nào. Nó dựa vào PPP để thực hiện các chức năng này — điều này có vấn đề vì hệ thống xác thực của PPP và mã hóa mà Microsoft đã thêm vào nó, MPPE, đều yếu.
Mã hóa: Giao thức Mã hóa điểm-điểm của Microsoft (MPPE(cửa sổ mới)), sử dụng thuật toán RSA RC4. Độ mạnh tối đa của MPPE là khóa 128-bit.
Tốc độ: Vì các giao thức mã hóa của nó không yêu cầu nhiều sức mạnh tính toán (RC4 và chỉ khóa 128-bit), PPTP duy trì tốc độ kết nối nhanh.
Các lỗ hổng đã biết: PPTP đã có nhiều lỗ hổng bảo mật được biết đến từ năm 1998. Một trong những lỗ hổng nghiêm trọng nhất khai thác xác thực MS-CHAP v2 không được đóng gói để thực hiện cuộc tấn công man-in-the-middle (MITM).
Cổng tường lửa: Cổng TCP 1723. Việc sử dụng GRE của PPTP có nghĩa là nó không thể điều hướng tường lửa dịch địa chỉ mạng và là một trong những giao thức VPN dễ bị chặn nhất. (Tường lửa NAT cho phép nhiều người chia sẻ một địa chỉ IP công cộng cùng một lúc. Điều này rất quan trọng vì hầu hết người dùng cá nhân không có địa chỉ IP riêng.)
Độ ổn định: PPTP không đáng tin cậy bằng, cũng như không khôi phục nhanh như OpenVPN qua các kết nối mạng không ổn định.
Kết luận: Nếu lo lắng về việc bảo mật dữ liệu, không có lý do gì để sử dụng PPTP. Ngay cả Microsoft cũng đã khuyên(cửa sổ mới) người dùng nâng cấp lên các giao thức VPN khác để bảo vệ dữ liệu.
L2TP/IPSec
Giao thức đường hầm lớp hai (L2TP) được thiết kế để thay thế PPTP. L2TP có thể tự xử lý xác thực và thực hiện đóng gói UDP, vì vậy theo một cách nào đó, nó có thể hình thành cả kênh kiểm soát và dữ liệu. Tuy nhiên, tương tự như PPTP, nó không tự thêm bất kỳ mã hóa nào. Mặc dù L2TP có thể gửi PPP, nhưng để tránh những điểm yếu vốn có của PPP, L2TP thường được ghép nối với bộ bảo mật Giao thức Internet (IPSec) để xử lý mã hóa và xác thực.
IPSec là một khuôn khổ linh hoạt có thể áp dụng cho VPN cũng như định tuyến và bảo mật cấp ứng dụng. Khi kết nối với máy chủ VPN bằng L2TP/IPSec, IPSec sẽ đàm phán các khóa chia sẻ và xác thực kết nối của kênh kiểm soát an toàn giữa thiết bị và máy chủ.
IPSec sau đó đóng gói dữ liệu. Khi IPSec thực hiện việc đóng gói này, nó áp dụng tiêu đề xác thực và sử dụng Encapsulation Security Payload (ESP). Các tiêu đề đặc biệt này thêm chữ ký số vào mỗi gói tin để những kẻ tấn công không thể can thiệp vào dữ liệu mà không cảnh báo cho máy chủ VPN.
ESP mã hóa các gói dữ liệu đã đóng gói để không kẻ tấn công nào có thể đọc được (và, tùy thuộc vào cài đặt của VPN, cũng xác thực gói dữ liệu). Khi IPSec đã đóng gói dữ liệu, L2TP đóng gói dữ liệu đó một lần nữa bằng UDP để nó có thể đi qua kênh dữ liệu.
Một số giao thức VPN, bao gồm IKEv2, sử dụng mã hóa IPSec. Mặc dù nhìn chung là an toàn, IPSec rất phức tạp, có thể dẫn đến việc triển khai kém. L2TP/IPSec được hỗ trợ trên hầu hết các hệ điều hành chính.
Mã hóa: L2TP/IPSec có thể sử dụng mã hóa 3DES hoặc AES, mặc dù 3DES hiện được coi là một mật mã yếu nên hiếm khi được sử dụng.
Tốc độ: L2TP/IPSec thường chậm hơn OpenVPN khi sử dụng cùng độ mạnh mã hóa. Điều này chủ yếu là do thực tế là mã hóa AES được sử dụng bởi OpenVPN được tăng tốc phần cứng trên hầu hết các bộ xử lý thông dụng.
Các lỗ hổng đã biết: L2TP/IPSec là một giao thức VPN tiên tiến, nhưng một bài thuyết trình bị rò rỉ của NSA(cửa sổ mới) cho thấy cơ quan tình báo này đã tìm ra cách để can thiệp vào nó. Hơn nữa, do sự phức tạp của IPSec, nhiều nhà cung cấp VPN đã sử dụng các khóa chia sẻ trước(cửa sổ mới) để thiết lập L2TP/IPSec.
Cổng tường lửa: Cổng UDP 500 được sử dụng để trao đổi khóa ban đầu, cổng UDP 5500 cho NAT traversal và cổng UDP 1701 để cho phép lưu lượng L2TP. Vì sử dụng các cổng cố định này, L2TP/IPSec dễ bị chặn hơn một số giao thức khác.
Độ ổn định: L2TP/IPSec không ổn định như một số giao thức VPN tiên tiến hơn. Sự phức tạp của nó có thể dẫn đến việc rớt mạng thường xuyên.
Kết luận: Bảo mật của L2TP/IPSec chắc chắn là một sự cải tiến so với PPTP, nhưng nó có thể không bảo vệ dữ liệu khỏi những kẻ tấn công tiên tiến. Tốc độ chậm hơn và sự không ổn định cũng có nghĩa là người dùng chỉ nên cân nhắc sử dụng L2TP/IPSec nếu không có lựa chọn nào khác.
IKEv2/IPSec
Internet key exchange version two (IKEv2) là một giao thức đường hầm tương đối mới, thực chất là một phần của bộ IPSec. Microsoft và Cisco đã hợp tác phát triển giao thức IKEv2/IPSec ban đầu, nhưng hiện nay đã có nhiều phiên bản mã nguồn mở.
IKEv2 thiết lập một kênh kiểm soát bằng cách xác thực một kênh giao tiếp an toàn giữa thiết bị và máy chủ VPN bằng thuật toán trao đổi khóa Diffie–Hellman(cửa sổ mới). Sau đó, IKEv2 sử dụng kênh giao tiếp an toàn đó để thiết lập cái gọi là liên kết bảo mật, nghĩa là thiết bị và máy chủ VPN đang sử dụng cùng các khóa mã hóa và thuật toán để giao tiếp.
Khi liên kết bảo mật đã sẵn sàng, IPSec có thể tạo đường hầm, áp dụng tiêu đề đã xác thực cho các gói dữ liệu và đóng gói chúng bằng ESP. (Một lần nữa, tùy thuộc vào mật mã nào được sử dụng, ESP có thể xử lý xác thực tin nhắn.) Các gói dữ liệu đã đóng gói sau đó được đóng gói lại trong UDP để chúng có thể đi qua đường hầm.
IKEv2/IPSec được hỗ trợ trên Windows 7 và các phiên bản mới hơn, macOS 10.11 và các phiên bản mới hơn, cũng như hầu hết các hệ điều hành di động.
Mã hóa: IKEv2/IPSec có thể sử dụng nhiều thuật toán mật mã khác nhau, bao gồm AES, Blowfish và Camellia. Nó hỗ trợ mã hóa 256-bit.
Tốc độ: IKEv2/IPSec là một giao thức VPN nhanh, mặc dù thường không nhanh bằng OpenVPN được tăng tốc phần cứng hoặc WireGuard.
Các lỗ hổng đã biết: IKEv2/IPSec không có điểm yếu nào được biết đến và hầu hết các chuyên gia bảo mật CNTT đều coi nó là an toàn khi được triển khai đúng cách với Perfect Forward Secrecy.
Cổng tường lửa: Cổng UDP 500 được sử dụng để trao đổi khóa ban đầu và cổng UDP 4500 cho NAT traversal. Vì luôn sử dụng các cổng này, IKEv2/IPSec dễ bị chặn hơn một số giao thức khác.
Độ ổn định: IKEv2/IPSec hỗ trợ giao thức Di động và Đa homing, làm cho nó đáng tin cậy hơn hầu hết các giao thức VPN khác, đặc biệt là đối với những người dùng thường xuyên chuyển đổi giữa các mạng WiFi khác nhau.
Kết luận: Với khả năng bảo mật mạnh mẽ, tốc độ cao và độ ổn định tăng cường, IKEv2/IPSec là một giao thức VPN tốt. Tuy nhiên, sự ra đời gần đây của WireGuard có nghĩa là có ít lý do để chọn nó hơn so với giao thức VPN mới hơn.
OpenVPN
OpenVPN là một giao thức đường hầm mã nguồn mở. Trái ngược với các giao thức VPN dựa trên bộ IPSec, OpenVPN sử dụng SSL/TLS để xử lý việc trao đổi khóa và thiết lập kênh kiểm soát, và một giao thức OpenVPN độc đáo để xử lý đóng gói và kênh dữ liệu.
Điều này có nghĩa là cả kênh dữ liệu và kênh kiểm soát của nó đều được mã hóa, điều này làm cho nó có phần độc đáo so với các giao thức VPN khác. Nó được hỗ trợ trên tất cả các hệ điều hành chính thông qua phần mềm của bên thứ ba.
Mã hóa: OpenVPN có thể sử dụng bất kỳ thuật toán mật mã nào có trong thư viện OpenSSL(cửa sổ mới) để mã hóa dữ liệu, bao gồm AES, RC5 và Blowfish.
Tốc độ: Khi sử dụng UDP, OpenVPN duy trì kết nối nhanh, mặc dù IKEv2/IPSec và WireGuard thường được chấp nhận là nhanh hơn.
Các lỗ hổng đã biết: OpenVPN không có lỗ hổng nào được biết đến miễn là nó được triển khai với thuật toán mã hóa đủ mạnh và Perfect Forward Secrecy. Đây là tiêu chuẩn ngành cho các VPN quan tâm đến bảo mật dữ liệu.
Cổng tường lửa: OpenVPN có thể được cấu hình để chạy trên bất kỳ cổng UDP hoặc TCP nào, bao gồm cổng TCP 443, xử lý tất cả lưu lượng HTTPS và làm cho nó rất khó bị chặn.
Độ ổn định: OpenVPN rất ổn định nói chung và có chế độ TCP để đánh bại sự kiểm duyệt.
Kết luận: OpenVPN an toàn, đáng tin cậy và là mã nguồn mở. Đây là một trong những giao thức VPN tốt nhất hiện đang được sử dụng, đặc biệt là đối với những người dùng quan tâm chủ yếu đến bảo mật dữ liệu. Khả năng định tuyến kết nối qua TCP (xem bên dưới) cũng làm cho nó trở thành một lựa chọn tốt để trốn tránh kiểm duyệt. Tuy nhiên, mặc dù thiếu lợi thế chống kiểm duyệt của OpenVPN, WireGuard cũng an toàn và nhanh hơn OpenVPN.
WireGuard®
WireGuard(cửa sổ mới) là giao thức VPN mã nguồn mở an toàn, nhanh chóng và hiệu quả.
Mã hóa: WireGuard sử dụng ChaCha20 để mã hóa đối xứng (RFC7539(cửa sổ mới)), Curve25519 để trao đổi khóa ẩn danh, Poly1305 để xác thực dữ liệu và BLAKE2s để băm (RFC7693(cửa sổ mới)). Nó tự động hỗ trợ Perfect Forward Secrecy.
Tốc độ: WireGuard sử dụng các thuật toán mật mã mới, tốc độ cao. Ví dụ, ChaCha20 đơn giản hơn nhiều so với các mật mã AES có cùng độ mạnh và nhanh gần bằng, mặc dù hầu hết các thiết bị hiện nay đều có các hướng dẫn cho AES được tích hợp vào phần cứng. Kết quả là WireGuard cung cấp tốc độ kết nối nhanh và có yêu cầu CPU thấp.
Các lỗ hổng đã biết: WireGuard đã trải qua nhiều xác minh chính thức khác nhau và để được tích hợp vào nhân Linux, cơ sở mã Linux của WireGuard đã được kiểm toán độc lập(cửa sổ mới) bởi bên thứ ba.
Cổng tường lửa: WireGuard có thể được cấu hình để sử dụng bất kỳ cổng nào và thường chạy qua UDP. Tuy nhiên, Proton VPN cũng cung cấp WireGuard TCP trong hầu hết các ứng dụng của chúng tôi.
Độ ổn định: WireGuard là một giao thức VPN rất ổn định và giới thiệu các tính năng mới mà các giao thức đường hầm khác không có, chẳng hạn như duy trì kết nối VPN trong khi thay đổi máy chủ VPN hoặc thay đổi mạng WiFi.
Kết luận: Là một giao thức VPN hiện đại, WireGuard nhanh, hiệu quả và an toàn. Nó không “dày dạn trận mạc” như OpenVPN và không cung cấp khả năng chống kiểm duyệt dựa trên TCP của OpenVPN (xem bên dưới), nhưng đối với hầu hết mọi người, trong hầu hết thời gian, đó là giao thức VPN mà chúng tôi khuyên dùng.
Stealth
Stealth là một giao thức VPN mới được phát triển bởi Proton. Với nó, bạn có thể truy cập các trang web bị kiểm duyệt và giao tiếp với mọi người trên mạng xã hội, ngay cả khi các giao thức VPN thông thường bị chính phủ hoặc tổ chức chặn.
Stealth dựa trên WireGuard được tạo đường hầm qua TLS. Do đó, nó sử dụng cùng mã hóa như WireGuard, với một lớp mã hóa TLS bổ sung. Nó giống hệt WireGuard về các mặt khác (được mô tả ở trên).
Các thuật ngữ quan trọng khác
Khi xem qua các so sánh về các giao thức VPN khác nhau, có thể bạn đã gặp các từ viết tắt hoặc thuật ngữ kỹ thuật mà bạn không quen thuộc. Chúng tôi giải thích một số thuật ngữ quan trọng nhất ở đây.
TCP so với UDP
Giao thức điều khiển truyền vận (TCP) và giao thức gói dữ liệu người dùng (UDP) là hai cách khác nhau để các thiết bị có thể giao tiếp với nhau qua internet. Cả hai đều chạy trên Giao thức Internet, chịu trách nhiệm gửi các gói dữ liệu đến và đi từ các địa chỉ IP.
Khi thấy một giao thức đường hầm sử dụng cổng TCP hoặc cổng UDP, điều đó có nghĩa là nó thiết lập kết nối giữa máy tính và máy chủ VPN bằng một trong hai giao thức này.
Việc giao thức VPN sử dụng TCP, UDP hay cả hai có thể ảnh hưởng đáng kể đến hiệu suất của nó. TCP chủ yếu tập trung vào việc cung cấp dữ liệu chính xác bằng cách chạy các kiểm tra bổ sung để đảm bảo dữ liệu theo đúng thứ tự và sửa chữa nếu không đúng.
Điều này nghe có vẻ là một tính năng tốt, nhưng việc thực hiện kiểm tra cần thời gian, dẫn đến hiệu suất chậm hơn. Chạy VPN qua TCP (TCP qua TCP) có thể làm chậm kết nối của bạn trong cái gọi là sự cố TCP meltdown.
Ví dụ: nếu có lưu lượng TCP đi qua đường hầm TCP OpenVPN và dữ liệu TCP trong đường hầm phát hiện lỗi, nó sẽ cố gắng bù đắp, điều này có thể khiến đường hầm TCP bù đắp quá mức. Quá trình này có thể gây ra sự chậm trễ nghiêm trọng trong việc phân phối dữ liệu.
Tuy nhiên, nó cũng tốt cho việc đánh bại sự kiểm duyệt. Điều này là do lưu lượng HTTPS(cửa sổ mới) sử dụng cổng TCP 443, vì vậy nếu định tuyến kết nối VPN qua cùng một cổng, nó sẽ giống như lưu lượng VPN an toàn thông thường.
Khả năng chạy lưu lượng VPN qua cổng 443 là một trong những lợi thế lớn nhất của việc sử dụng OpenVPN (và WireGuard, nếu sử dụng triển khai TCP tùy chỉnh của giao thức này của Proton VPN).
Perfect Forward Secrecy
Perfect Forward Secrecy là một thành phần bảo mật quan trọng của giao tiếp được mã hóa. Nó đề cập đến các hoạt động chi phối cách các khóa mã hóa được tạo ra. Nếu VPN hỗ trợ Perfect Forward Secrecy, nó sẽ tạo ra một bộ khóa duy nhất cho mỗi phiên (nghĩa là mỗi khi thiết lập kết nối VPN mới).
Điều này có nghĩa là ngay cả khi kẻ tấn công bằng cách nào đó lấy được một trong các khóa, họ chỉ có thể sử dụng nó để truy cập dữ liệu từ phiên VPN cụ thể đó. Dữ liệu trong các phiên còn lại vẫn an toàn vì các khóa duy nhất khác nhau bảo vệ chúng. Nó cũng có nghĩa là khóa phiên sẽ vẫn an toàn ngay cả khi khóa riêng tư của VPN bị lộ.
Các giao thức được sử dụng bởi các ứng dụng Proton VPN
Chúng tôi bắt đầu Proton VPN để đảm bảo các nhà hoạt động, những người bất đồng chính kiến và nhà báo có quyền truy cập internet an toàn và riêng tư. Để giữ an toàn cho cộng đồng Proton, chúng tôi chỉ sử dụng các giao thức VPN đáng tin cậy và đã được kiểm duyệt. Danh sách sau đây cho biết các giao thức VPN nào được hỗ trợ trong các ứng dụng khác nhau của chúng tôi:
- Windows: OpenVPN, WireGuard® và Stealth
- macOS: OpenVPN, IKEv2, WireGuard và Stealth
- Android: OpenVPN, WireGuard và Stealth
- iOS/iPadOS: OpenVPN, IKEv2, WireGuard và Stealth
- Linux: OpenVPN và WireGuard
Bạn có thể sử dụng OpenVPN và WireGuard ở chế độ UDP hoặc TCP.
Tìm hiểu cách thay đổi giao thức VPN
Các ứng dụng Windows, macOS, Android và iOS/iPadOS của chúng tôi hỗ trợ Smart Protocol. Tính năng chống kiểm duyệt này thăm dò các mạng một cách thông minh để khám phá cấu hình giao thức VPN tốt nhất cần thiết để có hiệu suất tối ưu hoặc vượt qua kiểm duyệt.
Ví dụ: nó có thể tự động chuyển từ IKEv2 sang OpenVPN hoặc OpenVPN UDP sang OpenVPN TCP, sử dụng các cổng khác nhau theo yêu cầu.
Tìm hiểu thêm về Smart Protocol
Tất cả các ứng dụng của chúng tôi đều sử dụng các cài đặt bảo mật mạnh nhất được giao thức VPN hỗ trợ. OpenVPN, WireGuard và IKEv2/IPSec là những giao thức duy nhất mà đại đa số các chuyên gia bảo mật CNTT đồng ý là an toàn.
Chúng tôi từ chối cung cấp bất kỳ kết nối VPN nào sử dụng PPTP hoặc L2TP/IPSec (mặc dù chúng rẻ hơn để vận hành và dễ định cấu hình hơn) vì bảo mật của chúng không đáp ứng các tiêu chuẩn của chúng tôi.
Khi đăng nhập vào Proton VPN, bạn có thể tin tưởng rằng kết nối VPN của mình đang sử dụng các giao thức đường hầm mới nhất và mạnh nhất.
Trân trọng,
Đội ngũ Proton VPN
Bạn có thể theo dõi chúng tôi trên mạng xã hội để cập nhật các bản phát hành Proton VPN mới nhất:
Twitter (cửa sổ mới)| Facebook(cửa sổ mới) | Reddit(cửa sổ mới)
Để nhận tài khoản email được mã hóa Proton Mail miễn phí, hãy truy cập: proton.me/mail(cửa sổ mới)





