zabbix5.4 failed to accept an incoming connection: connection from “172.16.238.2“ rejected, allowed

问题

tail -f /var/log/zabbix/zabbix_agentd.log 查看报错信息
failed to accept an incoming connection: connection from “172.16.238.2” rejected, allowed hosts: “127.0.0.1”

解决办法

修改Agent配置文件 /etc/zabbix/zabbix_agentd.conf

Server参数处添加172.16.238.2 地址即可,或者改为0.0.0.0

##### Passive checks related

### Option: Server
#       List of comma delimited IP addresses, optionally in CIDR notation, or DNS names of Zabbix servers and Zabbix proxies.
#       Incoming connections will be accepted only from the hosts listed here.
#       If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally
#       and '::/0' will allow any IPv4 or IPv6 address.
#       '0.0.0.0/0' can be used to allow any IPv4 address.
#       Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com
#
# Mandatory: yes, if StartAgents is not explicitly set to 0
# Default:
# Server=

Server=127.0.0.1,172.16.238.2

重启agent服务

systemctl restart zabbix-agent

172.16.238.2 这个地址是什么? 其实是我容器内的zabbix-serve的地址

zabbix-server地址验证

 docker-compose exec zabbix-server /bin/bash
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
zabbix@64f19224617c:/var/lib/zabbix$ cat /etc/hosts
127.0.0.1	localhost
::1	localhost ip6-localhost ip6-loopback
fe00::0	ip6-localnet
ff00::0	ip6-mcastprefix
ff02::1	ip6-allnodes
ff02::2	ip6-allrouters
172.16.238.2	64f19224617c
172.16.239.3	64f19224617c

所以我建议把172.16.239.3这个地址也添加到上述解决办法中。

<think>好的,我现在需要解决用户遇到的Telnet连接被拒绝的问题,具体是telnet到172.28.168.207时出现“connection refused”。用户希望得到排查步骤和建议。首先,我要回忆一下可能的原因以及对应的解决方法,并结合提供的引用内容来辅助分析。 首先,根据引用[1]中的情况,当出现类似的连接被拒绝问题时,用户提到了检查iptables和SELinux的状态。这可能意味着防火墙或者安全策略阻止了连接。所以,我应该建议用户检查这两项是否关闭或者配置正确。 其次,引用[2]中提到的zabbix server问题,虽然和Telnet不直接相关,但同样涉及服务是否运行。因此,需要确认目标主机的Telnet服务是否已经安装并正在运行。如果服务未启动,自然无法连接。 接下来,引用[3]提到了SSHD服务,这让我想到网络服务的基本排查步骤。例如,检查服务是否监听正确的端口,是否允许来自客户端的连接。虽然Telnet和SSH不同,但服务状态和配置的检查方法是类似的。 现在,我需要将可能的排查步骤结构化,逐步引导用户检查每个环节: 1. **确认目标主机IP和端口是否正确**:用户可能输入了错误的IP或端口,导致连接被拒绝。需要确认172.28.168.207是否为目标主机的正确地址,且Telnet服务是否在默认的23端口运行,或者是否使用了其他端口。 2. **检查目标主机的Telnet服务状态**:如果服务未安装或未运行,连接会被拒绝。在Linux系统中,可以使用`systemctl status telnet.socket`或者查看相关服务(如xinetd管理的Telnet)来确认状态。如果是Windows,需要检查Telnet服务器功能是否启用。 3. **检查防火墙设置**:引用[1]和[2]都提到了iptables和SELinux。需要检查目标主机和客户端的防火墙是否允许TCP端口(默认为23)的入站连接。可能需要临时关闭防火墙测试,或者添加相应的规则。 4. **检查SELinux状态**:SELinux可能会阻止服务绑定端口或接受连接,可以暂时禁用SELinux或调整策略。 5. **网络连通性测试**:使用ping命令确认目标主机是否可达,如果网络层不通,则可能是路由问题或主机宕机。但注意,即使能ping通,端口可能仍被阻止。 6. **检查服务配置**:例如,Telnet服务可能配置为只监听特定接口(如localhost),而非所有接口。查看配置文件,如`/etc/xinetd.d/telnet`,确保绑定到正确的IP地址。 7. **查看日志文件**:系统日志(如/var/log/messages或journalctl)可能提供更多错误信息,帮助确定连接被拒绝的具体原因。 在回答时,需要按照逻辑顺序排列这些步骤,并引用相关资料中的建议,如关闭iptables和SELinux的步骤。同时,提醒用户注意安全,比如在测试后重新启用防火墙,或考虑使用更安全的SSH替代Telnet。 最后,根据用户提供的引用内容,可能需要指出,类似的问题在Zabbix中也出现过,解决方法包括检查防火墙和服务状态,这同样适用于Telnet问题的排查。</think>针对Telnet连接被拒绝的问题,请按以下步骤排查: ### 一、基础网络检查 1. **确认目标主机可达性** ``` ping 172.28.168.207 ``` 如果无法ping通,需检查网络配置、路由表或物理连接[^2]。 2. **验证端口监听状态** 在目标主机执行: ``` netstat -tuln | grep 23 ``` 若无`0.0.0.0:23`或`172.28.168.207:23`的监听记录,说明Telnet服务未启动或配置错误。 ### 二、服务状态排查 1. **检查Telnet服务是否运行** - Linux系统(使用systemd): ``` systemctl status telnet.socket ``` - 如果提示"Unit telnet.socket not found",需安装`telnet-server`包 - Windows系统: 进入「控制面板→程序→启用或关闭Windows功能」,勾选「Telnet服务器」 2. **检查依赖服务** Telnet服务可能由`xinetd`管理,需确保以下服务运行: ``` systemctl status xinetd ``` ### 三、安全策略检查 1. **防火墙配置** 在目标主机执行: ```bash # CentOS/RHEL firewall-cmd --list-ports firewall-cmd --add-port=23/tcp --permanent firewall-cmd --reload # 或临时关闭防火墙测试 systemctl stop firewalld ``` 2. **SELinux状态** ```bash getenforce # 查看状态 setenforce 0 # 临时禁用 ``` 持续生效需修改`/etc/selinux/config`[^1] ### 四、服务配置验证 1. **检查绑定地址** 编辑Telnet配置文件(通常位于`/etc/xinetd.d/telnet`): ```ini service telnet { flags = REUSE bind = 172.28.168.207 # 确认此处为正确IP disable = no # 必须设为no } ``` 修改后重启服务: ``` systemctl restart xinetd ``` ### 五、日志分析 查看系统日志定位具体错误: ```bash journalctl -u xinetd -n 50 --no-pager tail -f /var/log/secure ``` ### 六、替代方案建议 考虑使用更安全的SSH协议(默认端口22): 1. 确认openssh-server安装: ```bash rpm -q openssh-server || yum install openssh-server ``` 2. 检查SSH服务状态: ``` systemctl status sshd ```[^3]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少陽君

谢谢老板的拿铁

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值