LINUX.ORG.RU
решено ФорумAdmin

[wtf]Не телнетится телнет

 


0

0

Есть два компа в одной подсети. С компа А комп Б пингуется, можно зайти телнетом на 22 порт. Но на 21 и 25 телнет заходить отказывается:

[root@SL03500008056 ~]# telnet 10.35.0.65 25
Trying 10.35.0.65...
telnet: connect to address 10.35.0.65: No route to host
telnet: Unable to connect to remote host: No route to host
А дело, повторюсь, происходит в одной подсети, даже в одном блейд-сервере.

Сервер Б:

[root@sw03500008065 ~]# netstat -tap
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 *:mdbs_daemon               *:*                         LISTEN      1890/rpc.statd
tcp        0      0 *:sunrpc                    *:*                         LISTEN      1851/portmap
tcp        0      0 sw03500008065:ipp           *:*                         LISTEN      2183/cupsd
tcp        0      0 *:smtp                      *:*                         LISTEN      2585/sendmail: acce
tcp        0      0 *:ssh                       *:*                         LISTEN      2170/sshd
tcp        0    148 ::ffff:10.35.0.65:ssh       ws03500008023.opfr.loc:4505 ESTABLISHED 4081/0

Собственно, вопрос: WTF?

Ответ на: комментарий от Slavaz

А:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Б:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain RH-Firewall-1-INPUT (2 references)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           icmp type 255
ACCEPT     esp  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     ah   --  0.0.0.0/0            0.0.0.0/0
ACCEPT     udp  --  0.0.0.0/0            224.0.0.251         udp dpt:5353
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:631
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:631
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Всё можно.

Dimka-Bo
() автор топика
Ответ на: комментарий от Dimka-Bo

в файл /etc/sysconfig/iptables после строчки

-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 22 -j ACCEPT

добавьте строки:

-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 25 -j ACCEPT

Выполните команду:
service iptables restart

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

На всякий случай дополню: это на хосте «Б» надо сделать :)

REJECT all  — 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited

Всё можно.



Нет. Цепочка RH-Firewall-1-INPUT установлена в качестве цели для единственного правила в цепочках INPUT и FORWARD; несмотря на то, что дефолтная цель для этих цепочек ACCEPT, в конце RH-Firewall-1-INPUT стоит правило с целью REJECT, что запрещает пакеты, не попавшие в разрешительные цели предыдущих условий.

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

> На всякий случай дополню: это на хосте «Б» надо сделать :)

Это понятно, А хоть к москве может приконнектиться, на нём всё работает. Посмотрел для сравнения, Б - свежепоставленный RHEL5.4, А - такой же RHEL5.4, который, как мне казалось, до меня никто особо не ковырял.

Цепочка RH-Firewall-1-INPUT установлена в качестве цели для единственного правила в цепочках INPUT и FORWARD

Ааа! Ну вот и повод man iptables...

Dimka-Bo
() автор топика
Ответ на: комментарий от Dimka-Bo

> Я правильно понимаю, что SSH работает, потому что работает по IPv6?

Нет, неправильно. Потому что есть строчка в файле /etc/sysconfig/iptables:

-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 22 -j ACCEPT

Зуб даю на выкол, что в файле /etc/sysconfig/ip6tables подобная строчка, разрешающая ssh, тоже присутствует...

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

Всё работает, благодарю.

Но man iptables всё ж распечатаю, давно пора :)

Dimka-Bo
() автор топика
Ответ на: комментарий от Dimka-Bo

Чё за индуское правило в самом начале

ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0  

Обработка правил идёт сверху-вниз, соответственно, пускаешь всех и везде в самом начале, остальные правила бессмыслены, в том числе и последнее :)

anton_jugatsu ★★★★
()

В таких случаях очень помогает tcpdump.

anton_jugatsu ★★★★
()
Ответ на: комментарий от anton_jugatsu

> Чё за индуское правило в самом начале

Это уже к редхату вопрос.

Dimka-Bo
() автор топика
Ответ на: комментарий от anton_jugatsu

>> ACCEPT all  — 0.0.0.0/0 0.0.0.0/0

Обработка правил идёт сверху-вниз, соответственно, пускаешь всех и везде в самом начале, остальные правила бессмыслены, в том числе и последнее :)


Команда 'iptables -L' выводит не полное правило, а сокращённое. Скорей всего, за этой строчкой скрывается стандартное рэдхатовское правило, разрешающее всем icmp-трафик. Более полный вывод получается после выполнения iptables-save - там оно будет видно

Slavaz ★★★★★
()
Ответ на: комментарий от anton_jugatsu

> оно идёт вторым, как я вижу
Да, верно. Извините. я перепутал. Глянул сейчас в свой /etc/sysconfig/iptables:
...
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
...

Это оно. Интерфейсы не показываются в выводе «iptables -L»

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

А, да точно :) Что-то я сразу не заметил :) Привык к iptables -vnL

anton_jugatsu ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.