Рейтинг:0

Сбой порта ssh для изменения облачных вычислений Oracle

флаг cn

Я новичок в облачных вычислениях и планирую использовать всегда бесплатную вычислительную службу от Oracle Cloud, чтобы получить общедоступный IP-адрес для запуска веб-сайта. В качестве базовой меры безопасности я требую, чтобы мои машины не прослушивали SSH на порту 22 по умолчанию, так как его слишком легко перехватить, а переключили его на новый порт, который я буду держать в секрете, но буду называть его NEWSSHPORT. Это особенно важно при использовании общедоступного IP-адреса. Моя проблема заключается в том, что после того, как я подключаюсь к машине по ssh, я проверяю, что брандмауэр (по умолчанию) отключен и поэтому пропускает весь трафик, а мой предпочтительный порт NEWSSHPORT не используется какой-либо другой службой. Я переключаю порт прослушивания на новый порт, перезагружаю службу ssh, проверяю, что у меня есть правило входа, разрешающее этот трафик на веб-сайте облака оракула для моей подсети. Я пытаюсь использовать ssh, используя новый порт, и время ожидания истекает, как и для любого другого порта. Вместо этого порт 22 по умолчанию дает отказ в соединении.

Этот вопрос похож на, но не то же самое, что: изменение порта ssh вызвало отказ в подключении

Что мне не хватает?

Создайте вычислительный экземпляр: Размещение по умолчанию Изображение: Canonical Ubuntu 18.04 Форма: VM.Standard.A1.Flex 4-ядерный OCPU, 24 ГБ памяти Сеть по умолчанию Сохраните закрытый ssh-ключ Объем книги по умолчанию Создайте экземпляр

Подождите, пока он будет предоставлен Скопируйте его общедоступный IP-адрес: 1.2.3.4.

SSH на порт 22 по умолчанию

ssh -i C:\path\to\saved\key\ssh-key-2021-12-14.key -p 22 [email protected]

Новый отпечаток пальца ECDSA. Сохрани это? Да SSH прошел успешно.

На машине: Проверить брандмауэр

$ статус sudo ufw

неактивен (это означает, что весь трафик разрешен)

Проверьте, какие порты уже используются:

UDP *:111
UDP *:932
TCP *:111 (СЛУШАТЬ)
UDP *:111
UDP *:932
TCP *:111 (СЛУШАТЬ)
УДП: 68
УДП: 53
УДП: 53
UDP: 53 (СЛУШАТЬ)
TCP :22 (СЛУШАТЬ)
TCP :22 (СЛУШАТЬ)
:22 -> mypc:myport (мое соединение ssh)

Мой предпочтительный порт для прослушивания SSH открыт/не используется другой программой.

Измените порт прослушивания ssh. и установите предпочтительное целое число порта.Я собираюсь сохранить это целое число в секрете из соображений безопасности, но я буду представлять его число строкой: NEWSSHPORT.

$ судо-ви /etc/ssh/sshd_config
Порт NEWSSHPORT

перезапустить службу ssh

$ sudo systemctl перезапустить sshd

проверьте, что ssh теперь прослушивает этот новый NEWSSHPORT:

$ судо lsof -i -P -n

сейчас такие есть:

sshd root IPv4 TCP *:NEWSSHPORT (СЛУШАТЬ)
sshd root IPv6 TCP *:NEWSSHPORT (СЛУШАТЬ)

дважды проверьте, что брандмауэр все еще не в сети:

$ статус sudo ufw
Статус: неактивен

Итак, подтверждено, что брандмауэр не включен, поэтому все разрешено. Подтверждено, что ssh теперь прослушивает новый порт: NEWSSHPORT как на IPv4, так и на IPv6 для TCP-трафика.

выйти из машины:

$ выход

Убедитесь, что ваша облачная подсеть Oracle разрешает трафик через ваш новый порт: Перейдите к вычислительному экземпляру > вкладка «Информация об экземпляре» > «Основной VNIC» > щелкните ссылку подсети, чтобы просмотреть ее подсеть. Список безопасности > Список безопасности по умолчанию. нажмите здесь. Убедитесь, что NEWSSHPORT имеет правило входа для IP 0.0.0.0/0, которое представляет собой нотацию CIDR для всех возможных IP-адресов. МОЕ текущее правило входа: Без гражданства: Нет, Источник: 0.0.0.0/0 Диапазон портов источника TCP: Все, Диапазон портов назначения: NEWSSHPORT, Тип и код: Я оставил пустым. Итак, трафик на вашем новом порту должен быть разрешен.

Момент истины:

ssh -i C:\path\to\saved\key\ssh-key-2021-12-14.key -p NEWSSHPORT [email protected]
ssh: подключение к порту хоста 1.2.3.4 NEWSSHPORT: время ожидания подключения истекло

но когда я пробую оригинальный порт 22:

ssh -i C:\path\to\saved\key\ssh-key-2021-12-14.key -p 22 [email protected]
ssh: подключиться к хосту 152.70.195.101, порт 22: соединение отклонено

и если я попробую какой-нибудь случайный порт, который ничего не прослушивает, и у меня нет правила подсети Oracle, которое можно было бы разрешить:

ssh -i C:\path\to\saved\key\ssh-key-2021-12-14.key -p 3456 [email protected]
ssh: подключиться к хосту 1.2.3.4, порт 3456: время ожидания подключения истекло

Вывод: похоже, что первоначальный трафик на порт 22, безусловно, проходит, но машина отклоняет его.Это правильный ответ, но при попытке использовать любой другой порт кажется, что трафик блокируется или отбрасывается где-то на пути к моей машине. Что я делаю не так?

Рейтинг:0
флаг cn

я нашел ответ здесь

Эта проблема с ufw против iptables. Хотя в эталонной домашней установке Ubuntu ufw отключен, а iptables очень снисходителен, чтобы создать впечатление, что если ufw отключен, вам не нужно беспокоиться об iptables. Это не очень хорошее правило. Облако Oracle имеет некоторые особые правила iptables, позволяющие ему загружаться, как обсуждалось. здесь. Из-за этого они рекомендуют не использовать ufw специально для Ubuntu. Таким образом, правила iptables должны быть изменены напрямую, чтобы ваш пользовательский порт ssh мог видеть трафик.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.