Hadoop Web 控制台安全认证

  • 前言
  • 一、修改Hadoop的web.xml配置文件
  • 二、配置jetty-web.xml
  • 三、配置realm.properties文件
  • 四、重启namenode,使认证生效
  • 五、登录Hadoop Web页面验证

前言

Hadoop 2.x 版本,默认情况下,可以通过 http://ip地址:50070/explorer.html 访问HDFS页面,查看Namenode和Datanode状态,以及HDFS的相关文件等。但是这存在安全隐患,可能导致我们的文件信息的泄露,如果我们在页面里面添加个认证机制,只有验证之后的用户才可以进入页面里操作。

一、修改Hadoop的web.xml配置文件

文件路径: /usr/hdp/2.5.3.0-37/hadoop-hdfs/webapps/hdfs/WEB-INF
执行 cat web.xml 可查看原有配置如下

编辑web.xml,填入以下内容(这是我的配置, role-name 要根据自己的实际情况配置,我的hadoop用户是在rootgroup下的,所以填root):

<?xml version="1.0" encoding="UTF-8"?>
<!--Licensed under the Apache License, Version 2.0 (the "License");you may not use this file except in compliance with the License.You may obtain a copy of the License athttp://www.apache.org/licenses/LICENSE-2.0Unless required by applicable law or agreed to in writing, softwaredistributed under the License is distributed on an "AS IS" BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.See the License for the specific language governing permissions andlimitations under the License. See accompanying LICENSE file.
-->
<web-app version="2.4" xmlns=" http://java.sun.com/xml/ns/j2ee "><!-- Add this towards the bottom of the xml document. --><security-constraint><web-resource-collection><web-resource-name>Protected</web-resource-name><url-pattern>/*</url-pattern>    <!--  这是正在被保护的路径,当前设定的是root路径下的web ui --></web-resource-collection><auth-constraint><role-name>root</role-name>   <!--  hadoop用户的组名 --></auth-constraint></security-constraint><login-config><auth-method>BASIC</auth-method>  <!-- HTTP规范,Base64 编码方式, 采用Base64编码具有不可读性,需要解码后才能阅读。--><realm-name>jobtrackerRealm</realm-name>  <!-- 这个名称要和下面jetty里的name一致--></login-config>
</web-app>

二、配置jetty-web.xml

和web.xml在同一个文件夹下,如果没有,则新增一个,填入以下内容

<Configure class="org.mortbay.jetty.webapp.WebAppContext"><Get name="securityHandler"><Set name="userRealm"><New class="org.mortbay.jetty.security.HashUserRealm"><Set name="name">jobtrackerRealm</Set>  <!-- 这个名称要和上面web里的realm-name一致--><Set name="config"><SystemProperty name="hadoop.home.dir"/>/etc/hadoop/realm.properties  <!-- 存放用户和用户密码的地方--></Set></New></Set></Get>
</Configure>

/etc/hadoop/realm.properties是配置用户名密码的文件

三、配置realm.properties文件

在 jetty-web.xml 配置的路径下,/etc/hadoop/realm.properties ,这个文件是没有 的,要先创建。

cd /etc/hadoop
touch realm.properties

添加用户名,密码,用户组

vi /etc/hadoop/realm.propertieshadoop:hadoop,hadoop


一个用户密码一行,要配置多个,就多行,并将文件copy到/etc/hadoop/2.5.3.0-37/0/目录下,并修改文件权限。

cp /etc/hadoop/realm.properties /etc/hadoop/2.5.3.0-37/0/
chmod 755 /etc/hadoop/2.5.3.0-37/0/realm.properties

四、重启namenode,使认证生效

这里建议先重启standbynamenode,然后主从切换,重启切下来的standbynamenode,不要直接重启active的namenode

五、登录Hadoop Web页面验证

出现用户名和密码验证弹窗即设置成功!


大家好,我是徐小慧

Hadoop Web 控制台安全认证相关推荐

  1. hadoop生态的kerberos认证系列2-hadoop

    hadoop生态的kerberos认证系列2-hadoop 一.准备工作 二.配置 1.hdfs配置kerberos认证 1.1所有节点安装autoconf 1.2所有节点安装gcc 1.3安装jsv ...

  2. 学习笔记:部署趋势科技企业安全无忧版——服务器端和web控制台的安装(一)...

    测试平台W2K3E SP2+VM6.5 本文将学习以下内容: 1. 采用定制安装的方法安装企业安全无忧版 2. Web控制台管理界面介绍 在安装的过程中,主要注意三个方面的内容:安全管理服务器.web ...

  3. Ignite Web 控制台(使用官方免费部署的控制台)

    前提: 假设已安装ignite,并且安装路径为:/usr/apache-ignite-fabric-2.1.0-bin 1.下载Web Agent 打开链接:https://console.gridg ...

  4. 搭建nginx服务、nginx的升级安装、Nginx配置文件的解析、web页面用户认证

    一,Nginx安装 1.安装nginx #  yum -y install gcc pcre-devel openssl-devel                              //安装 ...

  5. Web APi之认证(Authentication)两种实现方式【二】(十三)

    前言 上一节我们详细讲解了认证及其基本信息,这一节我们通过两种不同方式来实现认证,并且分析如何合理的利用这两种方式,文中涉及到的基础知识,请参看上一篇文中,就不再叙述废话. 序言 对于所谓的认证说到底 ...

  6. h2 不能访问localhost_SpringBoot2.x系列教程44--H2数据库详解及搭建Web控制台

    SpringBoot2.x系列教程44--H2数据库详解及搭建Web控制台 作者:一一哥 我在上一章节中讲解了Spring Boot中整合Mybatis,接下来我给大家介绍一款内存数据库--H2. H ...

  7. JWT(Json web token)认证详解

    JWT(Json web token)认证详解 什么是JWT Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该to ...

  8. aws rds监控慢sql_如何使用Web控制台和AWS CLI停止AWS RDS SQL Server

    aws rds监控慢sql This article explores the process to stop an AWS RDS SQL Server using web console and ...

  9. mcollective的web控制台---mcomaster搭建

    使用mcollective有段时间,每次在控制机上写命令运行agent感觉挺不方便的,于是想有没有专门的mcollective的web console,搜了下发现有两个:kermIT和mcomaste ...

  10. 配置两个Hadoop集群Kerberos认证跨域互信(两个集群互通)

    配置两个Hadoop集群Kerberos认证跨域互信 两个Hadoop集群开启Kerberos验证后,集群间不能够相互访问,需要实现Kerberos之间的互信,使用Hadoop集群A的客户端访问Had ...

最新文章

  1. NanoProfiler-Step1翻译
  2. RequestToViewNameTranslator
  3. 【 HDU - 1796】How many integers can you find (容斥原理,二进制枚举或者dfs)
  4. Perl文档操作选项
  5. php如何修改xml中的数据,php如何修改xml内容
  6. .net core部署到Ubuntu碰到的问题
  7. html网页表单设计实验报告,Html设计实验报告.doc
  8. 2021-04-26
  9. 在Linux安装QQ,只需几步
  10. 虚拟偶像大众化元年,如何挖掘蓝海市场|虚拟偶像公司2020年盘点
  11. HTML+5.2+新特性,HTML 5中的新特性
  12. 程序员的量化交易之路(22)--Cointrader值货币集合Currencies(10)
  13. 操作系统期末大题复习
  14. uni-app - 九宫格老虎机抽奖机插件源码(支持服务端API接口控制最终中奖的奖品,自定义组件可随意配置和控制,带组件文档轻松 DIY 自己的营销页抽奖机)幸运抽奖圆形大转盘插件组件
  15. 两年内5000万台电脑都要换成国产电脑
  16. JAVA输出字符串中字母_Java输出字符串中的大写英文字母数,小写英文字母数以及非英文字母的三种方法...
  17. AndroidStudio界面跳转
  18. 腾讯面试:MySQL事务与MVCC如何实现的隔离级别?
  19. 洋桃电子STM32物联网入门30步笔记三、CubeMX图形化编程、设置开发板上的IO口
  20. uni-app项目中H5跨域小程序不跨域怎么解决方法(兼容H5、小程序)

热门文章

  1. nextpolish安装_Polish安装问题
  2. 恢复视力的方法(飞行员都用)治近视的秘方!1000度近视降到只有200
  3. 互联网DSP广告系统架构及关键技术解析 | 广告行业资深架构师亲述
  4. java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation问题解决
  5. python 清华教程_清华推出 1564集Java Python视频教程,别再说找不到适合的教程了...
  6. PP实施经验分享(3)——MRP运行问题常用解决方式
  7. 云笔记+心情日记类APP推荐
  8. Django中间件之csrf跨站请求伪造
  9. 身份证号码编码规则及校验位校验算法
  10. GMA Round 1 大吉大利,晚上吃鸡