Я подрядчик в частной школе, где мне поручено разработать общедоступный API для их базы данных для использования в мобильных приложениях.
Они размещают свой собственный веб-сайт на территории школы, а их сеть управляется Cisco ASA 5510 с интерфейсом командной строки 8.2.
Они предоставляют мне выделенный блейд-сервер и статический IP-адрес для этого проекта, поэтому я попросил системного администратора сопоставить IP-адрес машине, а также открыть к нему доступ к портам 80 и 22.
В конце концов, парень сказал, что пробовал все, что мог, но, похоже, это не сработало. Ясно, что это не он настраивал их системы, а у меня нет опыта работы с Cisco, поэтому я надеюсь, что кто-то из присутствующих может указать мне правильное направление.
Вот результат команды show run, которую он мне прислал: http://pastebin.com/ikdSRg7j . Машина, которую мы пытаемся открыть, но не работает, заканчивается на 211, а их веб-сайт, который работает нормально, - 209.
Я знаю, что есть много вопросов о перенаправлении портов Cisco ASA на ServerFault, но даже после прочтения руководства по ASA у меня так мало опыта работы с устройством, что ответы мне не очень помогают. Приношу свои извинения и заранее благодарю.
Типичная установка (убедитесь, что вы находитесь в активном режиме):
На внешнем интерфейсе должен быть какой-то список доступа, который контролирует, какой трафик может входить в сеть. Возможно, он еще не существует, но если у вас уже есть какие-либо правила для входящих подключений, он будет там.
Чтобы проверить, есть ли у вас такой список доступа, запустите
показать группу доступа запуска
Он должен вернуть что-то вроде
группа доступа Internet_In в интерфейсе Internet
Это означает (чтение справа налево), что трафик к "Интернет-интерфейсу" (это интерфейс с nameif Internet
как показано в show run int
), входящий трафик должен проходить access-list "Internet_In".
Вы можете отобразить этот список доступа с помощью:
show run access-list Internet_In access-list Internet_In расширенное разрешение tcp любой хост $ {Public_IP} eq $ {Public_Port}
Эта вторая строка обычно будет появляться много раз для каждой пересылаемой комбинации IP и Port. Выясните, какие строки вам не хватает. Если у вас вообще нет группы доступа, вам действительно стоит иметь ее в целях безопасности. Обычно вам просто не хватает одной или трех строк в списке доступа.
Чтобы добавить строки в список доступа, войдите в режим конфигурации с помощью conf t
, затем введите, какие строки вы хотите в списке доступа, в том же формате, что и ранее.
После того, как вы разрешили трафик, ASA должен знать, куда он идет, если вы используете NAT. В static
команда отображает трафик в обратном направлении через интерфейс NAT. Если вы не используете NAT на этом ASA, вам не нужно беспокоиться об этом сопоставлении (show run nat
отобразит конфигурацию NAT).
Чтобы вызвать существующую статическую конфигурацию, запустите:
показать запустить статический
Он должен что-то вернуть, если у вас уже есть настройка сопоставления, например:
статический (внутри, Интернет) tcp $ {Public_IP} $ {Public_Port} $ {Priv_IP} $ {Priv_Port} netm 255.255.255.255
Где «внутри» и «Интернет» nameif
интерфейсов, а остальное довольно понятно. Опять же, выясните, каких строк вам не хватает, добавьте их в режиме конфигурации.
Шаг 1. Устраните эту проблему ... связанную с acl_out
упомянутый access-group acl_out in interface Outside
! ... more acl lines above
access-list acl_out extended permit tcp any host 222.22.2.215 eq 3389
^^^^^^^
access-list acl-out extended permit tcp any host 222.22.2.210 eq www
access-list acl-out extended permit tcp any host 222.22.2.210 eq ssh
access-list acl-out extended permit tcp any host 222.22.2.211 eq ssh
access-list acl-out extended permit tcp any host 222.22.2.211 eq www
^^^^^^^
acl-out
не то имя. Вы должны использовать acl_out
Добавьте следующие строки в конец списка acl с помощью интерфейса командной строки ASA и повторите попытку:
access-list acl_out extended permit tcp any host 222.22.2.210 eq www
access-list acl_out extended permit tcp any host 222.22.2.210 eq ssh
access-list acl_out extended permit tcp any host 222.22.2.211 eq ssh
access-list acl_out extended permit tcp any host 222.22.2.211 eq www