linux下tcp回射程序连接不通说no route to host

linux下tcp回射程序连接不通说no route to host,第1张

没路由..

无法解析到两台机的IP地址,当然是不行的.

1台机反正就localhost当然可以.

你首先需要在路由上进行设置,要不你直接编辑/etc/hosts增加到另一台的解析.

tcp wrapper是一款访问控制的工具,很类似iptables的功能,但是要比iptables功能要小很多,一般只有在满足以下条件时才能使用tcp wrapper

1),在编译的时候明确表示能接受tcp wrapper的控制

通过ldd `which sshd`来查看

通过strings `which portmap`| grep hosts查看

2),必须是tcp协议

这个时候才能实现tcp wrapper的控制,虽然能功能范围少了一点,但是tcp wrapper配置起来要比iptables简单很多

能接受tcp wrapper控制的服务比如:telnet ,ssh ,vsftp

所谓的监听从编程角度来讲就是一段程序通过循环不停的对一个端口进行扫描

实际上tcp wrapper的实现就是主要是通过配置以下两个文件:

/etc/hosts.allow

/etc/hosts.deny

tcp wrapper的格式:

daemon_list: client_list [:options]

服务名 : 客户端名[选项]

daemon_list有以下几种格式:

vsftpd: 192.168.0.

vsftpd,sshd,telnetd: 192.168.0.

All: 192.168.0.

daemon@host #指定只在某个特定的地址上进行控制比如:

vsftpd@192.168.0.186#有多块网卡的情况下

client_list有以下几种格式:

IP

network address/mask #网络地址(只能使用类似255.255.完全ip地址格式,不能使用位长度表示)

hostname #主机名称

.a.org #表示.a.org域内的所有主机

以下是以vsftp为例进行演示(拒绝172.16.100.1访问ftp服务器):

1),yum install vsftpd

2), service vsftpd start

3),vim /etc/hosts.deny 里面写入

vsftpd: 172.16.100.1

4),配置完立即生效,不需要重启服务

5),通过windows客户端进行认证

只允许172.16.网段访问ftp:

1),vim /etc/hosts.allow 写入: vsftpd: 172.16.

2), vim /etc/hsots.deny : vsftpd: ALL

以下是对telnet(监听23号端口)的介绍:

telnet是一个非独立守护进程,由超级守护进程(xinetd)代为管理,它接受tcp wrapper的控制,但是 实际上不是telnet接受tcp wrapper的控制,而是xinetd接受tcp wrapper的控制

telnet传输的过程是明文

telnet一般不允许管理员直接登录(可以先以普通身份登进去,然后su - root)

1),yum install telnet-server

2),ls /etc/xinetd.d #里面会有telnet,由此说明telnet是接受超级进程xinetd控制

3),ldd `which xinetd` #可以发现超级守护进程是接受tcp wrapper控制的

4),chkconfig telnet on #注意这里只是说明下一次开机会自动启动,不能立即生效

5),service xinetd restart #通过重启超级进程来重启telnet

6),useradd gentoo

7),passwd gentoo

8),telnet 172.168.25.1测试

只允许172.16.0.1登录telnet:

vim /etc/hosts.deny 写入: in.telnetd:ALL EXCEPT 172.16.0.1

[:options] 介绍:

spawn #发起一些额外的命令

vim /etc/hosts.deny 写入:

in.telnet: ALL EXCEPT 172.16.0.1 : spawn echo "%u from %a attempt to login %A ,the daemon is %d." >>/var/log/telnet.log

除了spawn还有allow 和 deny分别表示在/etc/hosts.allow中deny 和 /etc/hosts.deny中允许

比如:

vim /etc/hosts.deny中写入 : in.telnetd: 172.16. :ALLOW

ALL:ALL#表示只允许172.16.网段使用telnet登录


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7626123.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-07
下一篇2023-04-07

发表评论

登录后才能评论

评论列表(0条)

    保存