Clouderera SCM Server启动失败之pam_unix(sshd:session) session closed for user root分析定位

2023-11-04

昨天在某客户环境进行CDH Hadoop的安装,安装还算比较顺利,但在启动Cloudera SCM Server和Agent服务的时候均启动失败。

[root@YXnode01 ~]# service cloudera-scm-server restart
Restarting cloudera-scm-server (via systemctl):  Job for cloudera-scm-server.service failed because the control process exited with error code. See "systemctl status cloudera-scm-server.service" and "journalctl -xe" for details.
                                                           [FAILED]

根据上述提示信息,我们执行"systemctl status cloudera-scm-server.service"查看详细错误信息如下,

[root@YXnode01 ~]# systemctl status cloudera-scm-server.service
● cloudera-scm-server.service - LSB: Cloudera SCM Server
   Loaded: loaded (/etc/rc.d/init.d/cloudera-scm-server; bad; vendor preset: disabled)
   Active: failed (Result: exit-code) since Tue 2019-11-05 09:25:49 CST; 3min 32s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 15982 ExecStart=/etc/rc.d/init.d/cloudera-scm-server start (code=exited, status=1/FAILURE)

Nov 05 09:25:44 YXnode01.esgyn.cn systemd[1]: Starting LSB: Cloudera SCM Server...
Nov 05 09:25:44 YXnode01.esgyn.cn su[16015]: pam_unix(su:auth): auth could not identify password for [cloudera-scm]
Nov 05 09:25:44 YXnode01.esgyn.cn su[16015]: pam_succeed_if(su:auth): requirement "uid >= 1000" not met by user "cloudera-scm"
Nov 05 09:25:46 YXnode01.esgyn.cn su[16015]: FAILED SU (to cloudera-scm) root on none
Nov 05 09:25:49 YXnode01.esgyn.cn cloudera-scm-server[15982]: Starting cloudera-scm-server: [FAILED]
Nov 05 09:25:49 YXnode01.esgyn.cn systemd[1]: cloudera-scm-server.service: control process exited, code=exited status=1
Nov 05 09:25:49 YXnode01.esgyn.cn systemd[1]: Failed to start LSB: Cloudera SCM Server.
Nov 05 09:25:49 YXnode01.esgyn.cn systemd[1]: Unit cloudera-scm-server.service entered failed state.
Nov 05 09:25:49 YXnode01.esgyn.cn systemd[1]: cloudera-scm-server.service failed.

顺便查看Cloudera SCM Server的日志,内容如下,

[root@YXnode01 ~]# tail -10f /var/log/cloudera-scm-server/cloudera-scm-server.out 
Password: su: Error in service module

检查Hadoop节点的selinux、防火墙、ssh等这些均正常,根据以上具体错误“pam_succeed_if(su:auth): requirement “uid >= 1000” not met by user “cloudera-scm””,我们怀疑可能是linux系统有什么特殊的安全策略,网上搜索一番找到阿里的一篇文章https://help.aliyun.com/knowledge_detail/41491.html?spm=a2c6h.13066369.0.0.2edd1479fTjQLg
根据上述文章内容,我们从目录/etc/pam.d下面搜索’uid >= 1000’相关内容,找到以下配置文件。

[root@YXnode01 pam.d]# grep 'uid >= 1000' *
password-auth:auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
password-auth-ac:auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
system-auth:auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
system-auth-ac:auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
[root@YXnode01 pam.d]# pwd
/etc/pam.d

于是我们注释掉上述相关的内容然后重试尝试启动SCM Server服务, 发现仍然启动失败,但报错信息略有不同,之前的错误pam_succeed_if(su:auth): requirement “uid >= 1000” not met by user "cloudera-scm"已经不存在,报错信息变成了FAILED SU (to cloudera-scm) root on none。

[root@YXnode01 ~]# systemctl status cloudera-scm-server.service
● cloudera-scm-server.service - LSB: Cloudera SCM Server
   Loaded: loaded (/etc/rc.d/init.d/cloudera-scm-server; bad; vendor preset: disabled)
   Active: failed (Result: exit-code) since Tue 2019-11-05 09:59:37 CST; 17s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 17469 ExecStart=/etc/rc.d/init.d/cloudera-scm-server start (code=exited, status=1/FAILURE)

Nov 05 09:59:32 YXnode01.esgyn.cn systemd[1]: Starting LSB: Cloudera SCM Server...
Nov 05 09:59:32 YXnode01.esgyn.cn su[17502]: pam_unix(su:auth): auth could not identify password for [cloudera-scm]
Nov 05 09:59:34 YXnode01.esgyn.cn su[17502]: FAILED SU (to cloudera-scm) root on none
Nov 05 09:59:37 YXnode01.esgyn.cn cloudera-scm-server[17469]: Starting cloudera-scm-server: [FAILED]
Nov 05 09:59:37 YXnode01.esgyn.cn systemd[1]: cloudera-scm-server.service: control process exited, code=exited status=1
Nov 05 09:59:37 YXnode01.esgyn.cn systemd[1]: Failed to start LSB: Cloudera SCM Server.
Nov 05 09:59:37 YXnode01.esgyn.cn systemd[1]: Unit cloudera-scm-server.service entered failed state.
Nov 05 09:59:37 YXnode01.esgyn.cn systemd[1]: cloudera-scm-server.service failed.

原来,使用root用户直接执行service cloudera-scm-server start时,内部会先切换到cloudera-scm用户进行启动,即启动时先执行su cloudera-scm命令。
于是我们检查从root切换到cloudea-scm用户,并在其他正常的环境中做同样的测试。我们发现在此环境里面root执行su cloudera-scm时会提示需要输入password,但在正常的环境中不需要。

[root@YXnode01 ~]# su cloudera-scm
Password: 

根据此信息,我们进一步搜索到需要检查/etc/pam.d/su文件,于是我们对比了此环境和正常环境中的/etc/pam.d/su文件,区别如下图所示,
在这里插入图片描述
在此环境中,上述文件多出一行,我们按照正常环境中的配置注释掉上述这一行,然后重新启动SCM Server服务,现在能够正常启动。

[root@YXnode01 ~]# service cloudera-scm-server status
● cloudera-scm-server.service - LSB: Cloudera SCM Server
   Loaded: loaded (/etc/rc.d/init.d/cloudera-scm-server; bad; vendor preset: disabled)
   Active: active (exited) since Tue 2019-11-05 11:29:54 CST; 15s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 19790 ExecStart=/etc/rc.d/init.d/cloudera-scm-server start (code=exited, status=0/SUCCESS)

Nov 05 11:29:49 YXnode01.esgyn.cn systemd[1]: Starting LSB: Cloudera SCM Server...
Nov 05 11:29:49 YXnode01.esgyn.cn su[19823]: (to cloudera-scm) root on none
Nov 05 11:29:54 YXnode01.esgyn.cn cloudera-scm-server[19790]: Starting cloudera-scm-server: [  OK  ]
Nov 05 11:29:54 YXnode01.esgyn.cn systemd[1]: Started LSB: Cloudera SCM Server.

再来研究一下,
auth required pam_wheel.so group=wheel,表示禁止非wheel组用户切换到root。
在Linux中为了更进一步加强系统的安全性,很有必要建立了一个管理员的组,只允许这个组的用户来执行“su -”命令登录为root用户,而让其他组的用户即使执行“su -”、输入了正确的root密码,也无法登录为root用户。在UNIX和Linux下,这个组的名称通常为“wheel”。而这个是在配置文件/etc/pam.d/su里面配置的。因此,这一个配置加到su文件里面,就导致了cloudera-scm用户与root无法进行su切换,除非把cloudera-scm用户加到wheel组。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Clouderera SCM Server启动失败之pam_unix(sshd:session) session closed for user root分析定位 的相关文章

  • php接口post数据接收不到参数原因

    1 检查头信息content type是不是为 content type application x www form urlencoded 这种传输是以表单的方式提交数据php使用 POST方式接受 2 如果头信息content type
  • python与mongodb交互-->pymongo

    from pymongo import MongoClient 创建数据库连接对象 client MongoClient ip 27017 选择一个数据库 db client admin db authenticate python pyt
  • c++学习——类和对象

    类和对象 类和对象的基本概念 类的封装 尽量把成员属性设置为私有的 小练习 结构体和类的区别 圆的周长类案例 学生类的案例 汽车案例 立方体案例 点和圆案例 类和对象的基本概念 类是自定义数据类型 是C语言的结构体进化而成的 对象是类实例化

随机推荐

  • 硬件笔记(一)——DCDC典型电路分析

    此次小记分析的电路为SIM7600技术手册的推荐外部电源电路 LM2596内部包含150KHZ振荡器 输入电压范围最高可达40V 4 5V 40V 最高可提供3A的直流负载电流 输出电压可调范围1 23V 37V 现对此电路进行分析 1 D
  • 程序获取

    程序获取 机器学习 深度学习程序和数据获取方式 目录 程序获取 机器学习 深度学习程序和数据获取方式 程序获取方式1 程序获取方式2 程序获取方式3 程序获取方式4 程序获取方式5 程序获取方式6 程序获取方式1 私信博主或者博客底部联系博
  • jmeter线程组内的接口顺序执行解决办法

    一 压力测试场景分析 测试人员在使用jmeter对一个场景进行压力测试 在一个线程组内有多个接口时 测试人员想要测试在特定的时间段内一直循环该线程以测试服务器压力 但是jmeter在run线程组的时候 经常不会按照该线程组内的接口顺序执行
  • Ubuntu torch.cuda.is_available() 返回 False情况

    如果Ubuntu20 04 出现torch cuda is available 返回 False情况 解决方法 重新安装Pytorch Ubuntu20 04 CUDA 11 4 Pytorch配置安装 conda conda create
  • Hibernate 自动创建表

    前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住分享一下给大家 点击跳转到教程 1 在 hibernate cfg xml 添加这句话 可以自动生成数据表
  • 开放集识别的最新进展总结(源于Recent Advances in Open Set Recognition: A Survey)

    摘要 在现实的识别 分类任务中 由于受到各种客观因素的限制 在训练一个识别器或分类器摘 0 摘要 原因与场景 在现实的识别 分类任务中 训练模型的时候可能并没有所有类别的训练集 因此 这样训练出来的模型在没有出现过的类出现时 一般会失效 解
  • 中国科学院大学工程管理与信息技术学院 2014年招收以下八个领域在职工程硕...

    中国科学院大学工程管理与信息技术学院2014年招收以下八个领域在职工程硕士 欢迎广大考生报考 一 专业领域介绍 招生领域 研究方向 学费 报考条件 学位 证书 学习方式
  • 数据结构与算法——栈的实现及模拟

    目录 一 栈的原理 二 栈的实现 1 栈的定义 2 栈的初始化 3 入栈 4 出栈 5 获取栈顶元素 6 栈的大小 7 判断栈是否为空 8 栈的销毁 一 栈的原理 堆栈 英语 stack 又称为栈或堆叠 是计算机科学中的一种抽象资料类型 只
  • Kafka核心设计与实践原理总结:进阶篇

    kafka作为当前热门的分布式消息队列 具有高性能 持久化 多副本备份 横向扩展能力 我学习了 深入理解Kafka 核心设计与实践原理总结 一书后 对其中主要的知识点进行了总结 便于理解和掌握kafka的原理和应用 在这里分享出来 希望也能
  • es常用curl命令

    说明 仅记录实验室测试过程 不作为官方文档使用 可能会有很多地方未能验证 因此无法进行技术兜底 需使用方多加验证测试 涉及到高危需走变更 目前测试版本均为651及以前版本 命令样例基于安全模式 如果是在非安全模式下 将命令中的参数 tlsv
  • .Net Core下简单的JWT黑名单中间件

    自从JWT认证方式在互联网上蔓延后 Session认证方式就被挤掉了一大半的生存空间 这里我们不讲JWT与Session两种方式的优缺点 我们只讲如何通过JWT的黑名单来阻止某些Token的登录 设置黑名单 也就是说要将Token写入某个存
  • gRPC:以 C++为例

    文章目录 1 gRPC 环境搭建 1 1 安装 cmake 1 2 安装 gcc gdb 1 3 安装 gRPC 1 4 protobuf 安装 1 5 测试环境 2 1 grpc 同步 2 1 定义服务 2 2 gRPC 服务端 2 3
  • 通讯录的实现

    ifndef TONGXUNLU H define TONGXUNLU H define MAX NAME 20 define MAX PHONE 11 define MAX PEO 1000 typedef struct PeoInfo
  • python肢体识别线条_【HUSKYLENS二哈识图】micro:bit视觉识别入门教程——06循“轨”蹈矩的麦昆...

    点击上方 蘑菇云创造 可以订阅哦 循 轨 蹈矩的麦昆 功能介绍 本项目利用 HuskyLens 的巡线功能 让麦昆 plus 按照地面上的线路轨道欢快地蹦跶 材料清单 知识园地 如果我们要让小车机器人按照地面上的线条移动 就需要一些传感器来
  • SentencePiece,subword-nmt,bpe算法

    BPE Byte Pair Encoding 双字节编码 2016年应用于机器翻译 解决 集外词 OOV 和罕见词 Rare word 问题 论文题目 Neural Machine Translation of Rare Words wit
  • [动态系统的建模与分析]9_一阶系统的频率响应_低通滤波器

    动态系统的建模与分析 8 频率响应 详细数学推导 G jw 滤波器 运放滤波器 3 反相同相比例放大电路 Multisim电路仿真 运放滤波器 2 运放反馈原理 运放滤波器 1 理想运放 虚短虚断 现代控制理论 11 现代控制理论串讲 完结
  • KDD'23

    大家好 我是kaiyuan 最近大模型LLM的各类信息有种乱花渐欲迷人眼的感觉 刷几篇KDD 23的文章冷静一下 今天分享阿里淘宝搜索的最新工作 发表在KDD 23上 Rethinking the Role of Pre ranking i
  • 学习使用vs2019编写一个Linux c++程序

    前言 前些日子 在centos捣鼓C 程序 6 5版本的GCC4 4实在太旧了 不支持C 11 官方说得升级到GCC4 7以上 于是乎 尝试更新GCC 一顿操作猛如虎 一看战绩0 5 不成功 便成仁 一气之下 整了个Centos8 2 这下
  • VS2010利用MFC的MSCcom控件的方法(WIN8系统)

    1 由于VC6 0之后 VS不在带有MScomm控件 要使用MScomm控件需要自己注册添加 控件下载链接 MScomm控件 压缩包中含有四个文件 MSCOMM SRG MSCOMM32 DEP MSCOMM32 oca mscomm32
  • Clouderera SCM Server启动失败之pam_unix(sshd:session) session closed for user root分析定位

    昨天在某客户环境进行CDH Hadoop的安装 安装还算比较顺利 但在启动Cloudera SCM Server和Agent服务的时候均启动失败 root YXnode01 service cloudera scm server resta