How to configure the nifi user authentication ?

这篇博客详细介绍了如何配置NiFi的Kerberos用户认证。首先,通过下载和安装Kerberos软件包,然后配置Kerberos,包括设置`krb5.conf`和`kdc.conf`。接着,创建通信主体和用户,并启动KDC进程。在NiFi方面,需要生成证书,配置`nifi.properties`,设置`login-identity-providers.xml`和`authorizers.xml`。最后,完成主机名映射,确保NiFi可以使用Kerberos认证安全运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

NIFI登录配置(kerberos

1.下载kerberos

(https://centos.pkgs.org/6/centos-x86_64/krb5-server-1.10.3-57.el6.x86_64.rpm.html)(下载rpm包网址

 

1.1下载四个包krb的包

krb5-auth-dialog-0.13-5.el6.x86_64.rpm

krb5-libs-1.10.3-57.el6.x86_64.rpm

krb5-server-1.10.3-57.el6.x86_64.rpm

krb5-workstation-1.10.3-57.el6.x86_64.rpm

1.2安装下载的四个包:

rpm -ivh krb5-auth-dialog-0.13-5.el6.x86_64.rpm(指令行)

rpm -ivh krb5-libs-1.10.3-57.el6.x86_64.rpm --force --nodeps(指令行)

rpm -ivh krb5-server-1.10.3-57.el6.x86_64.rpm(指令行)

rpm -ivh krb5-workstation-1.10.3-57.el6.x86_64.rpm(指令行)

2.安装和配置kerberos

2.1配置kerberos

关于kerberos的配置请参考前6步即可(下面是主要的两个配置文件例子)

http://jingyan.baidu.com/article/aa6a2c14e5020f0d4d19c44a.html?st=2&net_type=&bd_page_type=1&os=0&rst=&word=normal

2.2网站配置(以下可通过上述网站进行详细配置)

 (1) 配置krb5.conf

 vi /etc/krb5.conf(指令行)

Realm参数自己设定但要一

kdc=主机ip

admin_server=主机ip

Kdckdc位置 格式 主机:端口(可用默认)(主机可以是主机名或ip

(2)配置kdc.conf

   vi /var/kerberos/krb5kdc/kdc.conf(指令行)

Realms 参数要和krb5.confRealms一样。

(3)创建数据库

2.3创建通信主体和用户及启动kdc进程

1kerberos中创建两个主体

 kadmin.local(指令行)   进入数据库

 addprinc nifi/nifi.com@NIFI.COM(指令行)  添加用户

第二个 addprinc是向NiFi认证的最终用户也叫超级用户(user    

  addprinc user(指令行) 添加超级用户

2创建通信主体keytab文件

ktadd – k /opt/key/nifi-nifi.keytab nifi/nifi@NIFI.COM  (指令行)

3启动两个进程:

service

 krb5kdc start  (指令行)

service kadmin start(指令行)

kinit user(指令行)检测创建的用户是否

输入创建用户时输入的密码

Klist(指令行) 查看认证用户

3.NiFi配置

3.1生成证书

为了执行任何类型的身份验证,NiFi必须配置为使用https所以我们要配置证书和信任库,启用双向SSL

关于证书的生成nifi提供了 nifi-toolkit-1.1.0工具,可以直接生成证书。

具体使用可以参考官方文档或者下面链接

https://community.hortonworks.com/articles/58233/using-the-tls-toolkit-to-simplify-security.html

本文推荐使用(https://www.tinycert.org/#0)这个工具生成证书颁发机构及客户端/服务端证书。

 

(1)certificates.zip已经生成好的证书文件

下载zip地址:https://community.hortonworks.com/storage/attachments/4335-certificates.zip

下载后的包为:4335-certificates.zip

进入到4335-certificates.zip路径下

 

unzip 4335-certificates.zip(指令行) 解压包

 

生成之后下载CA及客户端等证书。

将客户端证书导入到浏览器中

将其他两个证书导入到服务器,执行下面指令。密钥库地址及密码自己设定

2)进入到解压完包的路径下

mv cert.pfx cert.p12(命令行)

openssl x509 -outform der -in cacert.pem -out cacert.der(命令行)

keytool -import -keystore cacert.jks -file cacert.der(命令行)

3.2 nifi.properties配置

1 Vi /opt/nifi-1.1.0/conf/nifi.properties(指令行)进入nifi配置文件

nifi.remote.input.secure=true

 

nifi.web.https.host=localhost

nifi.web.https.port=9445

 

nifi.security.keystore=./conf/keystore.jks

nifi.security.keystoreType=jks

nifi.security.keystorePasswd=<your password>

nifi.security.keyPasswd=<your password>

nifi.security.truststore=./conf/truststore.jks

nifi.security.truststoreType=jks

nifi.security.truststorePasswd=<your password>

根据自己之前的配置参数进行更改

1. # kerberos #

2. nifi.kerberos.krb5.file=/etc/krb5.conf

3. nifi.kerberos.service.principal=nifi/nifi@NIFI.COM (通信主体

4. nifi.kerberos.keytab.location=/opt/key/nifi-nifi.keytab

5. nifi.kerberos.authentication.expiration=12 hours

 

1. nifi.security.user.login.identity.provider=kerberos-provider

2. nifi.login.identity.provider.configuration.file=./conf/login-identity-providers.xml

3.3配置 login-identity-providers.xml 

<provider>

    <identifier>kerberos-provider</identifier>

    <class>org.apache.nifi.kerberos.KerberosProvider</class>

    <property name="Default Realm">NIFI.COM</property>

    <property name="Authentication Expiration">12 hours</property>

</provider>

NIFI.APACHE.ORG写自己的Realm

3.4配置authorizers.xml

<property name="Initial Admin Identity">user@NIFI.COM</property>

User@NIFI.COM 超级用户

3.5 主机名映射

10.20.204.159mk nifi.com

将域名映射到主机名,以便与我们的KDC中的域排队。

(注:若不用本机浏览器访问nifi,需要在客户端host文件加入 10.20.204.159 nifi.com

以上所有配置完成,启动nifi

在浏览器中访问:https://nifi.com:9445/nifi

(注:要在客户端导入客户端证书。)

当登录浏览器是可能会出现错误

Mozilla Firefox 火狐浏览器

选择 高级

Google Chrome


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值