SSH là một giao thức mạng an toàn tạo ra một đường hầm được mã hóa giữa các hệ thống. Nó vẫn phổ biến với các nhà phát triển cần truy cập từ xa vào máy tính mà không yêu cầu giao diện người dùng đồ họa. Mặc dù SSH đã tồn tại trong nhiều thập kỷ và phục vụ vô số người dùng một cách đáng tin cậy nhưng nó vẫn có thể bị ảnh hưởng bởi một số lỗi nhất định.
Nhiều lỗi trong số này đã trở nên phổ biến trong cộng đồng SSH và cách giải quyết chúng đã được ghi lại rộng rãi. Chúng bao gồm tường lửa không tương thích, Sự cố tiêm khóa công khai SSH, Sự cố về chế độ khóa tệp SSHvà lỗi “Cảnh báo: Nhận dạng máy chủ từ xa đã thay đổi”.
Lỗi này xảy ra trên tất cả các hệ điều hành chính, bao gồm Windows, Linux và macOS. Nguồn gốc của vấn đề có thể là mối lo ngại về bảo mật chính đáng chứ không phải là trục trặc kỹ thuật đơn giản. Trong bài viết này, chúng tôi sẽ giải thích lý do điều này xảy ra, ý nghĩa của việc bảo mật kết nối SSH của bạn và cách giải quyết vấn đề này trên từng nền tảng chính.
Điều gì gây ra cảnh báo: Nhận dạng máy chủ từ xa đã thay đổi (và bạn có nên lo lắng không?)
“Cảnh báo: Nhận dạng máy chủ từ xa đã thay đổi” xuất hiện khi khóa chung SSH được lưu trữ trong đã biết_hosts tập tin không khớp với khóa mà máy chủ hiện đang trình bày. Sự không khớp này kích hoạt cơ chế bảo mật tích hợp của SSH để bảo vệ bạn khỏi các mối đe dọa tiềm ẩn.
Lý do chính đáng cho việc thay đổi khóa máy chủ
Một số lý do đơn giản giải thích tại sao khóa máy chủ của máy chủ có thể thay đổi. Đôi khi bạn sẽ thấy các biến thể như “Khóa máy chủ RSA đã thay đổi”, tùy thuộc vào loại khóa cụ thể đang được sử dụng.

Những thay đổi liên quan đến máy chủ:
- Hệ điều hành máy chủ đã được cài đặt lại hoặc nâng cấp
- Máy chủ đã được xây dựng lại hoặc khôi phục từ bản sao lưu
- Cấu hình SSH của máy chủ đã được đặt lại
- Máy vật lý hoặc máy ảo đã được thay thế
- Di chuyển máy chủ sang phần cứng mới
Thay đổi cấu hình mạng:
- Các nhà cung cấp đám mây tái chế địa chỉ IP theo thời gian hoặc các tuyến kết nối của bạn thông qua bộ cân bằng tải.
- DHCP đã gán lại địa chỉ IP cho một máy khác
- IP của máy chủ ngừng hoạt động đã được gán cho một hệ thống mới
- Bản ghi DNS đã được cập nhật để trỏ đến một máy chủ khác

Các hành động quản lý chính:
- Quản trị viên hệ thống đã tạo lại khóa máy chủ theo cách thủ công vì mục đích bảo mật
- Phần mềm máy chủ SSH đã được cài đặt lại
- Chính sách bảo mật yêu cầu xoay vòng khóa
Điều quan trọng cần nhận ra là việc thay đổi mật khẩu người dùng không ảnh hưởng đến khóa máy chủ. Chúng đại diện cho các cơ chế xác thực riêng biệt. Khóa máy chủ chỉ thay đổi khi bản thân máy chủ hoặc cấu hình SSH của nó bị sửa đổi.
Khi nào cần thực hiện cảnh báo một cách nghiêm túc
Mặc dù nhiều thay đổi về khóa máy chủ là hợp pháp nhưng điều này có thể cho thấy mối đe dọa bảo mật thực sự. Bạn nên quan tâm nếu:
- Bạn không thực hiện bất kỳ thay đổi nào đối với máy chủ hoặc không biết về bất kỳ lịch bảo trì nào
- Bạn không thể xác minh lý do thay đổi khóa với quản trị viên máy chủ
- Máy chủ được truy cập qua mạng công cộng hoặc kết nối không đáng tin cậy
- Bạn đang kết nối với hệ thống sản xuất hoặc máy chủ chứa dữ liệu nhạy cảm

Các cuộc tấn công xen giữa tuy tương đối hiếm nhưng vẫn xảy ra. Trong các cuộc tấn công như vậy, kẻ thù sẽ tự xác định vị trí giữa máy tính của bạn và máy chủ hợp pháp, chặn tất cả lưu lượng truy cập.
Lỗi của con người và kỹ thuật xã hội chiếm 68% các vi phạm an ninh, điều này khiến cho việc cảnh giác trở nên quan trọng. Bạn có thể bảo vệ hệ thống của mình hơn nữa bằng cách tìm hiểu về phòng chống tấn công vũ phu.
Số liệu thống kê gần đây của IBM cho thấy chi phí trung bình toàn cầu của một vi phạm dữ liệu là 4,44 triệu USD vào năm 2025, với thời gian phát hiện trung bình là 8 tháng. Điều này chứng tỏ tại sao cơ chế xác minh khóa máy chủ của SSH tồn tại và tại sao bạn không bao giờ nên bỏ qua những cảnh báo này mà không điều tra.
Cách xác minh xem cảnh báo có an toàn không
Trước khi tiếp tục khắc phục sự cố, hãy thực hiện các bước xác minh sau:

- Kiểm tra với nhóm của bạn: Nếu bạn chia sẻ quyền truy cập máy chủ, hãy hỏi đồng nghiệp xem họ có thực hiện thay đổi không
- Xem lại nhật ký máy chủ: Kiểm tra hồ sơ bảo trì hoặc nhật ký thay đổi cho hoạt động gần đây
- Liên hệ với nhà cung cấp dịch vụ lưu trữ của bạn: Nếu sử dụng dịch vụ đám mây, hãy xác minh xem có xảy ra bảo trì không
- Sử dụng kênh an toàn: Nếu có thể, hãy kết nối qua mạng bảo mật đã biết để xác minh dấu vân tay
- So sánh dấu vân tay: Một số nhà cung cấp dịch vụ lưu trữ hiển thị dấu vân tay SSH hiện tại trong bảng điều khiển của họ
Nếu bạn có thể xác nhận rằng thay đổi khóa là hợp pháp, bạn có thể tiến hành xóa khóa cũ và chấp nhận khóa mới một cách an toàn.
Nếu bạn muốn tránh việc gán lại IP động hoặc xung đột khóa máy chủ, cơ sở hạ tầng bạn chọn đóng một vai trò lớn.
Cloudzy cung cấp Lưu trữ VPS SSH với các IP tĩnh chuyên dụng. Bạn chạy trên bộ xử lý AMD Ryzen 9 với bộ lưu trữ NVMe để thực thi lệnh ngay lập tức. Mạng của chúng tôi đạt 40 Gbps trên 12 địa điểm trên toàn cầu. Ngoài ra, chúng tôi còn bao gồm tính năng bảo vệ DDoS miễn phí để giữ an toàn cho kết nối của bạn.
Cách khắc phục lỗi “Nhận dạng máy chủ từ xa đã thay đổi”
Cách khắc phục rất đơn giản: xóa bản ghi khóa cũ khỏi hệ thống của bạn. Thao tác này sẽ xóa thông tin không khớp và cho phép bạn lưu khóa mới vào lần kết nối tiếp theo. Hãy xem hướng dẫn của chúng tôi trên Máy khách SSH để có thêm công cụ.
Ngoài ra, bạn có thể thực hiện việc này bằng một lệnh duy nhất hoặc bằng cách chỉnh sửa tệp theo cách thủ công.
Cách 1: Dòng lệnh (Nhanh nhất)
Phương pháp này hoạt động với macOS, Linux và Windows 10+ (sử dụng OpenSSH). Đó là cách nhanh nhất để giải quyết lỗi. Để biết thêm thông tin, bạn có thể đọc trang man ssh-keygen.
- Mở thiết bị đầu cuối của bạn.
- Chạy lệnh này (thay thế tên máy chủ với IP hoặc miền của máy chủ của bạn):
ssh-keygen -R hostname
This command automatically finds the old key in your known_hosts file and deletes it. Method 2: Manual File Editing (macOS)
Nếu bạn thích một trình soạn thảo trực quan, bạn có thể tự xóa khóa. Thông báo lỗi thường cho bạn biết chính xác số dòng nào cần xóa.
Mở terminal của bạn và chỉnh sửa tập tin với nano:
nano ~/.ssh/known_hosts
Tìm dòng từ thông báo lỗi của bạn. Xóa nó rồi nhấn Ctrl + X Và Y để tiết kiệm.

Giải pháp cho Windows
Người dùng Windows thường sử dụng ứng dụng khách OpenSSH tích hợp hoặc PuTTY.
Tùy chọn 1: Windows OpenSSH (Windows 10/11)
Trên Windows 10 và 11, OpenSSH là một tính năng tùy chọn. Thêm nó thông qua Cài đặt > Ứng dụng > Tính năng tùy chọn. Máy chủ 2025 bao gồm máy khách nhưng bạn phải bật nó lên.
Nếu bạn sử dụng PowerShell hoặc Dấu nhắc Lệnh, ssh-keygen lệnh từ Phương pháp 1 cũng hoạt động ở đây.
Thay vào đó, để chỉnh sửa tệp theo cách thủ công:
- Nhấn Phím Windows + R.
- Kiểu %Hồ sơ người dùng%\.ssh và nhấn Đi vào.
- Mở đã biết_hosts tập tin bằng Notepad.
- Xóa dòng gây ra lỗi và lưu file.
Để quản lý khóa đúng cách, hãy xem hướng dẫn của chúng tôi về tạo khóa SSH trong Windows.
Tùy chọn 2: Sử dụng PuTTY
PuTTY lưu trữ khóa trong Windows Sổ đăng ký thay vì tệp.
- Mở Trình chỉnh sửa Sổ đăng ký (Nhấn Phím Windows + R, kiểu regedit, và đánh Đi vào).
- Điều hướng đến: HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\SshHostKeys\
- Tìm mục nhập khớp với tên máy chủ hoặc IP của máy chủ của bạn.
- Nhấp chuột phải vào nó và chọn Xóa bỏ.

Giải pháp cho Linux
các ssh-keygen lệnh chúng tôi đã đề cập trong Phương pháp 1 là cách tiêu chuẩn để khắc phục điều này trên Linux. Nó nhanh chóng và được hỗ trợ nguyên bản.
Chỉnh sửa thủ công
Nếu bạn muốn xem nội dung tệp, bạn có thể chỉnh sửa nó bằng trình soạn thảo văn bản như Nano.
- Mở thiết bị đầu cuối của bạn.
- Kiểu nano ~/.ssh/known_hosts và nhấn Đi vào.
- Tìm số dòng được đề cập trong thông báo lỗi của bạn.
- Xóa dòng rồi nhấn Ctrl + X Và Y để tiết kiệm.
Bạn cũng có thể sử dụng vim (vim ~/.ssh/known_hosts) nếu bạn quen thuộc với nó.

Cảnh báo về việc vô hiệu hóa kiểm tra
Bạn có thể buộc SSH kết nối mà không cần xác minh, nhưng điều này rất rủi ro. Nó bỏ qua sự bảo vệ chống lại các cuộc tấn công trung gian.
Chỉ sử dụng phương pháp này để thử nghiệm cục bộ trên các mạng đáng tin cậy. Đối với macOS và Linux, hãy gõ cái này:
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null [email protected]
Nếu bạn đang dùng Windows, đường dẫn Unix không thành công. Bạn phải sử dụng KHÔNG để thực hiện công việc bỏ qua:
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=NUL [email protected]
Không chạy các phần ghi đè này trên các kết nối công cộng hoặc máy chủ trực tiếp.
Việc sửa khóa không khớp là công việc bảo trì định kỳ nhưng bạn có thể làm nhiều việc hơn để bảo mật kết nối của mình. Bot thường nhắm mục tiêu vào cổng 22 mặc định bằng các cuộc tấn công vũ phu. Bạn có thể tránh hầu hết tiếng ồn xung quanh này bằng cách thay đổi cổng SSH trong Linux đến một điều gì đó ít dự đoán hơn.

Không bao giờ sử dụng phương pháp này cho các máy chủ sản xuất hoặc trên các mạng không đáng tin cậy.
Cách ngăn chặn thông báo “Nhận dạng máy chủ từ xa đã thay đổi” vào lần tới
Mặc dù không phải lúc nào bạn cũng có thể ngăn chặn những thay đổi hợp pháp về khóa máy chủ nhưng bạn có thể giảm thiểu tình trạng gián đoạn và duy trì các biện pháp bảo mật tốt hơn.
Hướng dẫn tham khảo nhanh
| Vai trò của bạn | Chiến lược chính |
| Quản trị viên hệ thống | Sao lưu chìa khóa, thay đổi tài liệu, sử dụng chứng chỉ và xoay chìa khóa thường xuyên |
| Người dùng thông thường | Duy trì hàng tồn kho, xác minh thông qua các kênh an toàn và theo dõi nhật ký |
| Môi trường đám mây
Người dùng |
Sử dụng tên DNS, tận dụng các công cụ của nhà cung cấp và triển khai cơ sở hạ tầng dưới dạng mã |

Dành cho quản trị viên hệ thống
Sao lưu khóa máy chủ: Lưu khóa từ /etc/ssh/ trước khi cài đặt lại hệ điều hành. Khôi phục chúng sau đó để ngăn cảnh báo cho người dùng của bạn.
Tài liệu thay đổi theo kế hoạch: Cảnh báo người dùng trước khi thay đổi chìa khóa và chia sẻ dấu vân tay mới một cách an toàn. Điều này cho phép họ xác minh kết nối.
Sử dụng chứng chỉ SSH: Các nhóm lớn nên sử dụng cơ quan cấp chứng chỉ trung tâm. Điều này đánh dấu các khóa máy chủ và loại bỏ nhu cầu xác minh thủ công.
Thực hiện xoay vòng khóa: Lên lịch thay đổi khóa máy chủ của bạn. Những cập nhật có thể dự đoán trước sẽ dễ dàng được nhóm của bạn xử lý hơn những cập nhật bất ngờ.
Dành cho người dùng thông thường
Duy trì hàng tồn kho: Lưu giữ hồ sơ cá nhân về dấu vân tay của máy chủ hoặc sử dụng tài liệu bảo mật của nhóm bạn.
Xác minh qua Out-of-Band: Xác nhận khóa dựa vào nguồn đáng tin cậy như bảng điều khiển đám mây chứ không phải tin nhắn thông thường.
Nhật ký giám sát: Kiểm tra nhật ký SSH cục bộ của bạn thường xuyên để tìm các kiểu kết nối lạ hoặc lỗi lặp lại.
Sử dụng Quản lý cấu hình: Sử dụng tệp cấu hình SSH để xử lý môi trường nhà phát triển động mà không làm giảm cài đặt bảo mật.
Dành cho môi trường đám mây năng động
Sử dụng tên DNS: Kết nối bằng tên máy chủ thay vì IP. Điều này duy trì tính nhất quán khi địa chỉ cơ bản thay đổi.
Tận dụng các công cụ đám mây: Sử dụng bảng điều khiển của nhà cung cấp để truy xuất dấu vân tay hiện tại. Xác minh khóa dựa trên các công cụ này trước khi chấp nhận thay đổi.
Cơ sở hạ tầng dưới dạng mã: Tự động xác minh khóa bằng các công cụ như Terraform. Đối với các thiết lập nâng cao, bạn cũng có thể sử dụng proxy SSH SOCKS5.
Máy chủ pháo đài: Thiết lập máy chủ nhảy với các phím ổn định. Chúng hoạt động như các điểm vào an toàn cho cơ sở hạ tầng động của bạn.
Phần kết luận
“Cảnh báo: Nhận dạng máy chủ từ xa đã thay đổi” đóng vai trò là một tính năng bảo mật quan trọng của SSH, không phải là một lỗ hổng có thể bỏ qua. Mặc dù cảnh báo này thường xuất hiện vì những lý do chính đáng như bảo trì máy chủ hoặc thay đổi cấu hình nhưng nó đóng vai trò quan trọng trong việc bảo vệ bạn khỏi các cuộc tấn công trung gian và truy cập trái phép.
Khi bạn gặp cảnh báo này, hãy xác minh nguyên nhân trước khi tiếp tục. Trong hầu hết các trường hợp, giải pháp rất đơn giản: xóa khóa máy chủ cũ bằng các phương pháp được nêu cho hệ điều hành của bạn, sau đó chấp nhận khóa mới trong kết nối tiếp theo của bạn.
Bằng cách tìm hiểu cách hoạt động của khóa máy chủ SSH và làm theo các phương pháp hay nhất, bạn có thể duy trì cả tính bảo mật và sự tiện lợi trong quy trình truy cập từ xa của mình. Để biết thêm về cách truyền tệp một cách an toàn, hãy xem sao chép tập tin qua SSH.