我需要一个用于LDAP服务的转发TCP代理db.debian.org:389。这是公共LDAP。我用Nginx做的。
下面是Nginx的配置:
stream {
server {
listen 389;
proxy_pass db.debian.org:389;
}
}
Nginx在localhost上打开TCP端口389
nc -zv localhost 389
Connection to localhost (127.0.0.1) 389 port [tcp/*] succeeded!
但是LDAP服务在localhost上不起作用:389
ldapsearch -x -H ldap://localhost -x -b 'gid=slyon,ou=users,dc=debian,dc=org' -v -d8
ldap_initialize( ldap://localhost:389/??base )
ber_get_next failed, errno=0.
ldap_result: Can't contact LDAP server (-1)
为什么?如何代理LDAP请求?
1条答案
按热度按时间j2cgzkjk1#
整个Nginx配置必须包含以下部分:
http{}
、stream{}
和events{}
处于同一水平。文件
nginx.conf
必须在/etc/nginx/nginx.conf
中它应该看起来像(这是无特权的Nginx)