我在 CentOS Linux 版本 7.4.1708 (核心) 上运行 spacewalk 2.6
并使用 spacewalk-service start 启动太空行走
我观察到:
jabberd.service - Jabber Server
Loaded: loaded (/usr/lib/systemd/system/jabberd.service; enabled; vendor preset: disabled)
Active: active (exited) since Wed 2018-02-28 16:24:06 UTC; 7h ago
Process: 4644 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 4644 (code=exited, status=0/SUCCESS)
Memory: 0B
CGroup: /system.slice/jabberd.service
经过进一步调查和谷歌搜索
#journalctl -xe
Mar 01 00:21:58 gss-spacewalk-1-prod.aws.a.b.c jabberd/c2s[4642]: SASL callback for non-existing host: spacewalk.a.b.c
Mar 01 00:23:13 gss-spacewalk-1-prod.aws.a.b.c jabberd/c2s[4642]: [25] [::ffff:1x.1xx.1xx.82, port=46909] connect
Mar 01 00:23:13 gss-spacewalk-1-prod.aws.a.b.c. jabberd/c2s[4642]: [25] [::ffff:1x.1xx.1xx.82, port=46909] disconnect jid=unbound, pac
Mar 01 00:23:13 gss-spacewalk-1-prod.aws.a.b.c. jabberd/c2s[4642]: SASL callback for non-existing host: spacewalk.a.b.c.
现在 spacewalk.abc 似乎是一个 aws 负载均衡器:
$nslookup spacewalk.a.b.c
Server: 1x.xx.xxx.80
Address: 1x.xx.1xx.80#53
spacewalk.a.b.c canonical name = internal-GSS-Spacewalk-123456789.us-east-1.elb.amazonaws.com.
Name: internal-GSS-Spacewalk-123456789.us-east-1.elb.amazonaws.com
Address: 1x.1xx.1xx.55
Name: internal-GSS-Spacewalk-123456789.us-east-1.elb.amazonaws.com
Address: 1x.1xx.1xx.82
我搜索了论坛和博客,但找不到解决此 jabberd 无法启动的问题的方法
--------------- 回答@tukan ------------------------------------
jabberd 启动时实际上会运行 6 个程序。它们的可执行文件位于以下位置:
1. /usr/bin/c2s
2. /usr/bin/jabberd
3. /usr/bin/resolver
4. /usr/bin/router
5. /usr/bin/s2s
6. /usr/bin/sm
jabberd configuration:
1. /usr/bin/c2s -c /etc/jabberd/c2s.xml https://pastebin.com/A1Qp44qp
2. /usr/bin/jabberd itself does not have a config ??
3. /usr/bin/sm -c /etc/jabberd/sm.xml https://pastebin.com/4gi4MR3g
4. /usr/bin/router -c /etc/jabberd/router.xml https://pastebin.com/cdRZqk5D
5. /usr/bin/s2s -c /etc/jabberd/s2s.xml https://pastebin.com/nPsMsde3
6. /usr/bin/sm -c /etc/jabberd/sm.xml https://pastebin.com/s7vQu3VE
c2s and sm are configured to encrypt information that passes through them. The cert and key used to do this are located in the /etc/jabberd/server.pem file.
ports:
[root@gss-spacewalk-1-prod jabberd]# nmap -sT -p 5200-5400 localhost
Starting Nmap 6.40 ( http://nmap.org ) at 2018-03-09 19:11 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00022s latency).
Other addresses for localhost (not scanned): 127.0.0.1
Not shown: 198 closed ports
PORT STATE SERVICE
5222/tcp open xmpp-client
5269/tcp open xmpp-server
5347/tcp open unknown
Nmap done: 1 IP address (1 host up) scanned in 0.03 seconds
[root@gss-spacewalk-1-prod jabberd]# netstat -nl | head
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:20048 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:36536 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25151 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:32000 0.0.0.0:* LISTEN
---------------------防火墙配置 ---------------------------
# service iptables status
iptables: Firewall is not running.
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 24
Policy from config file: targeted
答案1
感谢您的配置。您的配置对我来说很好。您的配置文件中只有小写字母。
我认为您仍然可能会点击大写的主机名:
internal-GSS-Spacewalk-123456789.us-east
因为你nslookup
的名字中有大写字母
$nslookup spacewalk.abc 服务器:1x.xx.xxx.80 地址:
1x.xx.1xx.80#53spacewalk.abc 规范名称 = internal-GSS-Spacewalk-123456789.us-east-1.elb.amazonaws.com。名称:
internal-GSS-Spacewalk-123456789.us-east-1.elb.amazonaws.com 地址:1x.1xx.1xx.55 名称:
internal-GSS-Spacewalk-123456789.us-east-1.elb.amazonaws.com 地址:1x.1xx.1xx.82
尝试将您的 FQDN 全部小写,它应该会开始工作。我现在在手机上写作,稍后我会在笔记本上填写参考资料。
编辑正如承诺的那样,以下是来源:
如果主机名包含大写和小写,jabberd 和 osad/osa-dispatcher 之间的通信将失败
去引用:
“切勿在 Satellite 主机名中使用大写字母,否则会导致程序无法正常运行!”
在 CentOS7 上安装 Spacewalk 时出现问题(全新安装)
虽然听起来很奇怪,但您永远不应该在主机名中使用大写字母!