Как избежать ошибки "Порт 22: соединение отказано" на порту SSH (22)?
У меня есть сервер, на котором я просто использую openssh, openvpn и rabbitmq (который требует много зависимостей от erlang).
Каждый раз, когда я перезагружаю свой сервер, я больше не могу получить к нему доступ
Порт 22: соединение отклонено
И я должен установить все с нуля.
Что я должен проверить, чтобы избежать этой проблемы?
3 ответа
Для просмотра настроек брандмауэра в терминале выполните следующие действия: -
sudo iptables -L -n
Вы ищете что-нибудь ике это
# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh
DROP all -- anywhere anywhere
если правило порта ssh (22) не установлено, попробуйте:
sudo iptables -I INPUT -p tcp -m tcp --dport 22 -j ACCEPT
сохранить текущие правила брандмауэра iptables в файл с именем /root/dsl.fw
, тип:
# iptables-save > /root/dsl.fw
Чтобы восстановить правила iptables, введите:
iptables-restore < /root/dsl.fw
Чтобы восстановить правила автоматически после перезагрузки системы Linux, добавьте следующую команду в ваш /etc/rc.local
файл, введите:
# vi /etc/rc.local
Добавьте строку:
/sbin/iptables-restore < /root/dsl.fw
Чтобы проверить, какие службы init запущены и на каком уровне запуска, попробуйте это в терминале
ls /etc/rc*.d
если sshd отсутствует в списке, введите его в свой терминал:
update-rc.d ssh enable
Порт 22: соединение отклонено
Это сообщение указывает, что брандмауэр активно блокирует вашу попытку подключения или, наоборот, sshd не прослушивает этот порт.
Подтвердите это:
- Правила iptables, применяемые при загрузке, разрешают трафик через порт 22
- sshd настроен на запуск при загрузке
Просто попробуйте (как root)
sudo apt-get install ssh
у меня нет ssh сервера в стандартной установке Ubuntu для рабочего стола