Безопасность : Устройства защиты Cisco PIX серии 500

PIX/ASA 7.x: пример настройки SSH/Telnet на внутреннем и внешнем интерфейсах

7 апреля 2008 - Перевод, выполненный профессиональным переводчиком
Другие версии: PDF-версия:pdf | Машинный перевод (28 июля 2013) | Английский (14 октября 2008) | Отзыв

Содержание

Введение
Предварительные условия
     Требования
     Используемые компоненты
     Сопутствующие продукты
     Условные обозначения
Настройка
     Диаграмма сети
     Конфигурации SSH
     Конфигурация Telnet
     Поддержка SSH/Telnet в ACS 4.x
Проверка
     Команда debug ssh
     Просмотр активных сеансов SSH
     Просмотр открытого ключа RSA
Устранение неполадок
     Удаление ключей RSA из PIX
Связанные обсуждения сообщества поддержки Cisco
Дополнительные сведения

Введение

В данном документе предоставляется пример настройки протокола SSH на внутренних и внешних интерфейсах Cisco Series Security Appliance версии 7.x. Для удаленной настройки Series Security Appliance с помощью командной строки требуется использовать Telnet или SSH. Так как с помощью соединений Telnet передается открытый текст, включая пароли, настоятельно рекомендуется использовать SSH. Трафик SSH шифруется в туннеле, что помогает защитить пароли и другие команды настройки от перехвата.

Security Appliance позволяет использовать SSH-подключения к устройству защиты в целях управления. Устройство защиты допускает не более пяти параллельных SSH-подключения для каждого контекста безопасности (если есть) и глобально не более 100 соединений для всех объединенных контекстов.

В данном примере настройки устройство защиты PIX считается SSH-сервером. Трафик от SSH-клиента (10.1.1.2/24 и 172.16.1.1/16) к SSH-серверу шифруется. Устройство защиты поддерживает функцию удаленной оболочки SSH, предоставленную в SSH версии 1 и 2, а также поддерживает стандарт DES (Data Encryption Standard) и шифрование 3DES. SSH версий 1 и 2 отличаются и не взаимодействуют друг с другом.

Предварительные условия

Требования

Для данного документа нет особых требований.

Используемые компоненты

Содержимое данного документа основано на программном обеспечении Cisco PIX Firewall версии 7.1.

Сведения в этом документе были получены в результате тестирования приборов в специфической лабораторной среде. Все устройства, используемые в этом документе, запускались с чистой конфигурацией (конфигурацией по умолчанию). Если сеть работает в реальных условиях, убедитесь в понимании потенциального воздействия каждой команды.

Сопутствующие продукты

Эта конфигурация также может использоваться в устройстве защиты серии Cisco ASA 5500.

Условные обозначения

Более подробную информацию о применяемых в документе обозначениях см. в разделе Cisco Technical Tips Conventions (Условные обозначения, используемые в технической документации Cisco).

Настройка

В этом разделе предоставляется информация о настройке функций, описанных в данном документе

Примечание: Каждый шаг настройки сопровождается информацией, необходимой для использования командной строки или Adaptive Security Device Manager (ASDM).

Примечание: Используйте средство поиска команд (registered customers only) для получения более подробной информации о командах, использованных в этом разделе.

Диаграмма сети

В данном документе используется следующая настройка сети:

ssh-inside-out-pix7x-1.gif

Конфигурации SSH

В данном документе используются следующие конфигурации:

SSH-доступ к устройству защиты

Выполните следующие действия, чтобы настроить SSH-доступ к устройству защиты.

  1. В сеансах SSH всегда требуется вводить имя пользователя и пароль для проверки подлинности. Это требование можно удовлетворить двумя способами.

    Настроить имя пользователя и пароль и воспользоваться командой AAA:

    Синтаксис:

    pix(config)#username имя_пользователя password пароль
    
    pix(config)#aaa authentication {telnet | ssh | http | serial} console {LOCAL | server_group [LOCAL]}
    

    Примечание: Если для проверки подлинности используется группа серверов TACACS+ или RADIUS, устройство защиты можно настроить на использование локальной базы данных в качестве резервного метода, если сервер AAA недоступен. Укажите имя группы серверов, а затем слово LOCAL (LOCAL — зависит от регистра). Рекомендуется использовать в локальной базе данных те же имя пользователя и пароль, что и в сервере AAA, так как в запросе устройства защиты не указывается используемый метод.

    Примечание: Пример:

    pix(config)#aaa authentication ssh console LOCAL
    

    Примечание: В качестве альтернативы локальную базу данных можно использовать как основной метод проверки подлинности без резервного метода. Для этого введите одно слово LOCAL.

    Пример:

    pix(config)#aaa authentication ssh console LOCAL
    

    ИЛИ

    Используйте имя пользователя по умолчанию pix и пароль по умолчанию для Telnet cisco. Пароль для Telnet можно изменить с помощью следующей команды:

    pix(config)#passwd пароль
    
    

    Примечание: Команда password также может быть использована в данной ситуации. Обе команды выполняют одно и то же.

    Выберите Configuration > Properties > Device Administration > User Accounts (Конфигурация > Свойства > Администрирование устройств > Учетные записи пользователей), чтобы добавить пользователя с помощью ASDM.

    ssh-inside-out-pix7x-2.gif

    Выберите Configuration (Конфигурация) > Properties (Свойства) > Device Access (Доступ к устройству) > AAA Access (Доступ AAA) > Authentication (Проверка подлинности), чтобы настроить проверку подлинности AAA для SSH с помощью ASDM.

    ssh-inside-out-pix7x-3.gif

    Выберите Configuration > Properties > Device Administration > Password (Конфигурация > Свойства > Администрирование устройств > Пароль), чтобы изменить пароль Telnet с помощью ASDM.

    ssh-inside-out-pix7x-4.gif

  2. Создайте пару ключей RSA для брандмауэра PIX, которая требуется для SSH:

    pix(config)#crypto key generate rsa modulus modulus_size
    
    

    Примечание: Параметр modulus_size (в битах) может принимать значения 512, 768, 1024 или 2048. Чем больше указанный размер модуля ключа, тем больше требуется времени для создания пары ключей RSA. Рекомендуется значение 1024.

    Примечание: Команда, используемая для создания пары ключей RSA, отличается от команд для программного обеспечения PIX версий, предшествующих 7.x. В ранних версиях требовалось задать доменное имя, чтобы можно было создать ключи.

    Выберите Configuration (Конфигурация) > Properties (Свойства) > Certificate (Сертификат) > Key Pair (Пара ключей), нажмите кнопку Добавить и воспользуйтесь предлагаемыми настройками по умолчанию, чтобы создать ключи RSA с помощью ASDM.

    ssh-inside-out-pix7x-5.gif

  3. Укажите узлы, которым разрешается подключаться к устройству защиты.

    Эта команда указывает исходный адрес, маску сети и интерфейс узлов, которым разрешается подключаться по протоколу SSH. Ее можно вводить несколько раз для нескольких узлов, сетей или интерфейсов. В данном примере разрешено подключение одному узлу внутри и одному узлу снаружи.

    pix(config)#ssh 172.16.1.1 255.255.255.255 inside
    pix(config)#ssh 10.1.1.2 255.255.255.255 outside
    
  4. Дополнительно: по умолчанию устройство защиты разрешает использовать SSH версии 1 и 2. Введите следующую команду, чтобы ограничить подключения конкретной версией:

    pix(config)# ssh version <номер_версии>
    
    

    Примечание: Параметр номер_версии может принимать значение 1 или 2.

  5. Дополнительно: по умолчанию сеансы SSH закрываются через пять минут бездействия. Это время ожидания можно настроить в пределах от 1 до 60 минут.

    pix(config)#ssh timeout minutes
    
    

    Выберите Configuration (Конфигурация) > Properties (Свойства) > Device Access (Доступ к устройству) > Secure Shell, чтобы с помощью ASDM указать узлы, которым разрешается подключаться по протоколу SSH, а также версию и время ожидания.

    ssh-inside-out-pix7x-6.gif

Использование SSH-клиента

При открытии сеанса SSH укажите имя пользователя и пароль входа для устройства защиты серии PIX 500. При открытии сеанса SSH перед появлением запроса проверки подлинности SSH-пользователя в консоли устройства защиты отображается точка (.):

hostname(config)# .

Отображение точки не влияет на функциональность SSH. Данная точка появляется в консоли, когда создается ключ сервера или сообщение расшифровывается с помощью частных ключей во время обмена SSH-ключами перед запросом проверки подлинности пользователя. Эти задачи могут выполняться в течение двух минут и более. Данная точка является индикатором хода выполнения, подтверждающим, что устройство защиты занято и не зависло.

SSH версий 1.x и 2 — совершенно различные протоколы, которые не совместимы. Загрузите совместимый клиент. Дополнительные сведения см. в разделе Получение SSH-клиента документа Расширенные конфигурации.

Конфигурация PIX

В данном документе используется следующая конфигурация:

Конфигурация PIX

PIX Version 7.1(1)
!
hostname pix
enable password 8Ry2YjIyt7RRXU24 encrypted
names
!
interface Ethernet0
 nameif outside
 security-level 0
 ip address 192.168.200.1 255.255.255.0
!
interface Ethernet1
 nameif inside
 security-level 100
 ip address 172.16.5.10 255.255.0.0
!
passwd 2KFQnbNIdI.2KYOU encrypted
ftp mode passive
pager lines 24
mtu outside 1500
mtu inside 1500
no failover
icmp permit any outside
no asdm history enable
arp timeout 14400
route outside 10.1.1.0 255.255.255.0 192.168.200.1 1
timeout xlate 3:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02
timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00
timeout mgcp-pat 0:05:00 sip 0:30:00 sip_media 0:02:00
timeout uauth 0:05:00 absolute

!--- AAA for the SSH configuration

username ciscouser password 3USUcOPFUiMCO4Jk encrypted
aaa authentication ssh console LOCAL

http server enable
http 172.16.0.0 255.255.0.0 inside
no snmp-server location
no snmp-server contact
snmp-server enable traps snmp authentication linkup linkdown coldstar
telnet timeout 5

!--- Enter this command for each address or subnet 
!--- to identify the IP addresses from which 
!--- the security appliance accepts connections.
!--- The security appliance accepts SSH connections from all interfaces.


ssh 10.1.1.2 255.255.255.255 outside

!--- Allows the users on the host 172.161.1.1  
!--- to access the security appliance 
!--- on the inside interface.


ssh 172.16.1.1 255.255.255.255 inside

!--- Sets the duration from 1 to 60 minutes 
!--- (default 5 minutes) that the SSH session can be idle,  
!--- before the security appliance disconnects the session.


ssh timeout 60

console timeout 0
!
class-map inspection_default
 match default-inspection-traffic
!
!
policy-map global_policy
 class inspection_default
  inspect dns maximum-length 512
  inspect ftp
  inspect h323 h225
  inspect h323 ras
  inspect netbios
  inspect rsh
  inspect rtsp
  inspect skinny
  inspect esmtp
  inspect sqlnet
  inspect sunrpc
  inspect tftp
  inspect sip
  inspect xdmcp
!
service-policy global_policy global
Cryptochecksum:a6b05fd04f9fbd0a39f1ca7328de91f7
: end

Конфигурация Telnet

Чтобы добавить Telnet-доступ к консоли и задать время ожидания, выполните команду telnet в режиме глобальной конфигурации. По умолчанию сеансы Telnet, бездействующие пять минут, закрываются устройством защиты. Чтобы запретить доступ по протоколу Telnet от ранее заданных IP-адресов, используйте форму no следующей команды.

telnet {{hostname | IP_address mask interface_name} | {IPv6_address interface_name} | {timeout number}} 

no telnet {{hostname | IP_address mask interface_name} | {IPv6_address interface_name} | {timeout number}} 

Команда telnet позволяет указать, какие узлы обладают доступом к консоли устройства защиты по протоколу Telnet. Можно разрешить использование Telnet для подключения к устройству защиты на всех интерфейсах. Однако данное устройство защиты требует, чтобы весь трафик Telnet к внешнему интерфейсу, был защищен с помощью IPsec. Чтобы разрешить сеанс Telnet подключения к внешнему интерфейсу, настройте протокол IPsec на внешнем интерфейсе на включение IP-трафика, созданного данным устройством защиты, и разрешите Telnet на данном внешнем интерфейсе.

Примечание: Осуществлять доступ к устройству защиты с помощью сеанса Telnet не рекомендуется. Учетные данные для проверки подлинности, такие как пароль, отправляются открытым текстом. Сервер и клиент Telnet обмениваются данными только открытым текстом. Корпорация Cisco рекомендует использовать SSH для более безопасного обмена данными.

Если вводится IP-адрес, также требуется указать маску сети. Маска сети по умолчанию не задана. Не используйте маску подсети внутренней сети. Маска сети является единственной битовой маской IP-адреса. Чтобы ограничить доступ одним IP-адресом, используйте комбинацию 255 в каждом октете, например, 255.255.255.255.

При использовании IPsec можно указать имя небезопасного интерфейса, обычно внешнего интерфейса. Как минимум можно использовать команду crypto map , чтобы указать имя интерфейса с командой telnet .

Выполните команду password , чтобы задать пароль для Telnet-доступа к консоли. Пароль по умолчанию — cisco. Выполните команду who , чтобы узнать IP-адреса узлов, которые в данный момент осуществляют доступ к консоли устройства защиты. Выполните команду kill , чтобы прекратить активный сеанс консоли Telnet.

О том, как разрешить сеанс Telnet к внутреннему интерфейсу, см. следующие примеры.

Пример 1

В этом примере только узлу 10.1.1.1 разрешается осуществлять доступ к консоли устройства защиты по протоколу Telnet:

pix(config)#telnet 10.1.1.1 255.255.255.255 inside 

Пример 2

В этом примере только сети 10.0.0.0/8 разрешается осуществлять доступ к консоли устройству защиты по протоколу Telnet:

pix(config)#telnet 10.0.0.0 255.0.0.0 inside 

Пример 3

В этом примере всем сетям предоставляется доступ к консоли устройства безопасности по протоколу Telnet:

pix(config)#telnet 0.0.0.0 0.0.0.0 inside 

Если используется команда aaa с ключевым словом console, проверка подлинности в случае доступа Telnet-консоли выполняется с помощью сервера проверки подлинности.

Примечание: Если была использована команда aaa , чтобы потребовать проверку подлинности для доступа консоли Telnet к устройству защиты, и истекло время ожидания запроса на вход консоли, можно получить доступ к устройству защиты из последовательной консоли. Для этого введите имя пользователя устройства защиты и пароль, заданный с помощью команды enable password .

Выполните команду telnet timeout , чтобы задать максимальное время бездействия консольного сеанса Telnet, по истечении которого выполняется выход из устройства защиты. Нельзя использовать команду no telnet с командой telnet timeout .

В данном примере демонстрируется изменение максимального периода бездействия сеансов:

hostname(config)#telnet timeout 10

hostname(config)#show running-config telnet timeout

telnet timeout 10 minutes

Поддержка SSH/Telnet в ACS 4.x

При необходимости функции RADIUS могут использоваться вместе с протоколом SSH.

Если предпринимается попытка доступа к устройству защиты по протоколу Telnet, SSH, HTTP или соединению последовательной консоли и трафик соответствует инструкции проверки подлинности, устройство защиты запрашивает имя пользователя и пароль. Затем оно пересылает эти учетные данные серверу RADIUS (ACS) и предоставляет или блокирует доступ интерфейса командной строки на основе ответа сервера.

Дополнительные сведения см. в разделе Сервер AAA и поддержка локальной базы данных документа Настройка серверов AAA и локальной базы.

Например, устройству защиты ASA 7.0 требуется указать IP-адрес, от которого оно принимает подключения:

hostname(config)#ssh source_IP_address mask source_interface

Дополнительные сведения см. в разделе Разрешение SSH-доступа документа Настройка серверов AAA и локальной базы.

Проверка

Используйте этот раздел, чтобы подтвердить работоспособность конфигурации.

Интерпретатор выходных данных (registered customers only) (средство OIT) поддерживает некоторые команды show . Используйте средство OIT для анализа выходных данных команды show .

Команда debug ssh

Выполните команду debug ssh , чтобы включить отладку SSH.

pix(config)#debug ssh
   SSH debugging on

В представленных выходных данных показано, что запрос проверки подлинности от узла 10.1.1.2 (внешнего для PIX) для пользователя "pix" был успешным:

pix#
	Device ssh opened successfully.
   SSH0: SSH client: IP = '10.1.1.2' interface # = 1
   SSH: host key initialised
   SSH0: starting SSH control process
   SSH0: Exchanging versions - SSH-1.99-Cisco-1.25
	SSH0: send SSH message: outdata is NULL
			server version string:SSH-1.99-Cisco-1.25SSH0: receive SSH message: 83 (83)
   SSH0: client version is - SSH-1.99-3.2.0 SSH Secure Shell for Windows 
			client version string:SSH-1.99-3.2.0 SSH Secure Shell for WindowsSSH0: 
begin    ser ver key generation
   SSH0: complete server key generation, elapsed time = 1760 ms
	SSH2 0: SSH2_MSG_KEXINIT sent
   SSH2 0: SSH2_MSG_KEXINIT received
   SSH2: kex: client->server aes128-cbc hmac-md5 none
   SSH2: kex: server->client aes128-cbc hmac-md5 none
   SSH2 0: expecting SSH2_MSG_KEXDH_INIT
   SSH2 0: SSH2_MSG_KEXDH_INIT received
   SSH2 0: signature length 143
   SSH2: kex_derive_keys complete
   SSH2 0: newkeys: mode 1
   SSH2 0: SSH2_MSG_NEWKEYS sent
   SSH2 0: waiting for SSH2_MSG_NEWKEYS
   SSH2 0: newkeys: mode 0
   SSH2 0: SSH2_MSG_NEWKEYS receivedSSH(pix): user authen method is 
'no AAA', aaa server group ID = 0
   SSH(pix): user authen method is 'no AAA', aaa server group ID = 0
	SSH2 0: authentication successful for pix  
!--- Authentication for the PIX was successful.

   SSH2 0: channel open request
   SSH2 0: pty-req request
   SSH2 0: requested tty: vt100, height 25, width 80
	SSH2 0: shell request
   SSH2 0: shell message received

Если введено неверное имя пользователя, например, "pix1" вместо "pix", брандмауэр PIX Firewall отклоняет проверку подлинности. В приведенных ниже отладочных выходных данных содержатся сведения о непройденной проверке подлинности:

pix#
Device ssh opened successfully.
SSH0: SSH client: IP = '10.1.1.2' interface # = 1
SSH: host key initialised
SSH0: starting SSH control process
SSH0: Exchanging versions - SSH-1.99-Cisco-1.25
SSH0: send SSH message: outdata is NULL
		server version string:SSH-1.99-Cisco-1.25SSH0: receive SSH message: 83 (83)
SSH0: client version is - SSH-1.99-3.2.0 SSH Secure Shell for Windows client version 
	    string:SSH-1.99-3.2.0 SSH Secure Shell for WindowsSSH0: begin server key generation
SSH0: complete server key generation, elapsed time = 1960 ms
SSH2 0: SSH2_MSG_KEXINIT sent
SSH2 0: SSH2_MSG_KEXINIT received
SSH2: kex: client->server aes128-cbc hmac-md5 none
SSH2: kex: server->client aes128-cbc hmac-md5 none
SSH2 0: expecting SSH2_MSG_KEXDH_INIT
SSH2 0: SSH2_MSG_KEXDH_INIT received
SSH2 0: signature length 143
SSH2: kex_derive_keys complete
SSH2 0: newkeys: mode 1
SSH2 0: SSH2_MSG_NEWKEYS sent
SSH2 0: waiting for SSH2_MSG_NEWKEYS
SSH2 0: newkeys: mode 0
SSH2 0: SSH2_MSG_NEWKEYS receivedSSH(pix1): user authen method is 
'no AAA', aaa server group ID = 0
SSH(pix1): user authen method is 'no AAA', aaa server group ID = 0
SSH2 0: authentication failed for pix1 
!--- Authentication for pix1 was not successful due to the wrong username.

Аналогично, если пользователь предоставил неверный пароль, информацию о непройденной проверке подлинности можно получить из следующих отладочных выходных данных.

pix#
Device ssh opened successfully.
SSH0: SSH client: IP = '10.1.1.2'  interface # = 1
SSH: host key initialised
SSH0: starting SSH control process
SSH0: Exchanging versions - SSH-1.99-Cisco-1.25
SSH0: send SSH message: outdata is NULL server version string:
SSH-1.99-Cisco-1.25SSH0: receive      SSH message: 83 (83)
SSH0: client version is - SSH-1.99-3.2.0 SSH Secure Shell for 
Windows client version string:SSH-1.99-3.2.0 
		SSH Secure Shell for WindowsSSH0: begin server key generation
SSH0: complete server key generation, elapsed time = 1920 ms
SSH2 0: SSH2_MSG_KEXINIT sent
SSH2 0: SSH2_MSG_KEXINIT received
SSH2: kex: client->server aes128-cbc hmac-md5 none
SSH2: kex: server->client aes128-cbc hmac-md5 none
SSH2 0: expecting SSH2_MSG_KEXDH_INIT
SSH2 0: SSH2_MSG_KEXDH_INIT received
SSH2 0: signature length 143
SSH2: kex_derive_keys complete
SSH2 0: newkeys: mode 1
SSH2 0: SSH2_MSG_NEWKEYS sent
SSH2 0: waiting for SSH2_MSG_NEWKEYS
SSH2 0: newkeys: mode 0
SSH2 0: SSH2_MSG_NEWKEYS receivedSSH(pix): user authen method 
is 'no AAA', aaa server group ID = 0
     SSH(pix): user authen method is 'no AAA', aaa server group ID = 0
SSH2 0: authentication failed for pixSSH(pix): user authen method 
is 'no AAA', aaa server group ID = 0
SSH2 0: authentication failed for pix
!--- Authentication for PIX was not successful due to the wrong password.

Просмотр активных сеансов SSH

Выполните следующую команду, чтобы проверить число подключенных к PIX сеансов SSH и состояние соединений:

pix#show ssh session
 
SID Client IP       Version Mode Encryption Hmac     State            Username
0   10.1.1.2        1.99    IN   aes128-cbc md5      SessionStarted   pix
                            OUT  aes128-cbc md5      SessionStarted   pix

Выберите Monitoring (Мониторинг) > Properties (Свойства) > Device Access (Доступ к устройству) > Secure Shell Sessions (Сеансы SSH), чтобы просмотреть список сеансов с помощью ASDM.

Просмотр открытого ключа RSA

Выполните следующую команду , чтобы просмотреть открытые ключи RSA в устройстве защиты:

pix#show crypto key mypubkey rsa

Key pair was generated at: 19:36:28 UTC May 19 2006
Key name: <Default-RSA-Key>
 Usage: General Purpose Key
 Modulus Size (bits): 1024
 Key Data:

  30819f30 0d06092a 864886f7 0d010101 05000381 8d003081 89028181 00c172f4
  95f66c34 2c2ced37 aa3442d8 12158c93 131480dd 967985ab 1d7b92d9 5290f695
  8e9b5b0d d88c0439 6169184c d8fb951c 19023347 d6b3f939 99ac2814 950f4422
  69b67328 f64916b1 82e15341 07590da2 390fbefd 38758888 7319196c de61aef1
  165c4bab 03d081d5 ddaf15cc c9ddb204 c2b451e0 f19ce0f3 485b1d69 8b020301 0001

Выберите Configuration (Конфигурация) > Properties (Свойства) > Certificate (Сертификат) > Key Pair (Пара ключей), затем — пару ключей для просмотра и нажмите кнопку Показать сведения, чтобы просмотреть информацию о ключах RSA с помощью ASDM.

Устранение неполадок

В данном разделе предоставляется информация, которую можно использовать для устранения неполадок в конфигурации.

Удаление ключей RSA из PIX

В определенных ситуациях, например, при обновлении программного обеспечения PIX или изменении версии SSH в PIX, может потребоваться удаление и повторное создание ключей RSA. Выполните следующую команду, чтобы удалить пару ключей RSA из PIX:

pix(config)#crypto key zeroize rsa

Выберите Configuration (Конфигурация) > Properties (Свойства) > Certificate (Сертификат) > Key Pair (Пара ключей), затем — пару ключей для просмотра и нажмите кнопку Удалить, чтобы удалить ключи RSA с помощью ASDM.

Связанные обсуждения сообщества поддержки Cisco

В рамках сообщества поддержки Cisco можно задавать и отвечать на вопросы, обмениваться рекомендациями и совместно работать со своими коллегами.


Дополнительные сведения


Document ID: 69373