Điểm:1

Cách truy xuất hoặc tạo lại tệp đã xóa từ thư mục /etc/ssh

lá cờ kz

bên trong /etc/ssh thư mục tồn tại nội dung sau:

moduli sshd_config ssh_host_ecdsa_key ssh_host_ed25519_key ssh_host_rsa_key ssh_import_id
ssh_config sshd_config.ucf-dist ssh_host_ecdsa_key.pub ssh_host_ed25519_key.pub ssh_host_rsa_key.pub

Tôi có thể thấy thực tế hai loại:

  1. khóa công khai/riêng tư
  2. tập tin cấu hình

Nếu bất kỳ tệp nào cho bất kỳ danh mục nào trong số này bị xóa do nhầm lẫn.

Làm thế nào tập tin đó có thể được tạo lại? Có thể không?, Làm thế nào? nó theo từng loại (1 hoặc 2)

lá cờ in
Nếu bạn lo ngại rằng các tệp này có thể bị xóa "do nhầm lẫn", tôi thực sự khuyên bạn nên thực hiện một trong hai điều sau: (1) có các bản sao lưu *thực sự* tốt với quy trình tự động chạy thường xuyên (2) thực hiện bất kỳ hoạt động phá hoại nào mà bạn dự định thực hiện sử dụng trong một máy ảo *đầu tiên*, sau đó chạy chúng trên hệ thống của bạn sau khi xác nhận rằng không xảy ra lỗi. Tôi đã sử dụng Linux từ giữa những năm 90 và không thể nghĩ đến một lần tôi đã xóa bất kỳ thứ gì trong `/etc/ssh` "do nhầm lẫn" ...ngoài những lần tôi phá hủy các phân vùng bằng lệnh `dd` được viết kém ...
user535733 avatar
lá cờ cn
Khóa cũ không thể được xây dựng lại (điều đó sẽ đánh bại toàn bộ mục đích xác thực dựa trên khóa). Bạn phải tạo một khóa mới. "*bị xóa do nhầm lẫn*" là lý do tại sao bạn có bản sao lưu.
Manuel Jordan avatar
lá cờ kz
Tôi biết rằng `/etc/ssh` yêu cầu mật khẩu root/admin - nhưng tôi tò mò liệu có cách nào để tạo lại các tệp đó (chủ yếu là về các khóa) - theo `Bạn phải tạo khóa mới` là có thể - điều đó các tệp rất khác với thư mục `.ssh` - vì vậy tôi cho rằng các lệnh khác sẽ hoạt động
lá cờ in
Các khóa phải là duy nhất nếu chúng được sử dụng. Nếu một người có thể tạo lại chúng, thì mã hóa sẽ là chuyện hoang đường.
Manuel Jordan avatar
lá cờ kz
Đã hiểu - nhưng có thể tạo những cái mới với các giá trị mới không? - trong trường hợp này, khách hàng phải cập nhật các tệp `known_hosts` của họ theo các giá trị mới (đối với kết nối mới - lần đầu tiên khi họ nhận được dấu vân tay của máy chủ) - Tôi có đúng không?
user535733 avatar
lá cờ cn
Bạn có thể tạo bao nhiêu khóa mới tùy thích. Tạo khóa mới là tầm thường. Hãy rõ ràng khi bạn nói "máy khách": Máy khách ssh có khóa riêng không thể sao chép được. Máy chủ ssh chỉ có khóa chung. Máy khách ssh phải truyền khóa chung mới (tương ứng với khóa riêng mới) đến máy chủ ssh. Điều này thường yêu cầu sự trợ giúp của quản trị viên, vì máy khách ssh không thể đăng nhập cho đến khi khóa chung mới được cài đặt trong máy chủ ssh. Đó không phải là một hoạt động tầm thường...trừ khi bạn cũng là quản trị viên của máy chủ ssh.
Manuel Jordan avatar
lá cờ kz
Có về _client_ (`.ssh`), nơi tôi có thể tạo cặp khóa bất kỳ lúc nào và gửi/đặt giá trị của khóa chung vào tệp `.ssh/authorized_keys` trong máy chủ- nhưng ở đây bài đăng là về máy chủ , trong đó trong thư mục `/etc/ssh` có một số giá trị khóa được gửi cho máy khách cho kết nối ssh đầu tiên của họ - một giá trị về dấu vân tay (ECDSA) và giá trị còn lại là bản sao khóa công khai của máy chủ tới `.ssh/known_hosts` trong máy khách
user535733 avatar
lá cờ cn
Bạn đang cố ngăn cảnh báo dấu vân tay trên ứng dụng khách ssh?
muru avatar
lá cờ us
Điều này có trả lời câu hỏi của bạn không? [Làm cách nào tôi có thể khôi phục tệp cấu hình?](https://askubuntu.com/questions/66533/how-can-i-restore-configuration-files) và https://askubuntu.com/questions/600584/error-could -not-load-host-key-khi-cố-tạo-ssh-host-keys
Điểm:3
lá cờ cn

Trong Ubuntu, các tệp cấu hình máy khách/máy chủ OpenSSH là:

  • /etc/ssh/sshd_config - tệp cấu hình của máy chủ SSH (daemon). Các tệp cấu hình bổ sung có thể được thêm vào thư mục /etc/ssh/sshd_config.d/ và phần mở rộng tệp của chúng phải là .conf (những thứ này được gọi vào đầu /etc/ssh/sshd_config).

  • /etc/ssh/ssh_config - tệp cấu hình toàn hệ thống cho máy khách SSH, cài đặt trong tệp này được áp dụng cho tất cả người dùng. Các tệp cấu hình bổ sung có thể được thêm vào thư mục /etc/ssh/ssh_config.d/ và phần mở rộng tệp của chúng phải là .conf (những thứ này được gọi vào đầu /etc/ssh/ssh_config).

  • ~/.ssh/config - một tệp cấu hình cá nhân cho máy khách SSH. Tệp này nằm trong thư mục chính của người dùng trong một thư mục đặc biệt có tên .ssh. Bản thân thư mục phải có quyền riêng tư (700) và các tệp bên trong cũng phải ở chế độ riêng tư (600).

Các khóa công khai/riêng tư thuộc quyền sở hữu của người dùng, do đó chúng là riêng tư :) Theo mặc định, chúng nằm trong thư mục của người dùng ~/.ssh.

Trong câu trả lời này của tôi ở phần 1 và 2 được mô tả cách thiết lập xác thực SSH dựa trên khóa: https://askubuntu.com/a/986245/566421

Dưới đây là một ví dụ về trường hợp các khóa SSH không nằm trong thư mục chính của người dùng: https://askubuntu.com/a/882379/566421

Nếu bạn muốn tạo lại thư mục /etc/ssh bạn có thể xóa máy khách và máy chủ OpenSSH sau đó cài đặt lại chúng (nhưng bạn có thể không cần điều này):

cập nhật sudo apt
Sudo apt purge openssh-client openssh-server
sudo rm -R /etc/ssh
Sudo apt cài đặt openssh-client openssh-server
Manuel Jordan avatar
lá cờ kz
Trên thực tế, cái mới nhất có vẻ thiết thực hơn - nhưng tất nhiên tất cả các máy khách phải cập nhật các khóa mới của máy chủ - nó dành cho kịch bản cho một mạng LAN nhỏ

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.