Шифрование и секретность в Linux


Синтаксис записей файла pg_hba conf



Листинг 8.5. Синтаксис записей файла pg_hba.conf

# Запись типа "local"

local база_дднных метод^аутентификации [ параметр ]

# Запись типа "host"

host база_данных 1р_адрес сетевая_наска метод_аутентификации [ параметр ]

# Запись типа "hostssl"

hostssl база_данных тр_адрес сетевая_маска метод_аутентификации [ параметр ]

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

Помните, что каждая запись в файле pg_hba.conf должна полностью умещаться в одной строке. Перенос записей на другую строку запрещен.

Ниже перечислены компоненты записей pg_hba.conf, упоминаемые в листинге 8.5.

  • база_данных. Имя базы данных, к которой разрешено подключаться заданному хосту. Возможны три варианта:


  • ключевое слово al 1 означает, что клиент может подключиться к любой базе данных, обслуживаемой сервером PostgreSQL;
  • ключевое слово sameuser означает, что клиент может подключаться только к базе данных, имя которой совпадает с именем аутентифицироваиного пользователя;
  • если в записи указывается конкретное имя базы данных, клиент сможет подключиться только к этой базе.
  • ip_adpec, сетевая ^маска. Поля ip_adpec и сетевая_маска определяют либо конкретный IP-адрес, либо интервал IP-адресов, которым разрешено подключение к серверу PostgreSQL. Интервал задается в виде сетевой маски, описывающей IP-сеть. При указании отдельного IP-адреса поле сетевой маски должно быть равно 255.255~. 255.255.
  • Примечание 6
    Примечание 6

    За информацией о сетевых масках обращайтесь на сайт Linux Networking HOWTO (http://www. thelinuxreview.com/howto/networking) или к системному администратору.

    • метод_аутентификации. Метод аутентификации, который должен использоваться сервером при подключении пользователя к PostgreSQL. Ниже перечислены допустимые значения этого поля.
    • trust. Хост объявляется доверенным, то есть любой пользователь с него подключается к базе данных PostgreSQL без пароля. Таким образом, вы автоматически доверяете всем пользователям хоста. Естественно, это весьма рискованный метод, если заданный хост недостаточно хорошо защищен или предоставляет доступ посторонним пользователям.
    • reject. Доступ к PostgreSQL для соответствующего хоста/пользователя автоматически отклоняется. Такая настройка подходит лишь в том случае, если хост заведомо не должен получать доступ к серверу PostgreSQL.
    • password. Для получения доступа пользователь должен ввести пароль, который совпадает с паролем, хранящимся в глобальной системной таблице pg_shadow с именем этого пользователя. Пароль пересылается в текстовом виде.
    • crypt. Этот метод аналогичен методу password, но в нем пароль пересылается не в простом текстовом виде, а с применением простой схемы шифрования, которая не обеспечивает надежной защиты, но это все же лучше, чем простая пересылка пароля в текстовом виде, как в методе password.
    • krb4, krb5. Используется система аутентификации Kerberos версий 4 и 5. Вопросы установки и настройки Kerberos выходят за рамки темы книги, но если вы захотите организовать аутентификацию с использованием Kerberos, такой вариант существует.
    • ident. При запросе на подключение от хоста с IP-адресом, заданным в файле pg_hba.conf, должна применяться карта идентификации. У метода имеется один обязательный параметр, значением которого является либо специальное ключевое слово sameuser, либо имя карты, определенной в файле pgjdent.conf. Дополнительная информация о картах идентификации приведена в пункте «Файл pg_ident.conf>
      >
      .
  • параметр. Поле параметра может быть обязательным или необязательным в зависимости от выбранного метода аутентификации. В PostgreSQL 7.1.x оно обязательно только для метода Ident.
  • ВНИМАНИЕ

    Методы password и crypt рекомендуется использовать лишь в сочетании с внешним механизмом шифрования. Информация о применении единого механизма шифрования для всего трафика PostgreSQL приведена в разделе «Шифрование сеанса».



    Содержание раздела