Настройки IPFW, позволяющие доверенному клиенту подключаться к Mac (например, через ssh)

У меня есть следующие настройки ipfw на моем Mac OS X 10.4 Tiger:

00100 allow ip from any to 123.123.123.123
00110 allow tcp from any to 123.123.123.123
00120 allow udp from any to 123.123.123.123
00130 allow ip from 123.123.123.123 to any
00140 allow tcp from 123.123.123.123 to any
00150 allow udp from 123.123.123.123 to any
65534 deny ip from any to any
65535 allow ip from any to any

Я пытаюсь подключиться к ssh к Mac с компьютера Linux, который имеет IP-адрес 123.123.123.123, и sshd работает на Mac. Однако клиент ssh выводит следующее:

ssh myuser@mac.example.com -v

OpenSSH_5.5p1, OpenSSL 1.0.0d-fips 8 Feb 2011
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to mac.example.com [10.10.10.10] port 22.
debug1: Connection established.
debug1: identity file /home/me/.ssh/id_rsa type -1
debug1: identity file /home/me/.ssh/id_rsa-cert type -1
debug1: identity file /home/me/.ssh/id_dsa type -1
debug1: identity file /home/me/.ssh/id_dsa-cert type -1
ssh_exchange_identification: Connection closed by remote host

Что может заставить Mac внезапно закрыть соединение, даже не спросив пароль?

Я считаю, что это связано с настройками IPFW, потому что SSH работал, когда я просто имел 65535 allow ip from any to any в качестве настроек IPFW. Например, мне нужно правило для обратного поиска DNS?

1 ответ

Решение

Во-первых, нет необходимости указывать tcp и udp, если вы разрешаете все ip на первом месте. Кроме того, обычно легче начать свои правила с allow ip from me to any разрешить все исходящие соединения.

Попробуйте этот набор правил и посмотрите, что произойдет:

00100 allow ip from me to any
00200 allow ip from 123.123.123.123 to me ssh
01000 allow icmp from any to any
01001 allow igmp from any to any
65534 deny ip from any to any

Улучшенная версия с сохранением состояния:

00060 check-state
00100 allow ip from me to any keep-state
00200 allow ip from 123.123.123.123 to me ssh setup keep-state
01000 allow icmp from any to any
01001 allow igmp from any to any
65534 deny ip from any to any
Другие вопросы по тегам