Как остановить доступ telnet для конкретного IP-адреса?

Я использую Крысиный яд WM. Для ввода китайского языка я просто добавил IBUS к ~/.ratpoisonrc файл, который затем запускает IBUS, когда Вы запускаете Крысиный яд. Строка похожа на это:

exec ibus-daemon --xim

Если Вы не используете Крысиный яд, располагаете запуститься ibus-daemon --xim когда Ваши X сессий запускаются любыми средствами, Ваш менеджер окон или менеджер сеансов обеспечивают.

Затем чтобы начать вводить на китайском языке, введите обоих Control+SpaceBar как нормальных.

1
04.12.2012, 10:54
2 ответа

Более общее решение, чем Laurentiu Roescu состояло бы в том, чтобы использовать iptables, который работает то же в каждом распределении и по существу независимо от которого установлено программное обеспечение.

# iptables -A INPUT -p tcp -s <ip_address> --dport telnet -j DROP

Можно дополнительно использовать -j REJECT вместо -j DROP. Используя ОТКЛОНЕНИЕ скажет, кто бы ни в другом конце, что нет ничего на том конкретном порте; использование ОТБРАСЫВАНИЯ отбросит пакет, который приводит к попытке подключения, испытывающей таймаут после того, как интервал тайм-аута подключения удаленного хоста передал.

Возможно, что необходимо будет вставить правило, прежде чем любой "ПРИМЕТ" правила, которые могут уже существовать. Если так, мне нравится делать это как это:

# iptables -L INPUT --line-number
<some or lots of output>
# iptables -I INPUT <number of telnet accept rule> ...

где ... все от -p tcp вперед в команде выше. По существу, -I INPUT n замены -A INPUT. (-I вставка непосредственно перед тем, как положение n,-A, добавляют.)

Можно использовать --dport telnet потому что telnet перечислен в/etc/services. Попробовать grep telnet /etc/services если Вам любопытно. Если бы это не было, то необходимо было бы использовать числовой номер порта, который является 23.

Вы, возможно, должны использовать что-то как iptables-save сохранить правило через перезагрузки. Детали об этом будут зависеть от Вашего распределения и установки, и таким образом не могут обычно отвечаться. Если Вы указываете свое распределение и версию, кто-то может предлагать определенное понимание относительно того (или это может работать лучше отдельным вопросом, "как я сохраняю правила iptables через перезагрузки в Распределении X Версий Y?").

Тем не менее я соглашаюсь, с которым должен использовать SSH вместо этого. Но все еще можно хотеть блокировать доступ от определенного дюйм/с, и чем более низкий уровень, на котором это может быть сделано, тем меньше Вы рискуете ошибкой в высокоуровневой части продвижения стека к компромиссу или отказу в обслуживании.

5
27.01.2020, 23:12

В/etc/host.deny добавьте:

telnet: <ip_addres>

Но необходимо использовать ssh вместо этого.

4
27.01.2020, 23:12

Теги

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