- 22 tháng 10, 2026
- Chưa có tác giả
SMB (Server Message Block) là giao thức mạng cho phép chia sẻ tệp tin, thư mục và máy in giữa các thiết bị, được sử dụng phổ biến trong hệ thống Windows và mạng doanh nghiệp. Vậy SMB hoạt động như thế nào, có những phiên bản nào và làm sao để hạn chế các rủi ro bảo mật khi sử dụng? Cùng Long Vân tìm hiểu chi tiết trong bài viết dưới đây.
Mục lục
Giới thiệu đôi nét về SMB
1. SMB là gì?
SMB (Server Message Block) là một giao thức mạng được sử dụng trong hệ điều hành Windows và DOS. Nền tảng này cung cấp cơ chế cho phép các máy khách (client) truy cập vào hệ thống file máy chủ (server) và các thiết bị input/output, chẳng hạn như máy in.
Giao thức này hoạt động theo mô hình client-server, cho phép máy khách gửi yêu cầu truy cập tài nguyên đến máy chủ, máy chủ sẽ xác thực và phản hồi yêu cầu này. SMB sử dụng cổng 445 (TCP) và từng có phiên bản hoạt động qua NetBIOS, hiện nay chủ yếu qua TCP/IP, giúp hỗ trợ truy cập đồng thời, chia sẻ dữ liệu hiệu quả trong môi trường làm việc nhóm hoặc quản trị tập trung.
Xem thêm:
Hình 1.1: SMB là gì?
2. Chức năng chính SMB
Giao thức SMB cung cấp nhiều chức năng quan trọng, giúp việc quản lý và chia sẻ tài nguyên trong mạng trở nên hiệu quả hơn.
Chia sẻ file và thư mục: SMB cho phép các máy tính trong cùng mạng truy cập, chia sẻ và quản lý file, thư mục từ xa một cách dễ dàng mà không cần sao chép vật lý, đáp ứng nhu cầu làm việc nhóm và quản trị tập trung.
In qua mạng: Giao thức này hỗ trợ kết nối và chia sẻ máy in, giúp các máy tính trong mạng có thể gửi lệnh in tài liệu từ xa đến máy in dùng chung.
Xác thực và kiểm soát truy cập: SMB thực hiện xác thực người dùng, phân quyền truy cập nhằm đảm bảo chỉ những đối tượng đủ điều kiện mới có thể truy cập tài nguyên, góp phần tăng cường bảo mật hệ thống.
Thông báo thay đổi và đồng bộ hóa: SMB giúp máy khách nhận được thông báo về các thay đổi trong file, thư mục đã truy cập (Ví dụ file bị chỉnh sửa, xóa,...), đồng thời hỗ trợ việc khóa file khi người dùng đang sử dụng để tránh xung đột.
Hỗ trợ Unicode và xử lý thuộc tính: SMB có khả năng truyền dữ liệu sử dụng mã Unicode, hỗ trợ đa ngôn ngữ và xử lý thuộc tính mở rộng của file, phù hợp cho môi trường doanh nghiệp đa dạng.
Khóa file: Đảm bảo tính toàn vẹn của dữ liệu bằng cách cho phép khóa các tệp đang được truy cập.
Xem thêm: Hướng dẫn cách chia sẻ máy in qua mạng lan và Wifi hiệu quả
Hình 1.2: Chức năng SMB
3. Lịch sử phát triển và các phiên bản SMB
SMB (Server Message Block) bắt đầu được phát triển từ những năm 1980 nhằm hỗ trợ chia sẻ tệp tin và tài nguyên giữa các máy tính trong mạng nội bộ. Sau đó, giao thức này được tích hợp rộng rãi vào hệ điều hành Windows và phát triển qua nhiều phiên bản để đáp ứng nhu cầu truyền dữ liệu ngày càng cao. Sự xuất hiện của CIFS, cùng các cải tiến về hiệu suất, khả năng mở rộng và bảo mật, đã đánh dấu những bước tiến quan trọng trong quá trình phát triển của SMB. Mỗi phiên bản đều có những thay đổi đáng chú ý, từ SMBv1 ban đầu đến các phiên bản hiện đại như SMBv2 và SMBv3.
SMBv1 (1.0): Phiên bản đầu tiên từ những năm 1980, rất cũ và tiềm ẩn rủi ro bảo mật nghiêm trọng.
SMBv2 (2.0/2.1): Ra mắt với Windows Vista (2007), cải thiện đáng kể hiệu suất, độ tin cậy và giảm số lượng lệnh.
SMBv3 (3.0/3.02/3.1.1):
SMB 3.0 (Windows 8/2012): Bổ sung mã hóa, khả năng chịu lỗi (failover), và SMB Direct.
SMB 3.02 (Windows 8.1/2012 R2): Cho phép vô hiệu hóa SMB 1.0.
SMB 3.1.1 (Windows 10/2016 trở lên): Phiên bản hiện đại, yêu cầu tiền xác thực (pre-authentication integrity), hỗ trợ mã hóa AES-128/AES-256 GCM và SMB qua QUIC (Windows 11).
Nhìn chung, các phiên bản SMB ngày càng được cải tiến về hiệu suất, độ tin cậy và bảo mật. Trong đó, SMBv1 đã lỗi thời và tiềm ẩn rủi ro bảo mật, còn SMBv2 và SMBv3 cung cấp nhiều cải tiến phù hợp hơn với hệ thống hiện đại. Khi triển khai, bạn nên ưu tiên phiên bản mới được cả máy khách và máy chủ hỗ trợ, đồng thời kiểm tra yêu cầu tương thích trước khi vô hiệu hóa các phiên bản cũ.
Xem thêm:
Hình 1.3: Các phiên bản của SMB
Server Message Block (SMB) hoạt động như thế nào?
SMB hoạt động theo mô hình Client – Server:
Máy Server: chia sẻ tài nguyên
Máy Client: truy cập tài nguyên đó qua mạng
Dựa trên mô hình này, quá trình trao đổi dữ liệu qua SMB diễn ra theo từng bước, từ thiết lập kết nối, xác thực người dùng đến xử lý yêu cầu và trả kết quả về máy khách. Thông qua đó, SMB cho phép các thiết bị trao đổi và sử dụng tài nguyên chung trong mạng một cách thống nhất, đồng thời hỗ trợ kiểm soát quyền truy cập đối với dữ liệu được chia sẻ.
Thiết lập kết nối: Khi một người dùng hoặc thiết bị muốn truy cập vào tệp tin, thư mục hoặc máy in trên máy chủ thông qua mạng, máy khách sẽ chủ động thiết lập một kết nối SMB với máy chủ đích. Việc thiết lập này đảm bảo hai bên có thể trao đổi dữ liệu qua cổng 445 (TCP).
Xác thực và quản lý phiên làm việc: Sau khi kết nối, quá trình xác thực sẽ diễn ra. Máy chủ xác nhận danh tính cũng như phân quyền truy cập của người dùng, đảm bảo chỉ những tài khoản hợp lệ mới được phép truy cập tài nguyên. Nếu xác thực thành công, một phiên làm việc (Session) được tạo ra để duy trì liên kết ổn định giữa client và server trong suốt quá trình sử dụng.
Gửi yêu cầu và truy cập tài nguyên: Ở bước này, người dùng hoặc ứng dụng gửi các yêu cầu như đọc file, ghi dữ liệu, xóa file, đổi tên hoặc truy xuất máy in,... Các thao tác này thực hiện qua chuẩn đóng gói riêng của SMB, giúp dễ dàng truyền dẫn giữa nhiều loại hệ điều hành khác nhau.
Xử lý và đáp ứng yêu cầu: Máy chủ SMB sẽ tiếp nhận yêu cầu, kiểm tra lại quyền truy cập và thực hiện lệnh liên quan trên tài nguyên được yêu cầu. Sau đó, máy chủ phản hồi kết quả lại cho máy khách.
Đóng kết nối khi hoàn tất: Khi người dùng hoàn thành thao tác hoặc không còn cần truy cập tài nguyên, phiên SMB sẽ được đóng để giải phóng tài nguyên mạng và đảm bảo an toàn vận hành. Toàn bộ với quy trình này, SMB giúp đơn giản hóa việc chia sẻ dữ liệu, đảm bảo hiệu quả và kiểm soát truy cập chặt chẽ trong hệ thống mạng nội bộ hoặc doanh nghiệp.
Hình 2.1: Nguyên lý hoạt động của giao thức SMB
Xem thêm:
Giải pháp về rủi ro về bảo mật giao thức SMB
Hình 3.1: Các giải pháp an toàn về SMB
1. Cập nhật hệ thống định kỳ
Hãy đảm bảo rằng tất cả các hệ thống của bạn đều được cập nhật với các bản vá bảo mật mới nhất từ Microsoft. Hoạt động này có tác dụng giảm thiểu nguy cơ bị tấn công thông qua các lỗ hổng bảo mật đã biết trong giao thức SMB.
2. Tắt SMBv1
Việc tắt SMBv1 (Server Message Block version 1) có ý nghĩa quan trọng trong việc tăng cường bảo mật hệ thống doanh nghiệp và cá nhân. Người dùng nên tham khảo một số lý do cơ bản như sau:
Giảm nguy cơ bị tấn công
SMBv1 đã gặp phải nhiều lỗ hổng bảo mật và đã được sử dụng trong nhiều cuộc tấn công mạng. Việc tắt SMBv1 giúp giảm thiểu nguy cơ bị tấn công thông qua các lỗ hổng bảo mật liên quan và ngăn chặn nhiều mối đe dọa tiềm ẩn.
Bảo vệ dữ liệu quan trọng
Khi tắt SMBv1, bạn đang ngăn chặn các mối đe dọa hệ thống tấn công và lây lan thông qua giao thức này. Điều này giúp bảo vệ dữ liệu quan trọng và tăng cường bảo mật thông tin.
Tuân thủ chuẩn bảo mật
Ngưng kết nối SMBv1 là một biện pháp tuân thủ các chuẩn bảo mật hiện đại hơn. SMBv1 đã bị coi là không an toàn và việc loại bỏ nó khỏi môi trường mạng giúp tạo ra một cơ sở hạ tầng mạng an toàn hơn.
→ Cách tắt SMBv1 trên Windows
command line
dism /online /norestart /disable-feature /featurename:SMB1ProtocolPowershell
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
3. Chặn các Port không quan trọng
Cổng 139
Đây là cổng mặc định được sử dụng cho SMB trên các phiên bản Windows cũ. Nếu không cần thiết, bạn có thể xem xét chặn cổng này để ngăn chặn các tấn công thông qua SMBv1.
Cổng 445
Cổng này được sử dụng cho SMB trên các phiên bản Windows hiện đại. Nếu không cần thiết, bạn cũng có thể xem xét chặn cổng này để giảm thiểu vùng mục tiêu cho các tấn công thông qua SMB.
→ Cách chặn port 445, 139 trên Windows
netsh advfirewall firewall add rule dir=in action=block protocol=TCP localport=135 name=”Block_TCP-139″ netsh advfirewall firewall add rule dir=in action=block protocol=TCP localport=445 name=”Block_TCP-445″
4. Giải pháp thay thế
VPN (Virtual Private Network): Thiết lập VPN để người dùng kết nối vào mạng nội bộ trước khi truy cập tài nguyên. Lưu lượng được mã hóa, không cần mở port 445 ra ngoài.
FTP (SSH File Transfer Protocol): Truyền file qua SSH với mã hóa mặc định. Giải pháp đơn giản, an toàn, phù hợp khi chỉ cần chức năng chia sẻ hoặc tải file từ xa.
WebDAV qua HTTPS: Cho phép map ổ đĩa thông qua giao thức HTTPS. Dữ liệu được mã hóa bằng SSL/TLS, dễ triển khai trong môi trường có firewall chặt chẽ.
Owncloud: Nền tảng lưu trữ và chia sẻ dữ liệu dạng Private Cloud, cho phép doanh nghiệp tự triển khai hệ thống đồng bộ và quản lý file trên máy chủ riêng thay vì sử dụng dịch vụ lưu trữ công cộng.
Xem thêm:
Câu hỏi thường gặp về "giao thức SMB"
Làm cách nào để bật SMB trên Windows 10?
Trên Windows 10, SMBv2 và SMBv3 thường được bật mặc định. Nếu cần kích hoạt lại giao thức SMBv2/SMBv3 để chia sẻ tệp tin hoặc thư mục qua mạng, bạn có thể thực hiện như sau.
Nhấn chuột phải vào Start và chọn Windows PowerShell (Admin) hoặc Terminal (Admin).
Nhập lệnh sau để kiểm tra trạng thái SMBv2/SMBv3:
Get-SmbServerConfiguration | Select EnableSMB2Protocol
Nếu kết quả là False, nhập lệnh sau để bật giao thức:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Xác nhận nếu được yêu cầu, sau đó kiểm tra lại trạng thái bằng lệnh ở bước 2.
Lệnh trên bật SMBv2/SMBv3 cho thành phần máy chủ SMB. Để chia sẻ dữ liệu, bạn cần thiết lập thư mục chia sẻ và quyền truy cập phù hợp.
Làm cách nào để bật SMB trên Windows 11?
Trên Windows 11, SMBv2/SMBv3 thường được bật mặc định. Bạn có thể kiểm tra và kích hoạt giao thức bằng PowerShell nếu tính năng này đang bị tắt.
Nhấn chuột phải vào Start và chọn Terminal (Admin).
Chạy lệnh sau để kiểm tra trạng thái:
Get-SmbServerConfiguration | Select EnableSMB2Protocol
Nếu kết quả là False, chạy lệnh:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Kiểm tra lại trạng thái để xác nhận SMBv2/SMBv3 đã được bật.
Lưu ý: Nếu thiết bị hoặc phần mềm cũ yêu cầu SMBv1, bạn có thể quản lý tính năng này trong Control Panel → Programs → Programs and Features → Turn Windows features on or off → SMB 1.0/CIFS File Sharing Support. Tuy nhiên, Microsoft khuyến cáo không sử dụng SMBv1 do các lỗ hổng bảo mật nghiêm trọng. Bạn nên ưu tiên nâng cấp thiết bị để tương thích với SMBv2/SMBv3.
SMB là giao thức quan trọng giúp đơn giản hóa việc chia sẻ dữ liệu và quản lý tài nguyên trong mạng nội bộ. Tuy nhiên, để đảm bảo an toàn, bạn nên cập nhật hệ thống thường xuyên, vô hiệu hóa SMBv1 nếu không cần thiết và giới hạn kết nối SMB tại các cổng mạng phù hợp. Đồng thời, hãy ưu tiên sử dụng SMBv2 hoặc SMBv3 và cấu hình quyền truy cập đúng cách để nâng cao hiệu quả vận hành, giảm nguy cơ bị khai thác lỗ hổng bảo mật.
