English ·   Russian
Пост

Аутентификация в GlusterFS с помощью SSL/TLS

Как только я знакомился с GlusterFS, то первым делом решил поискать информацию о безопасности. Никакой проверки по логину и паролю в GlusterFS я не нашёл, но есть возможность аутентифицировать клиента посредством TLS, об этом и пойдёт речь дальше.

Я буду проводить всё под Debian, но всё должно быть актуально и для других дистрибутивов. Про установку GlusterFS я не буду, перейдём к сути.

Первым делом создаём ключи и сертификаты, это делается следующими командами:

1
openssl genrsa -out /etc/ssl/glusterfs.key 1024
1
openssl req -new -x509 -key /etc/ssl/glusterfs.key -subj /CN=YourName -out /etc/ssl/glusterfs.pem

Обратите внимание на параметр CN (Common Name), укажите в нём ваше имя.

Вместо YourName укажите своё имя, например knik или любое другое.

После того, как создали сертификат, создадим его копию:

Вместо YourName укажите своё имя, например knik или любое другое.

После того, как создали сертификат, создадим его копию:

1
cp /etc/ssl/glusterfs.pem /etc/ssl/glusterfs.ca

Установим права чтение только для пользователя root:

1
chown root:root /etc/ssl/glusterfs.*
1
chmod 600 /etc/ssl/glusterfs.*

Теперь нужно включить SSL для нашего volume:

1
2
gluster volume set gv0 client.ssl on
gluster volume set gv0 server.ssl on

Обратите внимание, что вместо gv0 нужно поставить название вашего volume, оно может быть любым другим.

Зададим список шифров:

1
gluster volume set gv0 ssl.cipher-list 'HIGH:!SSLv2'

Теперь разрешим подключение клиентов с именем YourName. Измените это имя на то, что вы указали на первых шагах при генерации ключей и сертификатов.

1
gluster volume set gv0 auth.ssl-allow 'YourName'

Если volume уже запущено, то его нужно остановить и запустить вновь, делаем это следующими командами:

1
2
gluster volume stop gv0
gluster volume start gv0

Настройка клиента

Настройка клиентов не составляет никакого труда. Скопируйте сгенерированные ранее ключи и сертификаты glusterfs.ca, glusterfs.pem и glusterfs.key в каталог /etc/ssl на клиенте, после этого попробуйте смонтировать glusterfs:

1
mount -t glusterfs you-server:/gv0 /path/to/mount/point

Полезные ссылки

Авторский пост защищен лицензией CC BY 4.0 .

Популярные теги