专栏
天翼云开发者社区

Openstack密钥组件Barbican介绍

2023-06-02 16:02:36 65阅读

Barbican为openstack提供为任何环境提供密钥管理功能。

Barbican组件配置

  说明:此处”{BARBICAN_DBPASS}” “{barbican_dbpass}”为barbican代替密码,不为真实密码。

“{port}”为barbican相关代替端口,”{user}”为barbican代替用户,此文档不透露真实用户、端口和密码。

“{host}”为代替主机地址,其余{***}均为代替信息,不存在真实信息;

1、主机Hosts配置

SDK Proxy、OpenStack Controller、OpenStack Neutron节点/etc/hosts均需要配置Barbican服务节点主机,主机名为barbican-server.cty.os,IP与keystone-server.cty.os节点一致。

2、数据库配置

以下配置均在某个OpenStack Controller节点进行。

以管理身份连接control数据库创建barbican用户并授权

GRANT ALL PRIVILEGES ON `{user}`.* TO '{user}'@'localhost' IDENTIFIED BY '{BARBICAN_DBPASS}';

GRANT ALL PRIVILEGES ON `{user}`.* TO '{user}'@'%' IDENTIFIED BY '{BARBICAN_DBPASS}';

3、Barbican用户配置

以下配置均在某个OpenStack Controller节点进行。

(3.1)数据库查看用户信息

mysql -P{port} -u{user} -p{barbican_dbpass} -e "select user,host from mysql.user;"

(3.2)Openstack创建

<1>创建barbican用户

source admin-openrc.sh

openstack user create --domain default--password {BARBICAN_PASS} barbican

openstack role add --project {service} --user {user} admin

<2>配置creator角色

openstack role create {role}

openstack role add --project {service} --user {user} {role}

<3>创建barbican服务实体

openstack service create --name {user} --description "Key Manager" key-manager

<4>创建证书管理API

openstack endpoint create --region RegionOne key-manager public http://{host}:{port}

openstack endpoint create --region RegionOne key-manager internal http://{host}:{port}

openstack endpoint create --region RegionOne key-manager admin http://{host}:{port}

  • 主要配置文件

查看barbican配置文件barbican.conf

查看barbican主机名、服务端口、数据库用户及密码、barbican用户密码

host_href为Barbican组件默认的Endpoint,实际环境中主机名与端口号需要与Barbican安装前配置的Endpoint保持一致。

4、主要安装组件及服务

5、服务器防火墙配置

(5.1)在每个Neutron节点配置iptables,放开相关端口

iptables -I INPUT -p tcp -m multiport --dports {port} -j ACCEPT

iptables -I INPUT -p tcp -m multiport --dports {port} -j ACCEPT

iptables -I INPUT -p tcp -m multiport --dports {port} -j ACCEPT -s {OPENSTACK_CIDR}

iptables -I INPUT -p tcp -m multiport --dports {port} -j ACCEPT -s {OPENSTACK_CIDR}

OPENSTACK_CIDR为OpenStack各个节点的管理网段及掩码CIDR。

(5.2)保存iptables

service iptables save

  • Haproxy配置

此为运行在control节点的haproxy

6、配置查看haproxy.cfg

NEUTRON_NODE为三个Neutron节点的IP。

7、neutron文件中barbican关联配置

查看相关配置文件neutron_lbaas.conf

常见问题

1、云管平台无法创建证书,F12查看400

Barbican相关运维

1、服务查看

查看control节点服务端口,control01/02节点存在haproxy监听端口和barbican服务端口,control03节点只有barbican的服务端口

{port1}为haproxy监控端口

{port2}为httpd提供barbican服务端口

ss -tanlp | grep -E '{port}'

  • 配置文件查看

查看相关配置文件barbican.conf

sql_connection对应barbican数据库用户密码信息

下方域中用户密码为barbican用户密码

(2.1)登录对应数据库查看barbican数据库信息是否正确

mysql -u{user} -p{barbican_dbpass} -P{port} -h{host}

只有barbican一个授权的数据库即可

(2.2)查看barbican用户配置信息是否正确

source admin-openrc.sh

openstack secret store

查看返回确认是否有误报错

(2.3)token是否可以正常获取

修改相关admin-openstack为barbican-openrc.sh,将对应的用户名、密码和PROJECT修改正确

source barbican-openrc.sh

openstack token issue

输出结果获取token正常即可

(2.4)Barbican用户密码重置,适用于配置文件对应密码有误情况下

openstack user set  {user} --password {password}

(2.5)数据库barbican用户密码重置操作

删除原先barbican用户,重新创建并授权

delete from mysql.user where user='{user}' and host='{host}'

GRANT ALL PRIVILEGES ON `{user}`.* TO '{user}'@'localhost' IDENTIFIED BY '{BARBICAN_DBPASS}';

GRANT ALL PRIVILEGES ON `{user}`.* TO '{user}'@'%' IDENTIFIED BY '{BARBICAN_DBPASS}';

BARBICAN_DBPASS为密码

  • 数据库授权查看

mysql -u{user} -p{admin_dbpass} -P{port} -h{host} -e "select user,host from mysql.user;" | grep {user}

mysql -u{user} -p{admin_dbpass} -P{port} -h{host} -e "show grants for

mysql -u{user} -p{admin_dbpass} -P{port} -h{host} -e "show grants for '{user}'@'{host}';"

查看数据库中相关授权信息

  • iptables规则查看

查看iptables规则中有误对应的规则,可以通过相关端口过滤出来

5、排查思路总结:

(1)端口是否监听

(2)barbican服务及数据库权限是否正常

(3)iptanles规则查看

  • 0
  • 0
  • 0
0 评论
0/1000
评论(0) 发表评论
l****n

l****n

3 篇文章 0 粉丝
关注

Openstack密钥组件Barbican介绍

2023-06-02 16:02:36 65阅读

Barbican为openstack提供为任何环境提供密钥管理功能。

Barbican组件配置

  说明:此处”{BARBICAN_DBPASS}” “{barbican_dbpass}”为barbican代替密码,不为真实密码。

“{port}”为barbican相关代替端口,”{user}”为barbican代替用户,此文档不透露真实用户、端口和密码。

“{host}”为代替主机地址,其余{***}均为代替信息,不存在真实信息;

1、主机Hosts配置

SDK Proxy、OpenStack Controller、OpenStack Neutron节点/etc/hosts均需要配置Barbican服务节点主机,主机名为barbican-server.cty.os,IP与keystone-server.cty.os节点一致。

2、数据库配置

以下配置均在某个OpenStack Controller节点进行。

以管理身份连接control数据库创建barbican用户并授权

GRANT ALL PRIVILEGES ON `{user}`.* TO '{user}'@'localhost' IDENTIFIED BY '{BARBICAN_DBPASS}';

GRANT ALL PRIVILEGES ON `{user}`.* TO '{user}'@'%' IDENTIFIED BY '{BARBICAN_DBPASS}';

3、Barbican用户配置

以下配置均在某个OpenStack Controller节点进行。

(3.1)数据库查看用户信息

mysql -P{port} -u{user} -p{barbican_dbpass} -e "select user,host from mysql.user;"

(3.2)Openstack创建

<1>创建barbican用户

source admin-openrc.sh

openstack user create --domain default--password {BARBICAN_PASS} barbican

openstack role add --project {service} --user {user} admin

<2>配置creator角色

openstack role create {role}

openstack role add --project {service} --user {user} {role}

<3>创建barbican服务实体

openstack service create --name {user} --description "Key Manager" key-manager

<4>创建证书管理API

openstack endpoint create --region RegionOne key-manager public http://{host}:{port}

openstack endpoint create --region RegionOne key-manager internal http://{host}:{port}

openstack endpoint create --region RegionOne key-manager admin http://{host}:{port}

  • 主要配置文件

查看barbican配置文件barbican.conf

查看barbican主机名、服务端口、数据库用户及密码、barbican用户密码

host_href为Barbican组件默认的Endpoint,实际环境中主机名与端口号需要与Barbican安装前配置的Endpoint保持一致。

4、主要安装组件及服务

5、服务器防火墙配置

(5.1)在每个Neutron节点配置iptables,放开相关端口

iptables -I INPUT -p tcp -m multiport --dports {port} -j ACCEPT

iptables -I INPUT -p tcp -m multiport --dports {port} -j ACCEPT

iptables -I INPUT -p tcp -m multiport --dports {port} -j ACCEPT -s {OPENSTACK_CIDR}

iptables -I INPUT -p tcp -m multiport --dports {port} -j ACCEPT -s {OPENSTACK_CIDR}

OPENSTACK_CIDR为OpenStack各个节点的管理网段及掩码CIDR。

(5.2)保存iptables

service iptables save

  • Haproxy配置

此为运行在control节点的haproxy

6、配置查看haproxy.cfg

NEUTRON_NODE为三个Neutron节点的IP。

7、neutron文件中barbican关联配置

查看相关配置文件neutron_lbaas.conf

常见问题

1、云管平台无法创建证书,F12查看400

Barbican相关运维

1、服务查看

查看control节点服务端口,control01/02节点存在haproxy监听端口和barbican服务端口,control03节点只有barbican的服务端口

{port1}为haproxy监控端口

{port2}为httpd提供barbican服务端口

ss -tanlp | grep -E '{port}'

  • 配置文件查看

查看相关配置文件barbican.conf

sql_connection对应barbican数据库用户密码信息

下方域中用户密码为barbican用户密码

(2.1)登录对应数据库查看barbican数据库信息是否正确

mysql -u{user} -p{barbican_dbpass} -P{port} -h{host}

只有barbican一个授权的数据库即可

(2.2)查看barbican用户配置信息是否正确

source admin-openrc.sh

openstack secret store

查看返回确认是否有误报错

(2.3)token是否可以正常获取

修改相关admin-openstack为barbican-openrc.sh,将对应的用户名、密码和PROJECT修改正确

source barbican-openrc.sh

openstack token issue

输出结果获取token正常即可

(2.4)Barbican用户密码重置,适用于配置文件对应密码有误情况下

openstack user set  {user} --password {password}

(2.5)数据库barbican用户密码重置操作

删除原先barbican用户,重新创建并授权

delete from mysql.user where user='{user}' and host='{host}'

GRANT ALL PRIVILEGES ON `{user}`.* TO '{user}'@'localhost' IDENTIFIED BY '{BARBICAN_DBPASS}';

GRANT ALL PRIVILEGES ON `{user}`.* TO '{user}'@'%' IDENTIFIED BY '{BARBICAN_DBPASS}';

BARBICAN_DBPASS为密码

  • 数据库授权查看

mysql -u{user} -p{admin_dbpass} -P{port} -h{host} -e "select user,host from mysql.user;" | grep {user}

mysql -u{user} -p{admin_dbpass} -P{port} -h{host} -e "show grants for

mysql -u{user} -p{admin_dbpass} -P{port} -h{host} -e "show grants for '{user}'@'{host}';"

查看数据库中相关授权信息

  • iptables规则查看

查看iptables规则中有误对应的规则,可以通过相关端口过滤出来

5、排查思路总结:

(1)端口是否监听

(2)barbican服务及数据库权限是否正常

(3)iptanles规则查看

文章来自专栏

技术积累

3 篇文章 1 订阅
0 评论
0/1000
评论(0) 发表评论
  • 0
    点赞
  • 0
    收藏
  • 0
    评论