Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (2)

Наибольший вклад в теги

Все теги (4)

Лучшие ответы пользователя

Все ответы (3)
  • ProxyCommand в SSH

    ParkeTg
    @ParkeTg Автор вопроса
    Итак, я все же решил проверить, что там творится с пайпами ( говорить «трубами» язык не поворачивается ).
    Запускаем ssh, без указания опции ProxyCommand:

    ssh root@0.0.0.0
    

    В соседней владке терминала смотрим, пытаемся отгрепать все открытые процессом пайпы:

    lsof | grep -E "^ssh.*FIFO"
    

    И ничего, пустота. Не удивительно, мы ведь ничего не пишем в stdin. Давайте попробуем что-то пописать:

    pv /dev/zero | ssh root@0.0.0.0 "cat > /dev/null"
    

    Прогресс-бар зашевелился, переходим в соседнюю вкладку, и снова пытаемся отгрепать

    lsof | grep -E "^ssh.*FIFO" 
    

    В ответ получаем:
    ssh       23782       svon    0r     FIFO           0,8       0t0   2401849 pipe
    ssh       23782       svon    4r     FIFO           0,8       0t0   2401849 pipe
    

    Так, отлично, ssh читает из stdout (0r), и еще откуда-то(4r). На этом этапе еще интересно посмотреть, какие TCP подключения использует ssh. Отгрепаем по TCP:

    lsof | grep -E "^ssh.*TCP" 
    

    На выходе получим:
    ssh  24344  svon  3u  IPv4  2432025  0t0  TCP  arch:59472->super-vps.hell:ssh (EST.)
    

    Далее, запускаем ssh в связке с netcat (ProxyCommand )

    ssh -o "ProxyCommand nc %h %p" root@0.0.0.0
    

    Идем в соседнюю вкладку и опять грепаем, но только уже и netcat тоже:
    
    lsof | grep -E "(^ssh|^nc).*FIFO" 
    

    И, что у нас на выходе?
    ssh       24899       svon    4w     FIFO           0,8       0t0   2449781 pipe
    ssh       24899       svon    5r     FIFO           0,8       0t0   2449782 pipe
    nc        24900       svon    0r     FIFO           0,8       0t0   2449781 pipe
    nc        24900       svon    1w     FIFO           0,8       0t0   2449782 pipe
    


    А вот что. И если мы внимательно посмотрим на номера нод, то мы заметим.
    Что 4w (ssh ?) пишет в 0r (netcat stdin), а 5r (ssh ?) читает из 1w (netcat stdout).
    Забыли посмотреть подключения. Исправляем:

    lsof | grep -E "(^ssh|^nc).*IPv4" 
    

    И имеем в итоге:
    nc  24900  svon  3u  IPv4  2449789  0t0  TCP arch:59476->super-vps.hell:ssh (EST.)
     

    Видим, что из наших 2-х программ, подключение только одно, принадледжит оно неткету.

    Если посмотреть лог запуска ssh (с опциями -vvv), можно увидеть, что все прекрасно шифруется, и вообще, во всем мире — мир.

    Опираясь на факты, которые я привел выше, осмелюсь быть уверенным, что все работает именно по предполагаемой мной схеме (еще выше).

    Что нам это позволяет? Вообще, много чего, но мне интересно было пробросить ssh туннель, через тор на свою VPS. Зачем? Хотя бы потому, что это прикольно. Спасибо что читаете, жду дополнений.
    Ответ написан
    Комментировать
  • Порекомендуйте, пожалуйста, монитор

    ParkeTg
    @ParkeTg
    Я не художник, но все же. Пользуюсь монитором LG W2443S. Отличный монитор, уже пару лет работает как часы. Брал чуть меньше, чем за 200$. Монитор 24".
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (2)