Ⅰ linux如何在打开防火墙的状态下让别的客户端telnet
需要注意iptables的链顺序
-A INPUT -j REJECT --reject-with icmp-host-prohibited这种拒绝全部的需要放到最尾巴,就是
-A INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT必须在上面那个链的下面,不能追加在最尾巴
不然是拒绝全部端口先生效,你定义的23端口开放实际上是被屏蔽了。。。语文不好,凑合看吧。。。
给你个我的eg:
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 50000 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1521 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A FORWARD -m tcp -p tcp --dport 8080 -j ACCEPT
-A FORWARD -m tcp -p tcp --dport 1521 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
Ⅱ 某单位想用防火墙对 telnet 协议的命令进行限制,应选在什么类型的防火墙
根据网络体系结构来进行的分类,可以有以下几种类型的防火墙: 1.网络级防火墙 一般是基于源地址和目的地址、应用或协议以及每个IP包的端口来作出通过与否的判断。一个路由器便是一个“传统”的网络级防火墙,大多数的路由器都能通过检查这些信息来决定是否将所收到的包转发,但它不能判断出一个IP包来自何方,去向何处。 先进的网络级防火墙可以判断这一点,它可以提供内部信息以说明所通过的连接状态和一些数据流的内容,把判断的信息同规则表进行比较,在规则表中定义了各种规则来表明是否同意或拒绝包的通过。包过滤防火墙检查每一条规则直至发现包中的信息与某规则相符。如果没有一条规则能符合,防火墙就会使用默认规则,一般情况下,默认规则就是要求防火墙丢弃该包。其次,通过定义基于TCP或UDP数据包的端口号,防火墙能够判断是否允许建立特定的连接,如Telnet、FTP连接。 下面是某一网络级防火墙的访问控制规则: (1)允许网络123.1.0使用FTP(21口)访问主机150.0.0.1; (2) 允许IP地址为202.103.1.18和202.103.1.14的用户Telnet(23口)到主机150.0.0.2上; (3)允许任何地址的E-mail(25口)进入主机150.0.0.3; (4)允许任何WWW数据(80口)通过; (5)不允许其他数据包进入。 网络级防火墙简洁、速度快、费用低,并且对用户透明,但是对网络的保护很有限,因为它只检查地址和端口,对网络更高协议层的信息无理解能力。 2.应用级网关 应用级网关就是我们常常说的“代理服务器”,它能够检查进出的数据包,通过网关复制传递数据,防止在受信任服务器和客户机与不受信任的主机间直接建立联系。应用级网关能够理解应用层上的协议,能够做复杂一些的访问控制,并做精细的注册和稽核。但每一种协议需要相应的代理软件,使用时工作量大,效率不如网络级防火墙。 常用的应用级防火墙已有了相应的代理服务器, 例如: HTTP、 NNTP、 FTP、Telnet、rlogin、X-windows等,但是,对于新开发的应用,尚没有相应的代理服务,它们将通过网络级防火墙和一般的代理服务。 应用级网关有较好的访问控制,是目前最安全的防火墙技术,但实现困难,而且有的应用级网关缺乏"透明度"。在实际使用中,用户在受信任的网络上通过防火墙访问Internet时,经常会发现存在延迟并且必须进行多次登录(Login) 才能访问Internet或Intranet。 3.电路级网关 电路级网关用来监控受信任的客户或服务器与不受信任的主机间的TCP握手信息,这样来决定该会话(Session) 是否合法,电路级网关是在OSI模型中会话层上来过滤数据包,这样比包过滤防火墙要高二层。 实际上电路级网关并非作为一个独立的产品存在,它与其他的应用级网关结合在一起, 如TrustInformationSystems公司的GauntletInternetFirewall;DEC公司的AltaVistaFirewall等产品。另外,电路级网关还提供一个重要的安全功能:代理服务器(ProxyServer) ,代理服务器是个防火墙,在其上运行一个叫做"地址转移"的进程,来将所有你公司内部的IP地址映射到一个"安全"的IP地址,这个地址是由防火墙使用的。但是,作为电路级网关也存在着一些缺陷,因为该网关是在会话层工作的,它就无法检查应用层级的数据包。 4.规则检查防火墙 该防火墙结合了包过滤防火墙、电路级网关和应用级网关的特点。它同包过滤防火墙一样, 规则检查防火墙能够在OSI网络层上通过IP地址和端口号,过滤进出的数据包。它也象电路级网关一样,能够检查SYN和ACK标记和序列数字是否逻辑有序。当然它也象应用级网关一样,可以在OSI应用层上检查数据包的内容,查看这些内容是否能符合公司网络的安全规则。 规则检查防火墙虽然集成前三者的特点,但是不同于一个应用级网关的是,它并不打破客户机/服务机模式来分析应用层的数据, 它允许受信任的客户机和不受信任的主机建立直接连接。规则检查防火墙不依靠与应用层有关的代理,而是依靠某种算法来识别进出的应用层数据,这些算法通过已知合法数据包的模式来比较进出数据包,这样从理论上就能比应用级代理在过滤数据包上更有效。 目前在市场上流行的防火墙大多属于规则检查防火墙,因为该防火墙对于用户透明,在OSI最高层上加密数据,不需要你去修改客户端的程序,也不需对每个需要在防火墙上运行的服务额外增加一个代理。
Ⅲ Linux下telnet服务如何限制用户和主机。
telnet服务没这么多功能,甚至连独立作为一个服务的能力都没有,更没有独立的配置文件了
如果你想让telnet服务允许root远程登录,执行下面的命令
mv /etc/securetty /etc/securetty.bak
如果你想限制访问telnet服务的远程主机IP,方法有两个:
方法1:把不允许的IP地址写到/etc/hosts.deny,或者把仅允许的IP写到/etc/hosts.allow(注:其他一些服务也使用这两个文件内容来限制允许/不允许的IP地址,所以这个方法不是一个好方法,下面的比较好)
方法2:
执行下面命令将阻止某IP访问telnet服务
iptables -t filter -I INPUT -p tcp -s 要限制的IP地址 --dport 23 -j DROP
执行下面命令将“仅允许”某IP访问telnet服务
iptables -t filter -A INPUT -p tcp -s 要允许的IP地址 --dport 23 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 23 -j DROP
至于对mac地址作限制,没啥意义(MAC地址是可以手工更改的,windows, linux都可以),如果需要,可以用iptables来作:
下面命令会禁止MAC地址XX:XX:XX:XX:XX:XX访问本机的一切服务。
iptables -A INPUT -m mac --mac-source XX:XX:XX:XX:XX:XX -j DROP
PS: telnet的“不安全”可不像人们说的“PPTP不安全”那么吹毛求疵,你简单的抓一下包,就明白了,帐号和密码清清楚楚的标在里面。除了学校那些过期的书本上,没人用telnet登录服务器,大家都用ssh的。
iptables是不保存的,如果你确定要使用哪条iptables命令,可以把它写入/etc/rc.d/rc.local里面,这样就可以开机自动执行了。
需要更详细的命令的话可以给我发个信息。
Ⅳ 启动iptables,服务器无法向外telnet
添加这条试一下
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Ⅳ linux 除22端口外都访问不通 设置iptables启动失败
一、查看哪些端口被打开 netstat -anp
二、关闭端口号内:iptables -A INPUT -p tcp --drop 端口号-j DROP
iptables -A OUTPUT -p tcp --dport 端口号-j DROP
三、打开端容口号:iptables -A INPUT -ptcp --dport 端口号-j ACCEPT
四、以下是linux打开端口命令的使用方法。
nc -lp 23 &(打开23端口,即telnet)
netstat -an | grep 23 (查看是否打开23端口)
五、linux打开端口命令每一个打开的端口,都需要有相应的监听程序才可以
Ⅵ 为什么打开iptables,本机无法telnet 3306端口了
看你用的CentOS,执行以下命令:
iptables -F
iptables -A INPUT -i lo -j ACCEPT <-----你缺少这个,导致的。
iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 21107 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
iptables -A INPUT -j DROP
如果版确认没问题权了,执行
mv /etc/sysconfig/iptables /etc/sysconfig/iptables.bak
iptables-save >/etc/sysconfig/iptables
Ⅶ 要一本至少包含SSH,telnet,iptables等等基本网络操作的书籍。最好中文,最好讲得深入一点,鸟哥私房...
一本书能够吗。多几本还差不多
Ⅷ 如何使用 IPTables 限制Ip访问
可以先去下载tuziip软件使用就能换个IP地址访问的
手机电脑都支持连接使用的哦
Ⅸ linux telnet 连接拒绝
1、你的复内网地址在变动导致连制接断开
2、ssh设置了连接超时自动断开
3、服务器上查看 iptables -L -n 看看是否有限制 ,/etc/host.deny 也有可能
4、其他原因
不是很清楚.1没遇到过
Ⅹ 如何在服务器端使用iptables设置防火墙功能
iptables传输数据包的过程
① 当一个数据包进入网卡时,它首先进入PREROUTING链,内核根据数据包目的IP判断是否需要转送出去。
② 如果数据包就是进入本机的,它就会沿着图向下移动,到达INPUT链。数据包到了INPUT链后,任何进程都会收到它。本机上运行的程序可以发送数据包,这些数据包会经过OUTPUT链,然后到达POSTROUTING链输出。
③ 如果数据包是要转发出去的,且内核允许转发,数据包就会如图所示向右移动,经过FORWARD链,然后到达POSTROUTING链输出。()
iptables命令格式
iptables的命令格式较为复杂,一般的格式如下:
iptables [-t table] 命令 [chain] [rules] [-j target]
table——指定表明
命令——对链的操作命令
chain——链名
rules——规则
target——动作如何进行
1.表选项
表选项用于指定命令应用于哪个iptables内置表,iptables内置包括filter表、nat表、mangle表和raw表。
2.命令选项iptables命令格式
命令 说明
-P或–policy <链名> 定义默认策略
-L或–list <链名> 查看iptables规则列表
-A或—append <链名> 在规则列表的最后增加1条规则
-I或–insert <链名> 在指定的位置插入1条规则
-D或–delete <链名> 从规则列表中删除1条规则
-R或–replace <链名> 替换规则列表中的某条规则
-F或–flush <链名> 删除表中所有规则
-Z或–zero <链名> 将表中数据包计数器和流量计数器归零
3.匹配选项
匹配 说明
-i或–in-interface <网络接口名> 指定数据包从哪个网络接口进入,如ppp0、eth0和eth1等
-o或–out-interface <网络接口名> 指定数据包从哪块网络接口输出,如ppp0、eth0和eth1等
-p或—proto协议类型 < 协议类型> 指定数据包匹配的协议,如TCP、UDP和ICMP等
-s或–source <源地址或子网> 指定数据包匹配的源地址
–sport <源端口号> 指定数据包匹配的源端口号,可以使用“起始端口号:结束端口号”的格式指定一个范围的端口
-d或–destination <目标地址或子网> 指定数据包匹配的目标地址
–dport目标端口号 指定数据包匹配的目标端口号,可以使用“起始端口号:结束端口号”的格式指定一个范围的端口
4.动作选项
动作 说明
ACCEPT 接受数据包
DROP 丢弃数据包
REDIRECT 与DROP基本一样,区别在于它除了阻塞包之外, 还向发送者返回错误信息。
SNAT 源地址转换,即改变数据包的源地址
DNAT 目标地址转换,即改变数据包的目的地址
MASQUERADE IP伪装,即是常说的NAT技术,MASQUERADE只能用于ADSL等拨号上网的IP伪装,也就是主机的IP是由ISP分配动态的;如果主机的IP地址是静态固定的,就要使用SNAT
LOG 日志功能,将符合规则的数据包的相关信息记录在日志中,以便管理员的分析和排错
iptables命令格式()
iptables过滤条件()
iptables的语法
1.定义默认策略
当数据包不符合链中任一条规则时,iptables将根据该链预先定义的默认策略来处理数据包,默认策略的定义格式如下。
iptables [-t表名] <-P> <链名> <动作> ?参数说明如下。
[-t表名]:指默认策略将应用于哪个表,可以使用filter、nat和mangle,如果没有指定使用哪个表,iptables就默认使用filter表。
<-P>:定义默认策略。
<链名>:指默认策略将应用于哪个链,可以使用INPUT、OUTPUT、FORWARD、PREROUTING、OUTPUT和POSTROUTING。
<动作>:处理数据包的动作,可以使用ACCEPT(接受数据包)和DROP(丢弃数据包)。
2.查看iptables规则
查看iptables规则的命令格式为:
iptables [-t表名] <-L> [链名]
参数说明如下。
[-t表名]:指查看哪个表的规则列表,表名用可以使用filter、nat和mangle,如果没有指定使用哪个表,iptables就默认查看filter表的规则列表。
<-L>:查看指定表和指定链的规则列表。
[链名]:指查看指定表中哪个链的规则列表,可以使用INPUT、OUTPUT、FORWARD、PREROUTING、OUTPUT和POSTROUTING,如果不指明哪个链,则将查看某个表中所有链的规则列表。
3.增加、插入、删除和替换规则
相关规则定义的格式为:
iptables [-t表名] <-A | I | D | R> 链名 [规则编号] [-i | o 网卡名称] [-p 协议类型] [-s 源IP地址 | 源子网] [--sport 源端口号] [-d目标IP地址 | 目标子网] [--dport目标端口号] <-j动作>
参数说明如下。
[-t表名]:定义默认策略将应用于哪个表,可以使用filter、nat和mangle,如果没有指定使用哪个表,iptables就默认使用filter表。
-A:新增加一条规则,该规则将会增加到规则列表的最后一行,该参数不能使用规则编号。
-I:插入一条规则,原本该位置上的规则将会往后顺序移动,如果没有指定规则编号,则在第一条规则前插入。
-D:从规则列表中删除一条规则,可以输入完整规则,或直接指定规则编号加以删除。
-R:替换某条规则,规则被替换并不会改变顺序,必须要指定替换的规则编号。
<链名>:指定查看指定表中哪个链的规则列表,可以使用INPUT、OUTPUT、FORWARD、PREROUTING、OUTPUT和POSTROUTING。
[规则编号]:规则编号用于插入、删除和替换规则时用,编号是按照规则列表的顺序排列,规则列表中第一条规则的编号为1。
[-i | o 网卡名称]:i是指定数据包从哪块网卡进入,o是指定数据包从哪块网卡输出。网卡名称可以使用ppp0、eth0和eth1等。
[-p 协议类型]:可以指定规则应用的协议,包含TCP、UDP和ICMP等。
[-s 源IP地址 | 源子网]:源主机的IP地址或子网地址。
[--sport 源端口号]:数据包的IP的源端口号。
[-d目标IP地址 | 目标子网]:目标主机的IP地址或子网地址。
[--dport目标端口号]:数据包的IP的目标端口号。
<-j动作>:处理数据包的动作,各个动作的详细说明可以参考前面的说明。
4.清除规则和计数器
在新建规则时,往往需要清除原有的、旧的规则,以免它们影 ?响新设定的规则。如果规则比较多,一条条删除就会十分麻烦, ?这时可以使用iptables提供的清除规则参数达到快速删除所有的规 ?则的目的。
定义参数的格式为:
iptables [-t表名] <-F | Z>
参数说明如下。
[-t表名]:指定默认策略将应用于哪个表,可以使用filter、nat和mangle,如果没有指定使用哪个表,iptables就默认使用filter表。
-F:删除指定表中所有规则。
-Z:将指定表中的数据包计数器和流量计数器归零。
NAT的定义
NAT英文全称是Network Address Translation,称是网络地址转换,它是一个IETF标准,允许一个机构以一个地址出现在Internet上。NAT将每个局域网节点的地址转换成一个IP地址,反之亦然。它也可以应用到防火墙技术里,把个别IP地址隐藏起来不被外界发现,使外界无法直接访问内部网络设备,同时,它还帮助网络可以超越地址的限制,合理地安排网络中的公有Internet 地址和私有IP地址的使用。
NAT的类型
静态NAT(Static NAT)
静态NAT设置起来最为简单和最容易实现的一种,内部网络中的每个主机都被永久映射成外部网络中的某个合法的地址。
动态地址NAT(Pooled NAT)
动态地址NAT是在外部网络中定义了一系列的合法地址,采用动态分配的方法映射到内部网络。
动态地址NAT只是转换IP地址,它为每一个内部的IP地址分配一个临时的外部IP地址,主要应用于拨号,对于频繁的远程联接也可以采用动态NAT。
网络地址端口转换NAPT(Port-Level NAT)
NAPT是把内部地址映射到外部网络的一个IP地址的不同端口上。
最熟悉的一种转换方式。NAPT普遍应用于接入设备中,它可以将中小型的网络隐藏在一个合法的IP地址后面。NAPT与动态地址NAT不同,它将内部连接映射到外部网络中的一个单独的IP地址上,同时在该地址上加上一个由NAT设备选定的TCP端口号。
iptables实例
禁止客户机访问不健康网站
【例1】添加iptables规则禁止用户访问域名为www.sexy.com的网站。
iptables -I FORWARD -d www.sexy.com -j DROP
【例2】添加iptables规则禁止用户访问IP地址为20.20.20.20的网站。
iptables -I FORWARD -d 20.20.20.20 -j DROP
禁止某些客户机上网
【例1】添加iptables规则禁止IP地址为192.168.1.X的客户机上网。
iptables -I FORWARD -s 192.168.1.X -j DROP
【例2】添加iptables规则禁止192.168.1.0子网里所有的客户机上网。
iptables -I FORWARD -s 192.168.1.0/24 -j DROP
禁止客户机访问某些服务
【例1】禁止192.168.1.0子网里所有的客户机使用FTP协议下载。
iptables -I FORWARD -s 192.168.1.0/24 -p tcp –dport 21 -j DROP
【例2】禁止192.168.1.0子网里所有的客户机使用Telnet协议连接远程计算机。
iptables -I FORWARD -s 192.168.1.0/24 -p tcp –dport 23 -j DROP
强制访问指定的站点
【例】强制所有的客户机访问192.168.1.x这台Web服务器。
iptables -t nat -I PREROUTING -i eth0 -p tcp –dport 80 -j DNAT –to-destination 192.168.1.x:80
禁止使用ICMP协议
【例】禁止Internet上的计算机通过ICMP协议ping到NAT服务器的ppp0接口,但允许内网的客户机通过ICMP协议ping的计算机。
iptables -I INPUT -i ppp0 -p icmp -j DROP
发布内部网络服务器
【例1】发布内网10.0.0.3主机的Web服务,Internet用户通过访问防火墙的IP地址即可访问该主机的Web服务。
iptables -t nat -I PREROUTING -p tcp –dport 80 -j DNAT –to-destination 10.0.0.3:80
【例2】发布内网10.0.0.3主机的终端服务(使用的是TCP协议的3389端口),Internet用户通过访问防火墙的IP地址访问该机的终端服务。
iptables -t nat -I PREROUTING -p tcp –dport 3389 -j DNAT –to-destination 10.0.0.3:3389
案例详解
【案例1】做为客户端/终端的基本配置 ?DNS PING LO
【案例2】做为服务端的基本配置:SSH DNS WWW FTP EMAIL ()
【案例3】做为网关的基本配置:SSH DNS WWW FTP EMAIL NAT )SNAT DNAT)限速 ()
【案例4】状态检测()