ssh из порта 80 для портирования 22?

Я ломал голову об этом некоторое время. Я нашел решение, которое я продолжаю забывать, таким образом, я собираюсь отправлять его.

В Вашем /etc/X11/xorg.conf файл, добавляет этот раздел:

Section "ServerFlags"
    Option    "blank time" "0"
    Option    "standby time" "0"
    Option    "suspend time" "0"
    Option    "off time" "0"
EndSection

Все другие предложения как xset и xterm не работал на меня.

2
17.01.2014, 00:49
2 ответа

Является странным, что Ваше исходящее только позволяет порт 80, но безотносительно. Можно перенаправить все соединения с портом 80, чтобы портировать 22 использования iptables или заставить сервер SSH послушать порт 80 также.

Используя iptables:

iptables -t nat -I PREROUTING --src 0/0 --dst YOURSERVERIP -p tcp --dport 80 -j REDIRECT --to-ports 22

Изменение сервера ssh конфигурация:

sed '/\#Port\ 22/Port 80/' /etc/ssh/sshd_config | grep 80

Если все в порядке, используйте:

sudo sed -i '/\#Port\ 22/Port 80/' /etc/ssh/sshd_config
3
27.01.2020, 22:00
  • 1
    я мог составить набор IPtables от этого уникального для ssh? Я не хочу, чтобы мой просмотр веб-страниц и irc пошли из окна с ним lol –  Peace Blaster 17.01.2014, 07:40
  • 2
    , Найденный этим: wiki.archlinux.org/index.php / …, но не уверен, насколько безопасный моим соединением SSH будет после этого Попытка –  Peace Blaster 17.01.2014, 07:49

Во-первых, мне кажется, я неправильно читаю ваш вопрос. Я понимаю, что это означает, что вам разрешен только исходящий трафик на порт 80. Для меня это означает, что вам нужно общаться с порта 80 на порт 22 вашего сервера. К счастью, это вполне возможно с использованием backpipes и netcat. Вот процесс:

Сначала создайте обратную трубу:

# mknod backpipe p

Затем создайте прослушиватель netcat, который соединяет вашу обратную трубу и отправляет информацию из порта по вашему выбору (80) в порт по вашему выбору (22):

# nc -l -p 222 0<backpipe | nc -p 80 SERVERIP 22 | tee backpipe

Наконец, просто подключитесь к порту прослушивания!

# ssh (hidden) -p 222


Вот разбивка линии обратной связи для любопытных:

nc -l -p 222 0<backpipe

Это настраивает прослушиватель netcat, который прослушивает порт 222 (вы можете изменить это на любой порт, который хотите, Я просто выбрал 222) и отправил все данные в вашу трубку.

nc -p 80 SERVERIP 22

Это устанавливает порт источника 80 на порт 22 SERVERIP. Это соединение, которое OP хотел в своем сообщении, но мы хотим передать SSH-соединение через это, поэтому возникла необходимость в обратном трубопроводе.

tee backpipe

Это отправляет ваш STDOUT в обратную трубу, а также на ваш терминал. Если вы не хотите видеть данные, вы можете заменить их этой строкой:

# nc -l -p 222 0<backpipe | nc -p 80 SERVERIP 22 1> backpipe
1
27.01.2020, 22:00

Теги

Похожие вопросы