Hủy cổng ssh về phía trước


4

Để truy cập các trang web của trường đại học bị hạn chế, tôi thường chạy lệnh sau:

ssh -fND port username@uni.address.here

Sau đó, tôi mở một hồ sơ firefox mà tôi đã thiết lập để đi qua cổng 5555 bằng proxy vớ. Tôi đã làm điều này bằng cách sử dụng cygwin ssh một thời gian và nó hoạt động tốt. Bây giờ tôi đang chạy nó trên Ubuntu và nó cũng hoạt động tuy nhiên dường như nó không kết thúc khi tôi đóng thiết bị đầu cuối. Tôi hiện không có thiết bị đầu cuối nào mở nhưng tôi vẫn có thể duyệt web bằng proxy vớ trên cổng 5555 và truy cập tất cả các trang bị hạn chế mà tôi không thể truy cập. Nếu tôi thay đổi số cổng hoặc hồ sơ firefox thì tôi không thể truy cập vào các tệp đó vì vậy kết luận duy nhất tôi có thể đưa ra là kết nối vẫn mở dẫn đến câu hỏi của tôi: Làm cách nào để tôi hủy bỏ điều này?

Câu trả lời:


4

Quá trình ssh vẫn phải được chạy. Nếu bạn biết chắc chắn rằng đây là quá trình ssh duy nhất đang chạy với tư cách là người dùng của bạn, bạn có thể làm

killall ssh

là người dùng của bạn. Tuy nhiên, sẽ an toàn hơn nhiều khi tìm đúng quy trình PID và tiêu diệt quy trình cụ thể đó - điều này tránh việc giết bất kỳ quy trình ssh nào khác đang chạy. Bạn có thể làm điều đó với một công cụ đồ họa hoặc:

ps -Afl|grep ssh

điều này sẽ cung cấp cho bạn một danh sách các quy trình - số đầu tiên sau tên người dùng trên mỗi dòng là PID. Sau đó giết nó:

kill PID

Trong đó PID là PID bạn tìm thấy ở trên.

Chỉnh sửa bởi người hỏi:

Thay vì giết thủ công bất cứ khi nào tôi làm điều này, tôi đã tạo một tệp shell mà người khác có thể thấy hữu ích:

ssh -fND port user@uni.address.here && firefox -P SSH && kill `ps -ef|grep "ssh -fND"|grep -v "grep"|cut -c10-15`

Lệnh firefox mở firefox với cấu hình SSH mà tôi phải tạo (nó chỉ có các cài đặt proxy cần thiết). Grep thứ hai trên các quy trình chỉ là để tránh tự hủy quá trình grep (mặc dù nghĩ về nó bây giờ có vẻ không cần thiết: grep sẽ kết thúc vào thời điểm nó sẽ bị giết).


Tôi đã thử một cái gì đó nhưng không thể tìm thấy quy trình phù hợp, cảm ơn vì sự giúp đỡ đã sửa nó. Nhưng bạn có thể giải thích tại sao nó không dừng lại khi tôi thoát khỏi thiết bị đầu cuối không? Có điều gì tôi có thể làm để ngăn chặn điều này thay vì tìm kiếm PID mỗi lần không? Cảm ơn
Paul

Thiết bị đầu cuối phải gửi tín hiệu tiêu diệt khác đến quy trình ssh - hoặc thậm chí không có tín hiệu nào cả! Tôi biết làm thế nào để làm ngược lại (làm cho các quá trình bỏ qua tín hiệu) nhưng điều này là lạ. Bạn đang sử dụng ứng dụng thiết bị đầu cuối nào? Thiết bị đầu cuối Gnome? xterm?
Robin Green

Chỉ cần thiết bị đầu cuối gnome tiêu chuẩn - mới cài đặt ngày hôm nay.
Paul

Có vẻ như lỗi này đã được sửa lại trong Jasyy Jackalope. Phiên bản Ubuntu nào bạn đang sử dụng?
Robin Green

Tải về nó chỉ ngày khác. Đó là lynx sáng suốt: 10.04 LTS
Paul
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.