Ubuntu使用PBIS认证

本文涉及的产品
运维安全中心(堡垒机),免费版 6个月
简介:

PBIS可以很方便的加域然后使用域认证,比起winbind+samba方便多了。这东西原来叫LikeWise,现在换了这个名字,有开源版本,功能上也够用了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#1:下载
https: //github .com /BeyondTrust/pbis-open/releases
  
#2:安装,默认设置即可
sh pbis- open -8.5.4.334.linux.x86_64.deb.sh
  
#3:加域
domainjoin-cli  join  test .net admin
  
#4:可能用得到的自定义设置
/opt/pbis/bin/config  HomeDirTemplate  '%H/%D/%U'
/opt/pbis/bin/config  LoginShellTemplate  /bin/bash
/opt/pbis/bin/config  HomeDirUmask 077
/opt/pbis/bin/config  UserDomainPrefix  test .net
/opt/pbis/bin/config  AssumeDefaultDomain  true
#/opt/pbis/bin/config Requiremembershipof test\\LinuxUser test\\new  # 允许LinuxUser用户组 及 new用户登录
 
#允许用户组为sudoer
% test \\LinuxAdmins        ALL=(ALL:ALL) ALL

如果用来使用的是winbind+samba认证

1:先退出域

1
net ads leave -U  test .net administrator

2:把原来/etc/pam.d/ 下面的winbind相关项删除,还有/etc/nsswitch.conf 里面的winbind删除

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
cat  /etc/pam .d /common-account
account [success=ok new_authtok_reqd=ok default=ignore]       pam_lsass.so unknown_ok
account [success=2 new_authtok_reqd= done  default=ignore]  pam_lsass.so 
account [success=1 new_authtok_reqd= done  default=ignore]  pam_unix.so 
account requisite           pam_deny.so
account required            pam_permit.so
#--------------------------------------------------
cat  /etc/pam .d /common-auth
auth    [success=2 default=ignore] pam_lsass.so 
auth    [success=1 default=ignore] pam_unix.so nullok_secure try_first_pass
auth    requisite           pam_deny.so
auth    required            pam_permit.so
#--------------------------------------------------
cat  /etc/pam .d /common-password 
password    [success=2 default=ignore] pam_lsass.so 
password    [success=1 default=ignore] pam_unix.so obscure try_first_pass sha512
password    requisite           pam_deny.so
password    required            pam_permit.so
#--------------------------------------------------
cat  /etc/pam .d /common-session
session [default=1]         pam_permit.so
session requisite           pam_deny.so
session required            pam_permit.so
session optional           pam_umask.so
session optional    pam_lsass.so 
session required    pam_unix.so 
session optional    pam_systemd.so
#--------------------------------------------------
cat  /etc/pam .d /common-session-noninteractive 
session [default=1]         pam_permit.so
session requisite           pam_deny.so
session required            pam_permit.so
session optional           pam_umask.so
session optional    pam_lsass.so 
session required    pam_unix.so
#--------------------------------------------------
cat  /etc/nsswitch .conf
passwd :         compat lsass
group:          compat lsass
shadow:         compat
gshadow:        files
 
hosts:          files dns
networks:       files
 
protocols:      db files
services:       db files
ethers:         db files
rpc:            db files
 
netgroup:       nis

3:如果还要使用samba,可以删除winbind(用不到了)。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
net cache flush    #不执行此操作,samba还是使用原来winbind的UID
#--------------------------------------------------
cat  /etc/samba/smb .conf
[global]
    server string = %h server (Samba, Ubuntu)
    security = ads
    workgroup = TEST
    realm = TEST.NET
    client ntlmv2 auth =  yes
    encrypt passwords =  yes
    log  file  /var/log/samba/log .%m
    max log size = 1000
    panic action =  /usr/share/samba/panic-action  %d
    machine password timeout = 0
 
[homes]
    comment = Home Directories
    browseable = no
    read  only = no
    create mask = 0700
    directory mask = 0700
1
/opt/pbis/bin/samba-interop-install  -- install   #这样就可以使用pbis认证samba了


另外bash提示符是 test\username 这样的格式,然后为了美观把格式改为 username 这样

1
sed  -i  "58s#^.*\$#&\nmodify_username()\n{\n    echo \$USER | awk -F\\\\\\\\ '{print \$NF}'\n}\n#;s#\\\\u#\$(modify_username)#g"  /etc/skel/ .bashrc

centos

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/bash
 
for  in  ` ls  /home `
do
     grep  TESTDOMAIN  /home/ $i/.bashrc ||  cat  >>  /home/ $i/.bashrc << EOF
 
modify_username()
{
    echo  \$USER |  awk  -F\\\\\\\\  '{print \$NF}'
}
 
if  [[ \$USER =~  "TESTDOMAIN"  ]];  then
     PS1= '[\$(modify_username)@\H:\w]\\$ ' 
fi
EOF
 
done
 
grep  TESTDOMAIN  /etc/skel/ .bashrc ||  cat  >>  /etc/skel/ .bashrc << EOF
 
modify_username()
{
    echo  \$USER |  awk  -F\\\\\\\\  '{print \$NF}'
}
 
if  [[ \$USER =~  "TESTDOMAIN"  ]];  then
     PS1= '[\$(modify_username)@\H:\w]\\$ ' 
fi
EOF



#samba出现这样的错误

1
2
#Bad talloc magic value - access after free
apt-get  install  libtalloc2


#加域时出现

1
2
#Error: ERROR_GEN_FAILURE [code 0x0000001f]
apt-get remove avahi-daemon



本文转自 nonono11 51CTO博客,原文链接:http://blog.51cto.com/abian/1947099,如需转载请自行联系原作者
相关文章
Ubuntu:成功解决ubuntu使用su切换root出现Authentication failure用户时认证失败
Ubuntu:成功解决ubuntu使用su切换root出现Authentication failure用户时认证失败
Ubuntu:成功解决ubuntu使用su切换root出现Authentication failure用户时认证失败
|
Ubuntu Linux 数据安全/隐私保护
|
Ubuntu 数据安全/隐私保护 Unix
Ubuntu su认证失败
在第一次使用ubuntu系统的root的时候,提示认证失败 su或者su root:认证失败 解:ubuntu默认root是禁用的,要先重新设置密码才能使用。 ①:使用 sudo passwd root ②:第一次输入,安装密码。 ③:设置UNIX新密码和确认密码后,重启即可使用ok。 具体见图:
3899 0
|
27天前
|
Ubuntu Shell 网络安全
安装了ubuntu虚拟机后发现shell无法连接 ubuntu开启ssh连接
【8月更文挑战第23天】安装了ubuntu虚拟机后发现shell无法连接
80 6
|
16天前
|
Ubuntu Linux Docker
Ubuntu 18.04 安装Docker实战案例
关于如何在Ubuntu 18.04系统上安装Docker的实战案例,包括安装步骤、配置镜像加速以及下载和运行Docker镜像的过程。
99 3
Ubuntu 18.04 安装Docker实战案例
|
16天前
|
Ubuntu 网络安全 开发工具
Ubuntu19.04的安装过程详解以及操作系统初始化配置
本文详细介绍了Ubuntu 19.04操作系统的安装过程、初始化配置、网络设置、软件源配置、SSH远程登录以及终端显示设置。
38 1
Ubuntu19.04的安装过程详解以及操作系统初始化配置
|
3天前
|
存储 Prometheus 监控
在Ubuntu系统上安装与配置Prometheus的步骤
通过以上步骤,您应该已经成功在Ubuntu系统上安装并配置了Prometheus。您现在可以开始使用Prometheus收集和分析您的系统和应用程序的指标数据了。
11 1