7

Я могу переслать локальные порты, используя команду ниже

ssh> help
Commands:
      -L[bind_address:]port:host:hostport    Request local forward
      -R[bind_address:]port:host:hostport    Request remote forward
      -KR[bind_address:]port                 Cancel remote forward

ssh> -L 8080:localhost:8080
Forwarding port.

Но как отменить этот порт вперед? Я вижу -KR для отмены удаленных пересылок, но, похоже, не существует -KL для отмены моей локальной переадресации.

Запрос другого пересылки на тот же порт (в надежде переопределить старый) выдает это сообщение

ssh> -L 8080:localhost:8081
bind: Address already in use
channel_setup_fwd_listener: cannot listen to port: 10101

3 ответа3

5

в более поздних версиях (open)ssh также есть команда escape для отмены локальных пересылок:

ssh> help
Commands:
      -L[bind_address:]port:host:hostport    Request local forward
      -R[bind_address:]port:host:hostport    Request remote forward
      -D[bind_address:]port                  Request dynamic forward
      -KL[bind_address:]port                 Cancel local forward
      -KR[bind_address:]port                 Cancel remote forward
      -KD[bind_address:]port                 Cancel dynamic forward
3

Нет простого способа сделать это в командной строке.

Вы можете найти PID:

$ ps x | grep ssh
 1234 ?        Ss     0:00 ssh -f -N -L 8080:localhost:8080 remotehost

А затем убить процесс:

$ kill 1234
2

Кажется, нет другого выхода, кроме как выйти из соединения и начать все сначала. Я бы хотел оказаться неправым ...

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .