Khởi động lại SSH trên máy trong đó SSH là chế độ truy cập duy nhất


29

Tôi đã thực hiện một số thay đổi đối với tệp sshd_config và do đó cần phải khởi động lại. Tôi đang tìm kiếm các mẹo để khởi động lại ssh một cách an toàn khi có quyền truy cập vật lý vào máy chủ sẽ là một Pita huga.

Câu trả lời:


42

Khởi động lại sshd trong khi đăng nhập qua ssh sẽ không ngắt kết nối ssh của bạn.

Nếu bạn lo lắng về cấu hình của mình, hãy đăng nhập một vài lần qua ssh và khởi động lại. Nếu bạn không còn có thể ssh in, với các kết nối mới, bây giờ bạn có quyền truy cập để khắc phục sự cố.

Được đề cập dưới đây trong một nhận xét của @Milan Babuškov: sshd -tsẽ kiểm tra cấu hình của bạn về tính chính xác của cú pháp, nếu bạn thực sự muốn chắc chắn.

Một đề nghị khác, bởi @Ronald Pottol là thiết lập một cronnhiệm vụ để khởi động lại máy chủ với cấu hình hoạt động đã biết. Có lẽ quá mức cần thiết, nhưng nếu bạn đang cập nhật một máy chủ quan trọng, v.v ... đôi khi bạn không bao giờ có thể quá cẩn thận.


Đó là khá dễ dàng, có ý nghĩa quá. Cảm ơn đã trả lời thực sự nhanh chóng. FYI những thay đổi tôi đang thực hiện có hiệu quả lớn;)
Mitch


6

Nếu bạn có quyền truy cập vào phần cứng, bạn có thể xem xét đặt một thiết bị đầu cuối trên cổng nối tiếp / dev / ttyS0. Sau đó, bạn có thể có một cửa sau vào máy chủ của bạn.

chỉ cần thêm

SO:2345:respawn:/sbin/mingetty ttySO

đến / etc / inittab của bạn và một thiết bị đầu cuối sẽ sinh ra trên cổng nối tiếp của bạn. Bạn có thể sử dụng bộ tập trung cổng nối tiếp hoặc sử dụng modem null từ máy chủ bên cạnh.


Mát mẻ! Đây có phải là một thực hành khá chuẩn?
Mitch

3
Khá chuẩn, miễn là bạn có cách kết nối với máy đó là máy chủ đầu cuối nối tiếp.
Kamil Kisiel

2
Có thể nhưng do ảo hóa nên không cần thiết vì bạn có thể quản lý thông qua Hypervisor. Một điều thú vị nữa là nếu BIOS hỗ trợ thì đó là "Chuyển hướng giao diện điều khiển", điều này sẽ hiển thị tất cả các màn hình BIOS thông qua bảng điều khiển nối tiếp của bạn. GRUB cũng có khả năng hiển thị lên bàn điều khiển nối tiếp. Vì vậy, không cần video từ xa để xem liệu máy chủ của bạn sẽ trở lại trực tuyến.
keithosu

4

Đừng lo lắng, phiên hiện tại của bạn sẽ không bị ngắt kết nối, ngay cả khi có vấn đề với cấu hình mới.

Sau khi áp dụng cấu hình mới và khởi động lại sshd, chỉ cần thử đăng nhập một vài lần và xem các bản ghi để xem mọi thứ có ổn không.


3

Hoặc, sử dụng một cron hoặc tại nơi làm việc để bắt đầu sao lưu, nếu bạn cảm thấy không may mắn?


cronhoặc atsẽ hoạt động, để sao chép một 'đã biết' hoạt động, tức là cấu hình cũ, quay lại và sau đó thực hiện khởi động lại dịch vụ ...
cpbills

1

Bạn có thể không chạy kill -HUP trong bộ dịch vụ SSH không? Nó không sạch nhưng nó hoạt động


2
Thông thường, SIGHUP cách sạch để tải lại cấu hình của daemon.
grawity

sạch trong trường hợp này. Từ nguồn có thẩm quyền: sshd đọc lại tệp cấu hình của nó khi nhận được tín hiệu gác máy, SIGHUP
Stéphane Gourichon

1
pkill -HUP sshdđóng kết nối của tôi. Điều này đã làm việc:kill -HUP $(pgrep -f /usr/bin/sshd)
Tom Hale

0

Tôi đã thấy rằng ngày nay sshdkhông ngắt kết nối các phiên của bạn khi khởi động lại, đặc biệt khi đó là bản phân phối dựa trên Redhat. Bạn luôn có thể viết một tập lệnh nhỏ sẽ tự động khôi phục sshdcấu hình của bạn từ bản sao lưu và khởi động lại sshdsau 5 phút dưới dạng cronhoặc một atcông việc. Điều này sẽ đảm bảo rằng ngay cả khi bạn bị ngắt kết nối, bạn có thể quay lại máy chủ của mình ít nhất.


-1

Tôi không khuyên bạn nên khởi động lại / tải lại SSHD trên kết nối sshd. Tôi đã thấy nhiều lần sshd sẽ không khởi động lại do lỗi cú pháp trong sshd_config.

Mặc dù mọi thứ đều ổn với tệp cấu hình, nhưng nó có rủi ro.


9
Bạn có thể sử dụng sshd -t để kiểm tra tệp cấu hình trước.
Milan Babuškov

Cảm ơn Milan, tôi đã nhanh chóng xem xét con người về một lựa chọn như thế, trong Apache - vì vậy tôi phải quá tập trung vào -s.
Mitch

Tôi sẽ tiếp thu bình luận của bạn vào câu trả lời của tôi, cũng như khi sshd chấm dứt, nó không làm giảm các phiên ssh mở, nhưng thật tốt khi biết cú pháp của bạn là hợp lệ, nếu bạn đang đổ mồ hôi.
cpbills
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.