`

2019最新 Kerberos 联调环境 Linux 安装配置

 
阅读更多


 2019最新 Kerberos 联调环境 Linux 安装配置

 

 

 

Prerequisite


操作系统: CentOS 7


JDK版本:1.8.0_131


Step 1. Install Kerberos

 

PS:登录到终端的用户是 ROOT.

 

 

 

 

1.1  安装Kerberos服务

 

 

 

yum install -y krb5-server krb5-workstation

 

1.2 更新主机名

 

 

 

 

这一步可以参考网上的操作,我不啰嗦了,你们的主机名自己设置,我用的是duanduan。

 

 

1.3  配置Kerberos

 

    服务器hostname需提前配置好以便下列kerberos配置文件使用,参考下图

 

配置格式:

 

${IP_ADDRESS}  xxx.iteye.com xxx

 

1.3.1 查看主机IP

查看命令: ifconfig

 

 

 

记住上图红框中的ip,接下来更新到hosts文件

 

1.3.2  更新hosts文件

 

查看命令: vi /etc/hosts

 

 

为了测试,我用的是 192.168.126.144 duanduan.iteye.com duanduan

 

需要自己添加一行 ,如上图。

 

 

 1.3.3  更新客户端文件

 

查看命令:vi  /etc/krb5.conf

 

该文件的修改处如下图所示:

 

 

 

 

查看命令:vi  /var/kerberos/krb5kdc/kdc.conf

 

该文件的修改处如下图所示:

 

 

 

查看命令:vi  /etc/krb.realms不存在则创建该文件

 

该文件的新增内容如下图所示

 

 

 

 

新增的内容如下:

duanduan.iteye.com ITEYE.COM
.iteye.com ITEYE.COM

 

 

 

 

1.4  创建KDC数据库

 

 

执行命令创建kerberos数据库, 按照提示输入密码

 

/usr/sbin/kdb5_util create -s

 

 

如下图:

 

 

 

 

 

输入的密码要记住,后续有用!

 

创建完成会在/var/kerberos/krb5kdc/下面生成一系列文件,若重建数据库则需先删

 

除/var/kerberos/krb5kdc下面principal相关文件

 



 

 

 

1.5  配置权限

 

给数据库管理员添加ACL权限,修改kadm5.acl文件,*代表全部权限

 

#vi /var/kerberos/krb5kdc/kadm5.acl

编辑文件,更新为ITEYE,如下图:



1.6  添加Kerberos管理员

 

根据提示输入管理员密码

 

# kadmin.local

kadmin.local:  addprinc admin/admin

 

如下图所示:



 

完成密码输入后,输入exit 退出命令行。 

 

输入的密码要记住,后续有用!

 

 

 

1.7  查看Kerberos服务状态,设置开机自启动

 

service krb5kdc status  -- 查看状态(下同)

 

service kadmin status  

 

service krb5kdc start/stop/restart  -- 启动/停止/重启(下同)

 

service kadmin start/stop/restart

 

chkconfig krb5kdc on  -- 设置开机自启(下同)

 

chkconfig kadmin on

 

如果中途有重启过linux操作系统,需要重启Kerberos的服务。参考上图重启命令。

 



 

 

1.8  配置JCE

 

CentOS6.5及以上系统默认使用AES-256加密,因此需要所有节点安装并配置JCE,

 

JCE下载路径:

 

http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html

 

 

参考下图,使用下载或文章后面的在线安装包中的jar

 

替换/usr/lib/jvm/${JAVA_VERSION_PATH}/jre/lib/securityjar

 

(注:需使用root用户替换,其他用户可能没权限操作)

 

 

Step 2. Configure a Service Principal for an Oracle Database Server

 

2.1 Principal格式及说明

 

 

 

kservice/kinstance@REALM



 Kservice 只的是ORACLE 的 SID,不懂SID的可以网上搜一下。

 

示例:

 

oracle/dbserver.example.com@EXAMPLE.COM

 

 

2.2 添加Principal

 

addprinc -randkey orcl/duanduan.iteye.com@ITEYE.COM

 

参考下图

 

 

输入exit 退出命令行。

 

 

 

Step 3. Extract a Service Key Table from Kerberos

 

3.1 提取Service Key Table

 

root用户执行命令:

 

先执行 命令 kadmin.local

 

kadmin.local:  ktadd -k /tmp/keytab orcl/duanduan.iteye.com
kadmin.local:  exit

 

 

输入exit 退出命令行。

 

切换 oracle户执行命令:

 

--  cd ${ORACLE_HOME}/bin ,需根据${ORACLE_HOME}实际路径执行下列命令
cd /u01/app/oracle/product/11.2.0/dbhome_1/bin 
oklist -k -t /tmp/keytab

 注意执行 oklist -k  -t /tmp/keytab 命令,发现这个文件的权限如下

 

-rw------- 1 root    root        634 4月  11 16:59 keytab

需要将keytab 的访问权限开放给oracle。否则会执行失败。

 

  用ROOT 用户 执行开放权限的命令 chmod 777 /tmp/keytab  



 

切换oracle户执行命令,执行结果如下:


 

 

 

3.2 移动Service Key Table

 

# mv /tmp/keytab /etc/v5srvtab

 

 

3.3 检查Service Key Table权限

 

查看/etc/v5srvtab权限,确保oracle用户拥有该文件读权限

 

 

 

若无读权限,可使用下列命令授予权限

 

# chmod 777 /etc/v5srvtab

 

Step 4. Configure Kerberos Authentication

 

4.1 配置sqlnet.ora

 

编辑${ORACLE_HOME}/network/admin/sqlnet.ora配置, 参考下图:

 

若该配置文件存在,直接编辑;若该配置文件不存在,复制${ORACLE_HOME}/network/admin/samples/sqlnet.ora${ORACLE_HOME}/network/admin/目录下,然后再编辑。

 

SQLNET.KERBEROS5_REALMS = /etc/krb.realms
SQLNET.KERBEROS5_CC_NAME = /tmp/krb5cc_0
SQLNET.AUTHENTICATION_SERVICES= (BEQ, TCPS, KERBEROS5)
TRACE_LEVEL_CLIENT = SUPPORT
TRACE_LEVEL_SERVER = SUPPORT
SQLNET.KERBEROS5_CONF = /etc/krb5.conf
SQLNET.KERBEROS5_CONF_MIT=TRUE
SQLNET.AUTHENTICATION_KERBEROS5_SERVICE = orcl
ADR_BASE = /u01/app/oracle

新增的文件



 

4.2 配置init.ora

 

编辑${ORACLE_HOME}/dbs/init.ora, 添加下列配置

 

OS_AUTHENT_PREFIX=""

 

新增的内容如下:

 



 
 

 

 

Step 5. Create a Kerberos User

 

创建kerberos用户,根据提示输入密码

 

kadmin.local: addprinc krbuser
kadmin.local: exit



  

 

完成密码输入后,输入exit 退出命令行。 

 

输入的密码要记住,后续有用!

Step 6. Create an Externally Authenticated Oracle User

 

切换oralce用户

# su - oracle

 

# sqlplus /nolog
SQL> CONNECT / AS SYSDBA;
SQL> CREATE USER "KRBUSER@ITEYE.COM" IDENTIFIED EXTERNALLY; 
SQL> GRANT CREATE SESSION TO "KRBUSER@ITEYE.COM";

 

执行结果



 

 

Step 7. Get an Initial Ticket for the Kerberos/Oracle User

 

切换到${ORACLE_HOME}/bin目录, 执行下列命令初始化ticket

 

okinit krbuser

 

 

完成密码输入后,输入exit 退出命令行。 

 

输入的密码要记住,后续有用!

 

 

测试数据库连接,如能连接,说明已安装成功

 

sqlplus /@orcl

 连接成功后的效果图



 

 

 

 

 

 

 

 如果连接不上,从这3个方面入手解决

 

1.查看Oracle 的 ora 监听文件的host是否改成 duanduan,跟着主机名一样就行。

 

2.用kist 命令 检查是否过期。如果过期用 kinit krbuser 重新注册。密码用之前保存设置的。[root@duanduan ~]# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: krbuser@ITEYE.COM

Valid starting       Expires              Service principal
2019-04-11T18:25:27  2019-04-12T02:25:12  krbtgt/ITEYE.COM@ITEYE.COM
[root@duanduan ~]# kinit krbuser
Password for krbuser@ITEYE.COM:
[root@duanduan ~]# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: krbuser@ITEYE.COM

Valid starting       Expires              Service principal
2019-04-12T15:13:53  2019-04-13T15:13:53  krbtgt/ITEYE.COM@ITEYE.COM

 3.检查 /tmp/krb5cc_0  的文件权限是否有问题,建议执行如下命令:

 

[root@duanduan ~]# chmod 777 /tmp/krb5cc_0
[root@duanduan ~]# ll /tmp/krb5cc_0
-rwxrwxrwx 1 root root 685 4月  12 15:14 /tmp/krb5cc_0

 

Resources

 

官网:

 

https://web.mit.edu/kerberos/krb5-1.16/doc/index.html

 

 

 

相关说明文章:

 

https://docs.oracle.com/cd/E56344_01/html/E53971/kintro-1.html#scrolltoc

 

http://linux.vbird.org/linux_enterprise/kerberos.php

 

 

 

安装配置参考文章:

 

https://docs.oracle.com/cd/E11882_01/network.112/e40393/asokerb.htm#ASOAG060

 

https://blog.csdn.net/Post_Yuan/article/details/54406148

 

http://www.ateam-oracle.com/configuring-your-oracle-database-for-kerberos-authentication/

 

https://yq.aliyun.com/articles/624363?spm=a2c4e.11154873.tagmain.6.77abc71cxnqftk

 

 

 

常见错误原因列表及解决办法:

 

https://docs.oracle.com/cd/E19253-01/816-4557/trouble-6/index.html

 

 

 

 

 

 

 

 

 

  • 大小: 6.1 KB
  • 大小: 7.4 KB
  • 大小: 20.9 KB
  • 大小: 15.7 KB
  • 大小: 47.7 KB
  • 大小: 27 KB
  • 大小: 9.2 KB
  • 大小: 21.3 KB
  • 大小: 13.4 KB
  • 大小: 6 KB
  • 大小: 10.8 KB
  • 大小: 67.5 KB
  • 大小: 53.5 KB
  • 大小: 54.6 KB
  • 大小: 18.9 KB
  • 大小: 47 KB
  • 大小: 5.8 KB
  • 大小: 33.6 KB
  • 大小: 40.2 KB
  • 大小: 27.4 KB
  • 大小: 66.8 KB
  • 大小: 17.7 KB
  • 大小: 20.6 KB
  • 大小: 29.6 KB
分享到:
评论

相关推荐

    LINUX下的kerberos的安装配置

    本文将重点介绍如何在Linux环境下安装和配置Kerberos服务,并使用Kerberos提供的服务来替代传统的telnetd、rlogind和rshd等服务。 #### 安装环境及软件包 - **操作系统**: Red Hat 8.0 - **安装包**: - krb5-...

    Hadoop部署和配置Kerberos安全认证

    #### 二、Linux环境下安装Kerberos KDC服务 1. **安装Kerberos KDC服务** 在CentOS 6.7操作系统上,可以通过`yum`工具安装Kerberos的相关软件包。执行如下命令: ``` yum install krb5-libs krb5-server krb5-...

    centos7 pyhive连接hive(基于kerberos).docx

    本文将详细介绍如何在 CentOS 7 上安装必要的软件包,并配置基于 Kerberos 的 PyHive 连接 Hive。 #### 1. 安装所需软件包 为了使 PyHive 能够顺利地与 Hive 通信,并支持 Kerberos 认证,我们需要安装一系列的...

    为hdfs配置kerberos

    在配置 Kerberos 之前,需要安装和部署 Kerberos 服务。安装和部署 Kerberos 服务的过程请参考相关博客文章。 在 Kerberos 中,为 Namenode 和 Datanode 分别新建 principal:nn/admin@psy.com、dn/admin@psy.com ...

    kerberos安装手册

    - 已配置YUM源:为了确保Kerberos组件能够顺利安装,需要提前配置好系统的YUM源,通常配置好操作系统和Hadoop的源之后即可满足安装需求。 - JCE策略文件:下载Java Cryptography Extension (JCE) Unlimited ...

    kafka 配置kerberos安全认证

    ### Kafka配置Kerberos安全认证详解 #### 一、引言 Kafka 是一款高性能的消息队列服务,...需要注意的是,在实际部署过程中,可能还会遇到各种细节问题,比如权限设置、配置文件路径等,都需要根据具体环境进行调整。

    ElasticSearch7.2.1+SearchGuard+Kibana+KerBeros集群测试环境部署文档.pdf

    配置Kerberos主配置文件(`/etc/krb5.conf`),并设置Kerberos域。 3. **创建Kerberos服务主体** 为Elasticsearch和SearchGuard创建服务主体,并生成密钥。 4. **配置Elasticsearch和SearchGuard支持Kerberos** ...

    Kerberos的相关配置

    #### 二、AD域控制器下的Kerberos配置 **1. 创建域控制器** 本文以Windows Server 2008为例创建域控制器。具体步骤如下: - **启动dcpromo工具**:点击“开始”菜单,输入“dcpromo”命令。 - **创建活动目录**:...

    Kerberos安装教程及使用详解

    Kerberos协议: Kerberos协议主要用于计算机网络的身份鉴别...2.1. 环境配置  安装kerberos前,要确保主机名可以被解析。  主机名 内网IP 角色 Vmw201 172.16.18.201 Master KDC Vmw202 172.16.18.20

    kerberos 环境搭建

    kerberos 环境搭建

    windows配置kerberos认证

    3. **修改Kerberos配置文件**: - Kerberos的配置文件通常位于`C:\ProgramData\MIT\Kerberos5\`目录下,文件名为`krb5.ini`。 - 修改该文件以适应您的环境需求,比如指定Kerberos服务器的位置、域名以及其他特定于...

    单机 kafka 配置 kerberos,设置 ACL 权限

    kafka 配置 kerberos,设置 ACL权限, java 客户端连接。

    kerberos认证hive连接代码

    1. **配置Kerberos环境**:首先确保你的系统已经安装了Kerberos客户端,并且已经配置了Kerberos的keytab文件和principal。keytab文件包含了用户的加密凭据,principal是Kerberos中的身份标识。 2. **Hive JDBC连接...

    kerberos安装和介绍文档

    安装Kerberos涉及多个步骤,包括配置环境、安装软件、设置服务和用户等。具体操作可能因操作系统而异,但通常包括以下步骤: 1. **环境准备**:确保系统满足Kerberos的依赖要求,如OpenSSL库和相关的开发工具。 2....

    cpp-从Linux内核密钥中提取Kerberos票证的工具

    标题中的“cpp-从Linux内核密钥中提取Kerberos票证的工具”表明这是一个用C++编写的程序,其主要功能是读取Linux内核中的密钥,并用于解析和提取Kerberos票证。Kerberos是一种广泛使用的网络身份验证协议,它通过...

    kerberos环境搭建

    在搭建Kerberos环境前,你需要一个运行Linux的操作系统,例如Ubuntu或CentOS。确保系统已经更新到最新,并安装必要的软件包,如`krb5-server`、`krb5-workstation`等。 3. **配置KDC**: - 配置主KDC:在/etc/krb...

    Hadoop2.0+Kerberos配置

    以下是对标题“Hadoop2.0+Kerberos配置”和描述“Hadoop的安全认证机制,在hadoop的集群中实现对服务器与服务器之间的安全保障”中涉及知识点的详细说明: 1. Hadoop2.0安全机制:Hadoop2.0版本对安全性进行了增强...

    kerberos系统的安装指南

    配置Kerberos服务器需要安装Kerberos软件包,并配置Kerberos服务器的配置文件。Kerberos服务器的配置文件用于指定身份验证服务器的地址、端口号、加密算法等。 五、客户端配置 客户端需要安装Kerberos客户端软件包...

    kerberos 软件包 linux

    Kerberos是一款广泛应用于网络身份验证的安全协议,尤其在Linux和Unix系统中。它由麻省理工学院开发,旨在提供强大的认证服务,确保用户在访问网络资源时的身份真实可信。Kerberos软件包,如krb5-1.6.3,是实现这一...

Global site tag (gtag.js) - Google Analytics