Dòng lệnh SSH khởi động lại Mac OSX Mountain Lion


62

Làm cách nào tôi có thể khởi động lại dịch vụ SSH thông qua dòng lệnh trên Mac OSX Mountain Lion?

Sử dụng ps aux | grep 'ssh', tôi đã có thể suy luận rằng quá trình này rất có thể /usr/sbin/sshd.

Từ đây tôi đã tìm kiếm tài liệu sshd để tham khảo 'khởi động lại' nhưng không tìm thấy.

Tôi không biết bước tiếp theo của mình là gì.


4
Bạn thực sự đang cố gắng để đạt được điều gì? Nếu đó là một cái gì đó giống như tải lại cấu hình sshd, bạn không cần phải - launchd bắt đầu một quy trình sshd mới theo yêu cầu khi nhận được kết nối đến, điều đó có nghĩa là cấu hình sẽ tự động đọc lại cho mỗi kết nối mới. OTOH, nếu bạn đang cố gắng thay đổi cài đặt trình nghe, những cài đặt đó được điều khiển bởi launchd hoàn toàn không phải là cấu hình sshd (xem tại đây ).
Gordon Davisson

1
Đây chỉ là một thử nghiệm gỡ lỗi yêu cầu mật khẩu từ ssh được cho là không mật khẩu bằng khóa công khai. Hóa ra điều tôi đã bỏ lỡ là tắt StrictMode
James Webster

Câu trả lời:


42

Xem câu trả lời này cho một câu hỏi tương tự trên ServerFault. Lệnh nên giống nhau trong Mountain Lion.

Bạn có thể dừng dịch vụ bằng cách sử dụng tiểu ban 'dỡ tải'.

sudo launchctl unload  /System/Library/LaunchDaemons/ssh.plist

Cập nhật được đề xuất bởi @MattClark: Để khởi động lại dịch vụ sử dụng loadsau unload:

sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist

Lưu ý rằng các phiên SSH hiện tại sẽ bị chấm dứt, vì vậy bạn cần chạy phiên độc lập này với phiên người dùng hiện tại.


Cái này giúp tôilaunchctl: Error unloading: com.openssh.sshd
Nicolas Miari

1
@MattClark Sau đó tôi khuyên bạn nên tránh xa các máy sản xuất cho đến khi bạn cải thiện khả năng đọc hiểu của mình. Từ câu trả lời của tôi: "Bạn có thể DỪNG dịch vụ ..." (nhấn mạnh của tôi).
Ansgar Wiechers

3
Bạn đã đúng, tôi đã đọc sai điều này, đó là lỗi của tôi. Tuy nhiên, điều này cũng không trả lời câu hỏi như nó đã được hỏi.
Matt Clark

Bạn có thể chạy nó trong một lần với Cx Ce (C là viết tắt của Control). Dán nó vào thiết bị đầu cuối, sau đó Cx Cc để thực thi lệnh giết emacs, nó sẽ nhắc bạn lưu. Tôi đã làm điều này từ xa và nó không giết kết nối của tôi ... với cấu hình của bạn là chính xác.
Ray Foss

92

Không có lý do gì để 'dỡ' dịch vụ sshd, khi thay vào đó bạn chỉ có thể 'Dừng' dịch vụ sshd. Nó sẽ tự khởi động lại.

sudo launchctl stop com.openssh.sshd

2
trên sư tử núi:launchctl stop error: No such process
RickyA

1
@RickyA: Hoạt động tốt trên OSX Mavericks
neu242

Không hoạt động ở đây ( launchctl stop error: No such process)
Nicolas Miari

1
Bạn cần phải sudovì đó là cách nó được đưa ra. So sánh các daemon / tác nhân đang chạy launchctl list | grep -i opensshvới sudo launchctl list | grep -i openssh. Để tham khảo hãy đọc liên kết
glenschler

Điều này không còn hoạt động trong OS X Yosemite, cố gắng dừng sshd (với quyền root) dẫn đến trạng thái thoát 3 và dịch vụ tiếp tục chạy.
RCross

4

Tôi không thể xác nhận câu trả lời của Ansgar có hiệu quả vì không có tin nhắn / dấu hiệu rõ ràng nào mặc dù tôi tự tin là có.

Tôi cũng tìm thấy killall sshdcái nào giết chết và khởi động lại các quá trình sshd với nhược điểm là mọi kết nối đều bị dừng.

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.