Защищенный FTP-сервер на z/OS

Реализация SSL/TLS (FTPS) для серверной аутентификации

Comments

z/OS является наиболее широко используемой операционной системой для мэйнфреймов IBM. Эта 64-разрядная операционная система является преемником OS/390. Она предоставляет стабильную, безопасную масштабируемую среду высокой готовности для приложений, работающих на мэйнфреймах. Операционная система z/OS в полной мере использует преимуществ архитектуры IBM System z (z/Architecture).

Операционная система z/OS – это совместно используемая среда времени исполнения, которая обеспечивает совместное использование ресурсов посредством технологии виртуализации. Она использует специальное аппаратное и программное обеспечение для получения доступа и управления этими ресурсами, гарантируя минимальную недогрузку компонентов.

Протокол передачи файлов (FTP) является одним из наиболее часто используемых сетевых протоколов для передачи файлов между хостами по TCP-сети. FTP, основанный на клиент-серверной архитектуре, использует отдельные управляющие и информационные соединения между клиентом и сервером. FTP не является защищенным протоколом и крайне уязвим для перехвата и других видов кибератак, которые могут серьезно нарушить безопасность данных.

Обычно в корпоративных системах для реализации механизма аутентификации между клиентом и сервером используются цифровые сертификаты протоколов Secure Sockets Layer (SSL) и Transport Layer Security (TLS). В данной статье описывается реализация защищенного FTP на z/OS® (FTPS) для серверной аутентификации. Процесс аутентификации может быть встроен в приложение, а может выполняться прозрачно для приложения путем реализации политики Application Transparent TLS (AT-TLS). В данной статье приведен пример использования подхода AT-TLS. Также в статье описываются создание политики AT-TLS с помощью IBM Configuration Assistant for z/OS Communication Server и установка агента политики (Policy Agent) на z/OS.

SFTP и FTPS

Для организации защищенного режима передачи файлов часто используют (и иногда путают) протоколы SFTP и FTPS как взаимозаменяемые. Хотя SFTP и FTPS имеют общую цель, они сильно отличаются друг от друга по принципу работы.

Когда-то протокол FTP широко использовался в качестве незащищенного протокола передачи файлов по сети, в то время как в защищенном сетевом протоколе SSH не было FTP-подобных команд для передачи файлов. В ответ на потребность в защищенном режиме передачи файлов были предложены два разных решения. В рамках первого решения в SSH были добавлены возможности FTP, результатом чего стал протокол SFTP (SSH File Transfer Protocol). В качестве второго решения в FTP были реализованы функции безопасности SSH, результатом чего стал протокол FTPS (FTP over SSL или FTP Secured).

SFTP использует один канал для передачи и получения данных, в то время как FTPS использует для передачи файлов два канала (канал команд и канал данных). Канал передачи данных использует динамически назначаемые по требованию временные порты. FTPS часто имеет проблемы преодоления сетевого экрана, поскольку ему неизвестен порт, который используется для передачи данных, и он не может разрешить трафик через этот порт. FTPS отправляет сообщения в текстовом формате, что позволяет проанализировать журналы и понять, что произошло во время сеанса. Это невозможно в SFTP, где сообщения имеют двоичный формат.

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

Статья будет полезна тем, кто имеет базовые знания в следующих областях:

  • Инфраструктура открытых ключей и работа SSL и TLS.
  • FTP-сервер и стек TCP/IP на z/OS.
  • z/OS Security Server – администрирование RACF.
  • Язык Job Control Language (JCL).
  • z/OS UNIX System Services (USS).

В дополнение к указанному выше необходимо установить приложение IBM Configuration Assistant for z/OS Communication Server. Вы можете установить его на вашем компьютере с помощью автономной программы установки или использовать его с помощью Web-интерфейса через установленное на вашем z/OS-хосте z/OSMF (средство управления z/OS). Обратите внимание, что в z/OS V2R1 утилиту Configuration Assistant нельзя загрузить отдельно, а только в составе z/OSMF.

Установка FTPS-сервера в z/OS LPAR для серверной аутентификации

Следуйте приведенным ниже инструкциям (шаги с 1 по 4) по установке FTPS-сервера в LPAR (логический раздел) z/OS (в нашем примере LPAR имеет имя MVD3) для серверной аутентификации. Предполагается, что в этом LPAR FTP-сервис уже настроен и доступен на порту по умолчанию 21. FTPS устанавливается в режиме FTPS Explicit SSL.

Установка FTPS для серверной аутентификации состоит из четырех основных шагов:

Шаг 1. Установка цифровых сертификатов в RACF.

Шаг 2. Обновление профиля и конфигурационных данных TCP/IP и FTP для использования AT-TLS.

Шаг 3. Установка политики AT-TLS с помощью IBM Configuration Assistant for z/OS Communication Server.

Шаг 4. Установка и настройка Policy Agent на z/OS.

Шаг 1. Установка цифровых сертификатов в RACF

На каждом шаге приводится пример JCL-кода для выполнения команд RACF. Кроме того, для установки цифровых сертификатов и ключей можно использовать панели RACF.

  1. Создайте CA-сертификат (только для целей тестирования).
    Листинг 1. Создание CA-сертификата
    //RACFCERT JOB CLASS=A,MSGCLASS=H,NOTIFY=&SYSUID,REGION=0M
    //CERT01 EXEC PGM=IKJEFT01
    //SYSTSPRT DD SYSOUT=*
    //SYSTSIN DD *
      RACDCERT CERTAUTH GENCERT +
      SUBJECTSDN( +
      CN('MVD3 FTPS CA CERT PABMUKH') +
      O('IBM') L('BLR') C('IN') ) +
      TRUST +
      SIZE(1024) +
      NOTBEFORE(DATE(2013-04-15)) +
      NOTAFTER(DATE(2023-04-15)) +
      WITHLABEL('MVD3 FTPS CA CERT') +
      KEYUSAGE(CERTSIGN)
    /*
  2. Создайте персональный сертификат для FTPS-сервера, подписанный CA-сертификатом, созданным на шаге 1а.
    Листинг 2. Создание персонального сертификата
    //RACFCERT JOB CLASS=A,MSGCLASS=H,NOTIFY=&SYSUID,REGION=0M
    //CERT01 EXEC PGM=IKJEFT01
    //SYSTSPRT DD SYSOUT=*
    //SYSTSIN DD *
      RACDCERT ID(SYSTASK) GENCERT +
      SUBJECTSDN( +
      CN('MVD3 FTPS SERV CERT PABMUKH') +
      O('IBM') L('BLR') C('IN') ) +
      SIZE(1024) +
      NOTBEFORE(DATE(2013-04-15)) +
      NOTAFTER(DATE(2023-04-15)) +
      WITHLABEL('MVD3 FTPS SERV CERT') +
      KEYUSAGE(HANDSHAKE DATAENCRYPT DOCSIGN) +
      SIGNWITH(CERTAUTH LABEL('MVD3 FTPS CA CERT'))
    /*
  3. Экспортируйте CA-сертификат в набор данных и отправьте этот набор по FTP на сайт, где выполняется FTP-клиент. (Этот набор данных нужно отправлять в кодировке ASCII.)
    Листинг 3. Экспорт CA-сертификата
    //RACFCERT JOB CLASS=A,MSGCLASS=H,NOTIFY=&SYSUID,REGION=0M
    //CERT01 EXEC PGM=IKJEFT01
    //SYSTSPRT DD SYSOUT=*
    //SYSTSIN DD *
      RACDCERT CERTAUTH +
      EXPORT(LABEL('MVD3 FTPS CA CERT')) +
      DSN('PABMUKH.MVD3.FTPS.CACERT.B64') +
      FORMAT(CERTB64)
    /*
  4. Создайте новое хранилище ключей RACF и подключите к нему CA-сертификат. Владельцем этого хранилища должен быть userID запущенной задачи FTPD в этом LPAR. Также подключите к этому хранилищу персональный сертификат в качестве сертификата по умолчанию. Убедитесь, что сертификаты имеют статус TRUSTed. Наконец, выведите список сертификатов, подключенных к хранилищу, для проверки.
    Листинг 4. Создание хранилища ключей RACF и добавление сертификатов
    //RACFCERT JOB CLASS=A,MSGCLASS=H,NOTIFY=&SYSUID,REGION=0M
    //CERT01 EXEC PGM=IKJEFT01
    //SYSTSPRT DD SYSOUT=*
    //SYSTSIN DD *,DLM=@@
    /******************************************************
    /* Добавить хранилище ключей MVD3FTPSRING             *
    /******************************************************
      RACDCERT ID(SYSTASK) ADDRING(MVD3FTPSRING)
    /******************************************************
    /* Подключить CA-сертификат к хранилищу MVD3FTPSRING  *
    /******************************************************
      RACDCERT ID(SYSTASK) +
      CONNECT(CERTAUTH LABEL('MVD3 FTPS CA CERT') +
      RING(MVD3FTPSRING) )
    /******************************************************
    /* Подключить сертификат FTP-сервера к хранилищу      *
    /* MVD3FTPSRING                                       *
    /******************************************************
      RACDCERT ID(SYSTASK) +
      CONNECT(LABEL('MVD3 FTPS SERV CERT') +
      RING(MVD3FTPSRING) +
      DEFAULT)
    /******************************************************
    /* Вывести содержимое хранилища MVD3FTPSRING          *
    /******************************************************
      RACDCERT ID(SYSTASK) LISTRING(MVD3FTPSRING)
    @@

Шаг 2. Обновление профиля и конфигурационных данных TCP/IP и FTP для использования AT-TLS

  1. Включите в элемент профиля TCP/IP набора параметров TCP/IP оператор конфигурации, показанный в листинге 5.
    Листинг 5. Настройка профиля TCP/IP
    TCPCONFIG TTLS       ; TO ENABLE AT-TLS SUPPORT IN TCP LAYER OF TCPIP

    Образец TCP/IP-профиля SAMPPROF находится в целевой TCP/IP-библиотеке hlq.SEZAINST. Чтобы определить активный профиль набора данных, проанализируйте DD-оператор (оператор описания данных) PROFILE процедуры запущенной задачи TCP/IP.
  2. Включите в FTP.DATA операторы конфигурации, показанные в листинге 6.
    Листинг 6. Настройка FTP.DATA
    EXTENSIONS AUTH_TLS         ; Enable TLS authentication         
    TLSMECHANISM ATTLS          ; Server-specific or ATTLS           
    SECURE_FTP ALLOWED          ; Security required/optional         
    SECURE_LOGIN NO_CLIENT_AUTH ; Client authentication     
    SECURE_PASSWORD REQUIRED    ; Password requirement         
    SECURE_CTRLCONN PRIVATE     ; Minimum level of security CTRL
    SECURE_DATACONN PRIVATE     ; Minimum level of security DATA
    TLSRFCLEVEL RFC4217         ; SSL/TLS RFC Level supported       
    TLSTIMEOUT 500              ; SSL/TLS RFC Level supported       
    TLSPORT 0                   ; SSL/TLS RFC Level supported       
    KEYRING MVD3FTPSRING        ; Name of key ring                            
    FTPKEEPALIVE 0                                     
    DEBUG ALL                   ; ALL TRACE                         
    TRACE                                                   
    FTPLOGGING TRUE

    Пример FTP.DATA, входящего в FTPSDATA, находится в целевой TCP/IP-библиотеке hlq.SEAZINST. Чтобы определить активный набор данных FTP.DATA, проанализируйте DD-оператор SYSFTPD процедуры запущенной задачи FTP (имя по умолчанию – FTPD). Если файл FTP.DATA не используется, FTP использует для этих параметров значения по умолчанию. В таком случае нужно создать набор данных FTP.DATA и указать имя набора данных в DD-операторе SYSFTPD запущенной задачи FTP.

Шаг 3. Установка политики AT-TLS с помощью IBM Configuration Assistant for z/OS Communication Server

  1. Запустите IBM Configuration Assistant for z/OS Communication Server, щелкните правой кнопкой мыши на z/OS Images и выберите Add new z/OS Image... (см. рисунок 1).
    Рисунок 1. Добавление образа z/OS
    Добавление образа z/OS
    Добавление образа z/OS
  2. Укажите имя образа z/OS и выберите версию z/OS в раскрывающемся меню. Нажмите OK, чтобы добавить новый образ z/OS (см. рисунок 2).
    Рисунок 2. Ввод имени и версии z/OS
    Ввод имени и версии z/OS
    Ввод имени и версии z/OS
  3. Образ z/OS должен появиться в левой панели представления Main Perspective в Configuration Assistant (см. рисунок 3).
    Рисунок 3. Образ и версия z/OS, добавленные в Configuration Assistant
    Образ и версия z/OS, добавленные в Configuration Assistant
    Образ и версия z/OS, добавленные в Configuration Assistant
  4. Выберите технологию AT-TLS, как показано на рисунке 4. Затем щелкните правой кнопкой мыши на этой строке и нажмите Enable. Статус должен измениться на Incomplete.
    Рисунок 4. Включение AT-TLS
    Включение AT-TLS
    Включение AT-TLS
  5. Нажмите Add New TCP/IP Stack... и введите имя стека TCP/IP, которое используется в системе MVD3. Нажмите OK.
    Рисунок 5. Добавление стека TCP/IP
    Добавление стека TCP/IP
    Добавление стека TCP/IP
  6. Запись стека TCP/IP должна появиться в Main Perspective под именем образа.
    Рисунок 6. Стек TCP/IP, добавленный под именем образа z/OS
    Стек TCP/IP, добавленный под именем образа z/OS
    Стек TCP/IP, добавленный под именем образа z/OS
  7. Выберите технологию AT-TLS и нажмите Enable. Теперь статус должен измениться на Incomplete и должна стать доступна кнопка Configure.
    Рисунок 7. Включение AT-TLS
    Включение AT-TLS
    Включение AT-TLS
  8. Нажмите Configure. В появившемся списке (см. рисунок 8) выберите правило Default_FTP-Server. Теперь нажмите Modify....
    Рисунок 8. Настройка AT-TLS
    Настройка AT-TLS
    Настройка AT-TLS
  9. Просмотрите все варианты. Если вы не используете номер порта по умолчанию 21, измените номер порта.
    Рисунок 9. Изменение правил для трафика
    Изменение правил для трафика
    Изменение правил для трафика
  10. Выберите вкладку Key Ring. Согласно рисунку 10 укажите имя хранилища ключей, созданного на шаге 1d. Нажмите OK.
    Рисунок 10. Изменение правил для хранилища ключей
    Изменение правил для хранилища ключей
    Изменение правил для хранилища ключей
  11. Измените имя хранилища ключей в перспективе AT-TLS (см. рисунок 11). Теперь щелкните правой кнопкой мыши на этой записи и выберите Enable Rule.
    Рисунок 11. Включение правил FTP
    Включение правил FTP
    Включение правил FTP
  12. Статус правила Default_FTP-Server должен измениться на Enabled. Нажмите Apply Changes, а затем OK (см. рисунок 12).
    Рисунок 12. Применение правил FTP
    Применение правил FTP
    Применение правил FTP
  13. Теперь вернитесь в Main Perspective и выберите в таблице запись AT-TLS. Нажмите OK.
    Рисунок 13. Выбор политики AT-TLS для установки
    Выбор политики AT-TLS для установки
    Выбор политики AT-TLS для установки
  14. Проверьте настройки в появившемся окне (см. рисунок 14). Внесите необходимые изменения и нажмите Install.
    Рисунок 14. Установка политики АТ-TLS
    Установка политики АТ-TLS
    Установка политики АТ-TLS
  15. Чтобы загрузить политику AT-TLS на удаленный хост z/OS по FTP, укажите путь установки, имя хоста, номер порта, идентификатор пользователя и пароль. Нажмите Go.
    Рисунок 15. Загрузка правил политики AT-TLS
    Загрузка правил политики AT-TLS
    Загрузка правил политики AT-TLS

    На этом установка политики AT-TLS на образ z/OS (MVD3), где выполняется FTP-сервер, завершена.

Шаг 4. Установка и настройка Policy Agent на z/OS

  1. В UNIX System Services в каталоге /etc создайте файл среды pagent.mvd3.env для Policy Agent. Содержимое этого файла показано в листинге 7.
    Листинг 7. Содержимое файла pagent.mvd3.env
    /MVD3/etc:>cat /etc/pagent.mvd3.env
    PAGENT_CONFIG_FILE=/etc/pagent.mvd3.conf
    PAGENT_LOG_FILE=/tmp/pagent.mvd3.log
    PAGENT_LOG_FILE_CONTROL=300,3
  2. В UNIX System Services в каталоге /etc создайте конфигурационный файл pagent.mvd3.conf для Policy Agent. Содержимое этого файла показано в листинге 8.
    Листинг 8. Содержимое файла pagent.mvd3.conf
    /MVD3/etc:>cat /etc/pagent.mvd3.conf
    TcpImage TCPIP /etc/mvd3.tcpip_image.conf
  3. В UNIX System Services в каталоге /etc создайте конфигурационный файл TCP/IP mvd3.tcpip_image.conf для Policy Agent. Содержимое этого файла показано в листинге 9.
    Листинг 9. Содержимое файла mvd3.tcpip_image.conf
    /MVD3/etc:>cat /etc/mvd3.tcpip_image.conf
    TTLSConfig /etc/cfgasst/v1r12/MVD3/TCPIP/tlsPol
  4. Скопируйте процедуру запущенной задачи PAGENT из целевой TCP/IP-библиотеки hlq.SEZAINST в system или user и измените оператор EXEC в соответствии с листингом 10.
    Листинг 10. Оператор EXEC запущенной задачи PAGENT
    //PAGENT   EXEC PGM=PAGENT,REGION=0K,TIME=NOLIMIT,                 
    //     PARM='POSIX(ON) ALL31(ON) ENVAR("_CEE_ENVFILE=DD:STDENV")/'

    Кроме того, измените оператор STDENV, указав файл среды PAGENT, созданный на шаге 4a (см листинг 11).
    Листинг 11. Оператор STDENV запущенной задачи PAGENT
    //STDENV   DD PATH='/etc/pagent.mvd3.env',PATHOPTS=(ORDONLY)
  5. Включите опцию AUTOLOG (если она не включена) в профиле процедуры запущенной задачи TCP/IP. Включите PAGENT в оператор AUTOLOG.
  6. Создайте определения профиля RACF для запущенной задачи PAGENT (см. листинг 12). Здесь SYSTASK – это идентификатор пользователя, для которого выполняется адресное пространство FTPD.
    Листинг 12. Команды RACF, определяющие ресурсы для запущенной задачи PAGENT
    RDEF STARTED PAGENT.* OWNER(owner_userID) STDATA(USER(SYSTASK))
    
    SETR RACLIST(STARTED) REFR
  7. Настройте управление доступом TTLS Stack Initialization, как описано ниже.

    Если используется Application Transparent Transport Layer Security (AT-TLS), z/OS не разрешит запуск реализованных на сокетах приложений, пока работает PAGENT, гарантируя, что применяются все политики безопасности. Однако некоторые важные приложения должны быть запущены до PAGENT. Для этого необходимо определить профиль ресурсов EZB.INITSTACK.sysname.tcpprocname в классе SERVAUTH. Пример команд RACF приведен в листинге 13.
    Листинг 13. Команда RACF для администрирования профилей в классе SERVAUTH
    SETROPTS CLASSACT(SERVAUTH)
    
    SETROPTS RACLIST (SERVAUTH)
    
    SETROPTS GENERIC (SERVAUTH)
    
    RDEFINE SERVAUTH EZB.INITSTACK.MVD3.TCPIP UACC(NONE)
    
    PERMIT EZB.INITSTACK.MVD3.TCPIP CLASS(SERVAUTH) ID(*) ACCESS(READ) +
    WHEN(PROGRAM(PAGENT,EZAPAGEN))
    
    SETROPTS GENERIC(SERVAUTH) REFRESH
    
    SETROPTS RACLIST(SERVAUTH) REFRESH
    
    SETROPTS WHEN(PROGRAM) REFRESH
  8. Остановите адресные пространства FTP и TCP/IP, выполнив в консоли z/OS команды /STOP. Перезагрузите адресное пространство TCP/IP либо из консоли z/OS Hardware Management Console, либо выполнив команду /RO MVD3,START в другом LPAR того же сисплекса. При включенной AT-TLS проверьте набор данных SYSOUT стека TCP/IP, чтобы узнать, какие криптографические алгоритмы поддерживаются вашим оборудованием.
    Листинг 14. Содержимое набора данных SYSOUT запущенной задачи TCP/IP
    System SSL: SHA-1 crypto assist is available          
    System SSL: SHA-224 crypto assist is available        
    System SSL: SHA-256 crypto assist is available        
    System SSL: SHA-384 crypto assist is not available    
    System SSL: SHA-512 crypto assist is not available    
    System SSL: DES crypto assist is not available        
    System SSL: DES3 crypto assist is not available       
    System SSL: AES 128-bit crypto assist is not available
    System SSL: AES 256-bit crypto assist is not available
    System SSL: ICSF services are not available

    Кроме того, после адресного пространства TCP/IP должно быть автоматически запущено адресное пространство PAGENT. Сообщения журнала заданий PAGENT показаны в листинге 15.

    Листинг 15. Сообщения журнала заданий PAGENT
    EZZ8431I PAGENT STARTING                                          
    EZZ8432I PAGENT INITIALIZATION COMPLETE                           
    EZZ8771I PAGENT CONFIG POLICY PROCESSING COMPLETE FOR TCPIP : TTLS
    EZD1586I PAGENT HAS INSTALLED ALL LOCAL POLICIES FOR TCPIP
  9. Теперь инициируйте запущенную задачу FTP-сервера с помощью команды /START из консоли z/OS. Если будет выведено сообщение, приведенное в листинге 16, значит, FTP-сервер запущен без ошибок.
    Листинг 16. Сообщение запущенной задачи FTP-сервера
    EZY2702I Server-FTP: Initialization completed at HH:MM:SS on MM/DD/YY.

    Этот шаг завершает установку FTPS-сервера на хосте z/OS. FTPS-сервер работает и готов принимать защищенные подключения клиентов.

Подключение к FTPS-серверу на z/OS

В этом разделе описывается подключение к FTPS-серверу на z/OS разных FTP-клиентов. Рассматриваются два сценария:

Сценарий 1. Подключение к FTPS-серверу на z/OS FTP-клиента, выполняющегося на рабочей станции

Сценарий 2. Подключение к FTPS-серверу на z/OS FTP-клиента, выполняющегося на другой системе z/OS

Сценарий 1. Подключение к FTPS-серверу на z/OS FTP-клиента, выполняющегося на рабочей станции

Примечание. В качестве примера для этого сценария использовался клиент Smart FTP, выполняющийся на рабочей станции Microsoft® Windows®. Можно использовать любой другой FTP-клиент, поддерживающий защищенные соединения, на соответствующей операционной системе.

  1. Импортируйте CA-сертификат (загруженный на шаге 1в) в качестве Trusted Root CA (см. рисунок 16).
    Рисунок 16. Импорт CA-сертификата на клиента
    Импорт CA-сертификата на клиента
    Импорт CA-сертификата на клиента
  2. Создайте новое подключение к FTPS-серверу, указав имя хоста, имя пользователя и пароль.
    Рисунок 17. Создание FTPS-подключения клиента
    Создание FTPS-подключения клиента
    Создание FTPS-подключения клиента
  3. Нажмите OK, чтобы создать подключение и вывести список каталогов на хосте z/OS (MVD3). Пример списка каталогов показан на рисунке 18. Это подтверждает, что FTP-клиент, выполняющийся на рабочей станции, успешно подключился к FTPS-серверу на хосте z/OS.
    Рисунок 18. Список каталогов в FTP-клиенте
    Список каталогов в FTP-клиенте
    Список каталогов в FTP-клиенте

Сценарий 2. Подключение к FTPS-серверу на z/OS FTP-клиента, выполняющегося на другой системе z/OS

В этом примере к FTPS-серверу на системе MVD3 подключается другая система z/OS (имя системы – MVC6), выступающая в качестве клиента. Выполнение на MVC6 JCL-задания запускает FTP-клиент, который подключается к FTPS-серверу на MVD3. Чтобы установить клиентскую систему MVC6, выполните следующие действия:

  1. Перенесите CA-сертификат FTPS-сервера (на MVD3) на клиентскую систему (MVC6). Обратите внимание, что этот CA-сертификат был экспортирован в набор данных на шаге 1c при установке FTPS-сервера на системе MVD3. Добавьте CA-сертификат в MVC6 RACF. В листинге 17 приведен пример JCL-кода. Кроме того, для добавления CA-сертификата можно использовать панели RACF.
    Листинг 17. Добавление CA-сертификата в клиентской системе
    //RACFCERT JOB CLASS=A,MSGCLASS=H,NOTIFY=&SYSUID,REGION=0M
    //CERT01 EXEC PGM=IKJEFT01
    //SYSTSPRT DD SYSOUT=*
    //SYSTSIN DD *
      RACDCERT ADD('PABMUKH.MVD3.FTPS.CACERT.B64') +
      CERTAUTH TRUST + 
      WITHLABEL('MVD3 FTPS CA CERT') 
    /*
  2. Создайте новое хранилище ключей RACF на клиентской системе (в данном примере используется PMFTPSCLNT). Владельцем этого хранилища должен быть userID, инициирующий задание FTP (в этом примере используется userID PABMUKH). Теперь подключите к этому хранилищу серверный CA-сертификат. В заключение выведите содержимое хранилища для проверки. Пример JCL-кода для выполнения команд RACF приведен в листинге 18. Кроме того, для установки клиентского хранилища ключей можно использовать панели RACF.
    Листинг 18. Установка клиентского хранилища ключей
    //RACFCERT JOB CLASS=A,MSGCLASS=H,NOTIFY=&SYSUID,REGION=0M
    //CERT01 EXEC PGM=IKJEFT01
    //SYSTSPRT DD SYSOUT=*
    //SYSTSIN DD *
      RACDCERT ID(PABMUKH) ADDRING(PMFTPSCLNT)
      
      RACDCERT ID(PABMUKH) +
      CONNECT(CERTAUTH LABEL('MVD3 FTPS CA CERT') +
      RING(PMFTPSCLNT) )
      
      RACDCERT ID(PABMUKH) LISTRING(PMFTPSCLNT)
    /*
  3. Задайте политику AT-TLS на клиентской системе с помощью z/OS Configuration Assistant, следуя инструкциям по настройке серверной системы (шаг 3). Разница состоит в том, что нужно вместо правила Default_FTP-Server выбрать правило Default_FTP-Client и указать имя клиентского хранилища ключей (PMFTPSCLNT) на вкладке Key Ring при изменении правил Key Ring. Эти действия показаны на рисунках 19 и 20.
    Рисунок 19. Настройка правила AT-TLS для клиента
    Настройка правила AT-TLS для клиента
    Настройка правила AT-TLS для клиента
    Рисунок 20. Изменение правил Key Ring для клиента
    Изменение правил Key Ring для клиента
    Изменение правил Key Ring для клиента

    Задайте политику AT-TLS на клиентской системе (MVC6). Шаги аналогичны установке на стороне сервера.
  4. Настройте профиль TCP/IP на поддержку TTLS (шаг 2а) и установите Policy Agent на клиентской системе (MVC6), следуя инструкции для серверной системы (шаги с 4а по 4h). Клиентская система готова для подключения к FTPS-серверу.
  5. Выполните задание FTPSCLNT (или аналогичное задание), приведенное в листинге 19, на клиентской системе. Задание FTPSCLNT выведет список файлов UNIX System Services в домашнем каталоге пользователя на системе MVD3. Обратите внимание, что DD-оператор SYSTCPD в JCL-коде указывает на тот же набор данных, что и DD-оператор SYSTCPD в запущенной задаче TCP/IP на клиентской системе. DD-оператор SYSFTPD указывает на специальный файл FTD.DATA для FTP-клиента. В файле FTP.DATA должно быть указано имя хранилища ключей FTP-клиента. Используемый в приведенном ниже JCL-коде файл SYSFTPD доступен в разделе Загрузка.
    Листинг 19. JCL-код FTPS-клиента
    //FTPSCLNT JOB ,CLASS=A,REGION=0M,                
    //     MSGCLASS=H,MSGLEVEL=(1,1),NOTIFY=&SYSUID  
    //FTPSTEP   EXEC PGM=FTP,PARM='-a TLS'             
    //SYSTCPD  DD DSN=TCPIP.PARMS(TDATAC6),DISP=SHR   
    //SYSFTPD  DD DSN=PABMUKH.CNTL(PMFTPCLN),DISP=SHR 
    //SYSPRINT DD  SYSOUT=*                          
    //INPUT    DD  *                                 
    BLRMVSD3.IN.IBM.COM                              
    PABMUKH PASSWORD                                 
    cd /u/pabmukh                                    
    ls                                               
    QUIT                                             
    /*

    Пример журнала заданий также доступен в разделе Загрузка.

Ресурсы для скачивания


Похожие темы

  • Оригинал статьи: Securing FTP server on z/OS (EN).
  • Узнайте больше об операционной системе IBM z/OS, посетив Web-сайт IBM z/OS.
  • Администраторы, отвечающие за безопасность системных данных z/OS, могут с помощью руководства Security Server RACF Security Administrator’s Guide познакомиться с использованием RACF для повышения безопасности систем.
  • Руководство zOS Communication Server IP Configuration Guide поможет в настройке областей IP-адресов, серверов и приложений для z/OS Communications Server.
  • Посетите сообщество Security на developerWorks, в библиотеке ресурсов которого можно найти руководства с инструкциями, статьи, видео и демонстрационные материалы.
  • Посетите блог Security на developerWorks, где можно найти самые последние руководства с инструкциями, статьи и видеоматериалы, посвященные безопасности.
  • Подпишитесь на еженедельную рассылку Security On developerWorks, чтобы получать самые свежие новости, касающиеся безопасности.
  • Следите за @dWSecurity в Твиттере, чтобы получать новости раздела Security на developerWorks в режиме реального времени.

Комментарии

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

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Open source
ArticleID=990472
ArticleTitle=Защищенный FTP-сервер на z/OS
publish-date=11252014