我已经使用用户帐户设置了 LDAP 服务器。我已经成功地配置了一个 Rails 应用程序来验证这个 LDAP 服务器。我现在正在尝试将 SSSD 配置为针对 LDAP 进行身份验证,但它不喜欢个人用户密码。
错误:
$ su - leopetr4
Password:
su: incorrect password
Run Code Online (Sandbox Code Playgroud)
SSSD 识别用户,但不识别密码:
$ id leopetr4
uid=9583(leopetr4) gid=9583(leopetr4) groups=9583(leopetr4)
Run Code Online (Sandbox Code Playgroud)
这是用户记录的样子:
# ldapsearch -x -W -D "cn=admin,dc=my_domain,dc=com" -H ldaps://my_hostname.my_domain.com "(uid=leopetr4)"
Enter LDAP Password:
# extended LDIF
#
# LDAPv3
# base <dc=my_domain,dc=com> (default) with scope subtree
# filter: (uid=leopetr4)
# requesting: ALL
#
# leopetr4, People, my_domain.com
dn: uid=leopetr4,ou=People,dc=my_domain,dc=com
uid: leopetr4
cn: Leo Petr 40
sn: 40
objectClass: posixAccount
objectClass: top
objectClass: …Run Code Online (Sandbox Code Playgroud) 我安装了 fail2ban 来禁止对 ssh 密码进行暴力尝试。在这台机器上不禁用密码认证有业务需求。
fail2ban 是使用相同的厨师手册安装的,该手册有效地禁止了对其他机器的 ssh 攻击。配置了一个 ssh 监狱:
# service fail2ban status
fail2ban-server (pid 5480) is running...
WARNING 'pidfile' not defined in 'Definition'. Using default one: '/var/run/fail2ban/fail2ban.pid'
Status
|- Number of jail: 1
`- Jail list: ssh
Run Code Online (Sandbox Code Playgroud)
手动禁止用户工作:
# fail2ban-client set ssh banip 103.41.124.46
Run Code Online (Sandbox Code Playgroud)
但它似乎并没有自动禁止任何人:
# cat /var/log/fail2ban.log
2014-11-20 18:23:47,069 fail2ban.server [67569]: INFO Exiting Fail2ban
2014-11-20 18:44:59,202 fail2ban.server [5480]: INFO Changed logging target to /var/log/fail2ban.log for Fail2ban v0.8.14
2014-11-20 18:44:59,213 fail2ban.jail [5480]: INFO Creating new jail 'ssh' …Run Code Online (Sandbox Code Playgroud) 我正在尝试以 CentOS 上的非 root 用户身份从命令行发送邮件。我正在使用以下命令,但出现错误:
$ echo test | mail -s "test" to@example.com -c cc@example.com
WARNING: RunAsUser for MSP ignored, check group ids (egid=102, want=51)
can not write to queue directory /var/spool/clientmqueue/ (RunAsGid=102, required=51): Permission denied
Run Code Online (Sandbox Code Playgroud)
我已将用户添加到组 51 (smmtp),并且我可以以用户身份同时 cd 和写入该目录。
为什么我收到错误?
一些相关权限:
# ls -la /var/spool/clientmqueue/
total 8
drwxrwx--- 2 smmsp smmsp 4096 Mar 8 14:25 .
drwxr-xr-x. 13 root root 4096 Oct 21 15:09 ..
# ls -la /usr/sbin/sendmail
lrwxrwxrwx 1 root root 21 Oct 21 15:09 /usr/sbin/sendmail …Run Code Online (Sandbox Code Playgroud) 我正在按照本指南将 RHEL6 机器上的 /etc/passwd 和 /etc/group 中的现有用户迁移到新的外部 OpenLDAP 服务器。
我正在尝试应用此文件:
# cat people_group.ldif
dn: ou=People, dc=my_domain, dc=com
ou: People
objectclass: organizationalUnit
dn: ou=Group, dc=my_domain, dc=com
ou: Group
objectclass: organizationalUnit
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
# ldapadd -x -W -D "cn=admin,dc=my_domain,dc=com" -H ldaps://my_hostname.my_domain.com -f people_group.ldif
Enter LDAP Password:
adding new entry "ou=People, dc=my_domain, dc=com ou: People objectclass: organizationalUnit"
ldap_add: Protocol error (2)
additional info: no attributes provided
Run Code Online (Sandbox Code Playgroud)
如果我跳过这个文件并去添加下一个文件,我会得到一个不同的错误:
# ldapadd -x -W -D "cn=admin,dc=my_domain,dc=com" -H ldaps://my_hostname.my_domain.com -f group.ldif
Enter LDAP Password:
adding new …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 CentOS 6.7(类似于 RHEL 6.7)上的全新 OpenLDAP 安装中修改 LDAP 管理员密码。
我创建了一个名为change_ldap_password.ldif:
# Hash your password:
# slappasswd -h {SSHA} -s "my_password"
# I also tried {1}hdb instead of {0}config
dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}YP8q2haCD1POSzQC3GAuBdrfaHh+/Y49
Run Code Online (Sandbox Code Playgroud)
当我以 root 身份运行以下命令时,出现访问错误:
# ldapmodify -x -W -D "cn=admin,dc=my_domain,dc=com" -f ./change_ldap_password.ldif
Enter LDAP Password:
modifying entry "olcDatabase={0}config,cn=config"
ldap_modify: Insufficient access (50)
Run Code Online (Sandbox Code Playgroud)
这是 ldapwhoami 的输出:
# ldapwhoami -x -W -D "cn=admin,dc=my_domain,dc=com"
Enter LDAP Password:
dn:cn=admin,dc=my_domain,dc=com
Run Code Online (Sandbox Code Playgroud)
这是在 cn=config 中对 olcRoot 进行 grepping 的结果:
# …Run Code Online (Sandbox Code Playgroud) 我试图解决的问题是 NTP 不会同步:
$ sudo ntpstat
unsynchronised
time server re-starting
polling server every 64 s
Run Code Online (Sandbox Code Playgroud)
编辑:这是一些 ntpq 输出:
$ sudo ntpq -c peers
remote refid st t when poll reach delay offset jitter
==============================================================================
ntp.eecs.wsu.ed .INIT. 16 u - 64 0 0.000 0.000 0.000
71.19.224.242 .INIT. 16 u - 64 0 0.000 0.000 0.000
ntp4.vps.net .INIT. 16 u - 64 0 0.000 0.000 0.000
mercury.z0p.org .INIT. 16 u - 64 0 0.000 0.000 0.000
li506-17.member .INIT. 16 u - 64 …Run Code Online (Sandbox Code Playgroud) 我在具有 1 个分区的 12TB 设备上配置了 LVM。然后我尝试将 LVM 扩展到具有 1 个分区的第二个 12TB 设备。vgextend 工作,但 lvextend 没有看到第二个设备上的空间。
这是我对第二个设备进行分区的方式:
# parted /dev/mapper/3600a09803830304d2f2b456f61565846
GNU Parted 2.1
Using /dev/mapper/3600a09803830304d2f2b456f61565846
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt
(parted) mkpart primary xfs 0% 100%
(parted) set 1 lvm on
(parted) print
Model: Linux device-mapper (multipath) (dm)
Disk /dev/mapper/3600a09803830304d2f2b456f61565846: 12.9TB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Number Start End Size File system Name Flags
1 1049kB 12.9TB 12.9TB primary …Run Code Online (Sandbox Code Playgroud) 我尝试在 RHEL 6.3 计算机上创建分区,但parted 给出以下错误:
$ sudo parted /dev/vdb mkpart logical 1
Error: partition length of 6442450944 sectors exceeds the loop-partition-table-imposed maximum of 4294967295
Run Code Online (Sandbox Code Playgroud)
用于创建分区的替代命令给了我同样的错误:
$ sudo parted -s /dev/vdb mkpart primary 0GB 3298GB
Error: partition length of 6442450944 sectors exceeds the loop-partition-table-imposed maximum of 4294967295
Run Code Online (Sandbox Code Playgroud)
这是 fdisk 输出:
$ sudo fdisk -l /dev/vdb
Disk /dev/vdb: 3298.5 GB, 3298534883328 bytes
16 heads, 63 sectors/track, 6391320 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Sector size (logical/physical): 512 …Run Code Online (Sandbox Code Playgroud)