【问题标题】:LDAP listening on localhost but hostname or IPLDAP 侦听 localhost 但主机名或 IP
【发布时间】:2015-12-30 22:34:30
【问题描述】:

我在运行 Raspian 的 raspberryPI 上安装了 LDAP,我认为这是一个 Debian 分支。

如果我使用 -h localhost 或 -h 127.0.0.1,我有一个数据库和条目,并且可以从服务器成功执行 LDAP 搜索。但是,如果我使用主机名或 IP,我会收到一条错误消息:

root@rpi1:~# ldapsearch -d 1 -x -h 10.10.0.11 -b "ou=Groups,dc=pi,dc=home"
ldap_create
ldap_url_parse_ext(ldap://10.10.0.11)
ldap_sasl_bind
ldap_send_initial_request
ldap_new_connection 1 1 0
ldap_int_open_connection
ldap_connect_to_host: TCP 10.10.0.11:389
ldap_new_socket: 4
ldap_prepare_socket: 4
ldap_connect_to_host: Trying 10.10.0.11:389
ldap_pvt_connect: fd: 4 tm: -1 async: 0
attempting to connect:
connect errno: 111
ldap_close_socket: 4
ldap_err2string
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)

对我来说奇怪的是该服务正在端口上运行侦听:

    root@rpi1:~# nmap 10.10.0.11

Starting Nmap 6.47 ( http://nmap.org ) at 2015-12-30 22:16 UTC
Nmap scan report for rpi1.pi.home (10.10.0.11)
Host is up (0.00017s latency).
Not shown: 997 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh
80/tcp  open  http
636/tcp open  ldapssl

Nmap done: 1 IP address (1 host up) scanned in 26.78 seconds
root@rpi1:~#
root@rpi1:~#
root@rpi1:~#
root@rpi1:~#
root@rpi1:~# nmap localhost

Starting Nmap 6.47 ( http://nmap.org ) at 2015-12-30 22:17 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00018s latency).
Other addresses for localhost (not scanned): 127.0.0.1
Not shown: 996 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh
80/tcp  open  http
389/tcp open  ldap
636/tcp open  ldapssl

Nmap done: 1 IP address (1 host up) scanned in 26.82 seconds

你可以看到扫描 localhost 显示服务正在监听 389,但如果我使用服务器的 IP 或主机名则不是。

所以我无法让另一台服务器上的客户端进行连接,因为它似乎只在本地主机上监听.....恐怕这超出了我的有限理解。

据我所知,我正在解析名称:

root@rpi1:~# host rpi1
rpi1 has address 10.10.0.11

root@rpi1:~# host rpi1.pi.home
rpi1.pi.home has address 10.10.0.11

root@rpi1:~# host ldap.pi.home
ldap.pi.home has address 10.10.0.11

数据库正常工作的证明:

root@rpi1:~# ldapsearch -x -h 127.0.0.1 -b "cn=Bradley Atkins,cn=musedev,ou=Groups,dc=pi,dc=home"
# extended LDIF
#
# LDAPv3
# base <cn=Bradley Atkins,cn=musedev,ou=Groups,dc=pi,dc=home> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# Bradley Atkins, musedev, Groups, pi.home
dn: cn=Bradley Atkins,cn=musedev,ou=Groups,dc=pi,dc=home
cn: Bradley Atkins
givenName: Bradley
gidNumber: 501
homeDirectory: /home/users/batkins
sn: Atkins
loginShell: /bin/sh
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: top
uidNumber: 1001
uid: batkins

# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1

任何人都可以提出前进的道路吗?

谢谢

【问题讨论】:

    标签: linux sockets connection listener openldap


    【解决方案1】:

    nmap 输出清楚地显示,它正在侦听 127.0.0.1,而不是 0.0.0.0。

    【讨论】:

    • 是的,它正在监听,我发布了地图输出以表明它正在监听。我的问题是,为什么当我使用服务器的 IP 或主机名时它似乎没有在监听?我无法使用 127.0.0.1 将客户端连接到这台机器,我需要使用它的主机名或 IP。
    • 经过几个小时的调查,我终于明白你的意思是我应该将它配置为在 0.0.0.0 上监听,而不仅仅是指出它在 127.0.0.1 上监听。我在 slapd.conf 中找到了该设置,现在它可以在网络中的任何服务器上运行。谢谢。
    • @BradleyAtkins 请分享你的发现
    • @BradleyAtkins 这让我很困惑,为什么您要花几个小时才能理解此答案中已经明确说明的内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-01
    • 1970-01-01
    • 2015-06-30
    • 2017-02-18
    • 2013-02-26
    • 2023-04-06
    相关资源
    最近更新 更多