linux设置除白名单ip外不能访问22端口

linux设置除白名单ip外不能访问22端口,第1张

首先你要知道你的linux系统的版本是属于哪个分发版的。当然如果你对自己的linux系统版本不知道的话也没关系。linux系统它的防火墙名为“iptables”如果你打开linux的话是黑色的话,那么你是处在终端阶段,这样如果需要打开你的防火墙的话,输入“chkconfig iptables on”,当然关闭防火墙的话只要将指令的“on”改成“off”,在执行命令即可。当然是需要重启计算机才能正式生效。 当然并不是只有一定命令启动和关闭linux系统防火墙。如果你不想让计算机重启在生效的话可以用“service”命令。当我们需要开启防火墙的话输入“service iptables start”,如需要关闭防火墙的话那就是将start替换成stop即可。当然执行service命令的话如果电脑被重启,之后对防火墙的设置还是恢复到初始状态。所有对linux系统防火墙设置的信息参数全部会丢失。 以上只是介绍了关于linux防火墙的开启及关闭。如果要在防火墙上面设置某些端口的开关命令的话,可以通过找到修改编辑/etc/sysconfig/iptables文件。说到修改防火墙的参数的话所涉及到的知识点就很多了,小编就不在做具体介绍了。

1 Iptables -F

Iptables -X

Iptables -Z

2 Iptables -t filter -A INPUT –p tcp –dport 22 -s 10.0.0.0/24 -j ACCEPT 让自己人通过

Iptables -t filter -A INPUT –i lo –j ACCEPT 让自己的回环接口通过

Iptables -t filter -A INPUT –o lo –j ACCEPT

Iptables -t filter -A OUTPUT –o lo –j ACCEPT

3 默认规则

Iptables -P INPUT DROP 进阻止 所有input规则中最后匹配

Iptables -P OUTPUT ACCEPT 出同意 所有output规则中最后匹配

Iptables -P FORWORD DROP 转发禁止 所有forword规则中最后匹配

4 单独配些允许自己人进入的IP

5 配置允许外网访问端口

Iptables -t filter -A INPUT –p tcp –dport 80 -j ACCEPT

Iptables -t filter –A INPUT –p icmp –icmp-type 8 –j ACCEPT 如果想让外面的人ping同,加该行

如果有ftp协议,加下面两行

Iptables -t filter –A INPUT –m state ESTABLISHED,RELATED –j ACCEPT

Iptables -t filter –A OUTPUT –m state ESTABLISHED,RELATED –j ACCEPT

6 保存

/etc/init.d/iptables save

拓展知识:

linux防火墙设置

方法如下:

1、使用工具,链接Linux系统。

2、输入用户名,和密码,连接到服务器。

3、连接服务器后,输入语句“service iptables status”,回车,会显示防火墙状态。

4、输入语句“chkconfig iptables on”,可以开启防火墙。或者使用语句“chkconfig iptables off”,关闭防火墙,需要重启后生效。

5、如果想要即可生效,可以使用语句“service iptables start”开启防火墙,或者语句“service iptables stop”关闭,关闭或者开启防火墙后,查询防火墙状态,可以看到相应的变化

在linux系统中安装yum install iptables-services然后 vi /etc/sysconfig/iptables# Generated by iptables-save v1.4.7 on Sun Aug 28 12:14:02 2016*filter:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [0:0]#这里开始增加白名单服务器ip(请删除当前服务器的ip地址)-N whitelist-A whitelist -s 8.8.8.8 -j ACCEPT-A whitelist -s x.x.x.x -j ACCEPT#这些 ACCEPT 端口号,公网内网都可访问-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #允许接受本机请求之后的返回数据 RELATED,是为FTP设置的-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 13020 -j ACCEPT-A INPUT -m state --state NEW -m tcp -p tcp --dport 1000:8000 -j ACCEPT #开放1000到8000之间的所有端口#下面是 whitelist 端口号,仅限 服务器之间 通过内网 访问-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j whitelist-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j whitelist-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j whitelist-A INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j whitelist#为白名单ip开放的端口,结束-A INPUT -j REJECT --reject-with icmp-host-prohibited-A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT登录后复制解释:添加防火墙过滤规则步骤如下1、查看现有防火墙过滤规则:iptables -nvL --line-number登录后复制2、添加防火墙过滤规则(设置白名单):1)添加白名单登录后复制iptables -I INPUT 3 -s 136.6.231.163 -p tcp --dport 1521 -j ACCEPT登录后复制命令详解:-I:添加规则的参数INPUT:表示外部主机访问内部资源登录后复制规则链:*1)INPUT——进来的数据包应用此规则链中的策略2)OUTPUT——外出的数据包应用此规则链中的策略3)FORWARD——转发数据包时应用此规则链中的策略4)PREROUTING——对数据包作路由选择前应用此链中的规则 (记住!所有的数据包进来的时侯都先由这个链处理)5)POSTROUTING——对数据包作路由选择后应用此链中的规则(所有的数据包出来的时侯都先由这个链处理)3:表示添加到第三行(可以任意修改)-s:指定作为源地址匹配,这里不能指定主机名称,必须是IP;-p: 用于匹配协议的(这里的协议通常有3种,TCP/UDP/ICMP)--dport: 用于匹配端口号-j: 用于匹配处理方式:常用的ACTION:登录后复制DROP:悄悄丢弃,一般我们多用DROP来隐藏我们的身份,以及隐藏我们的链表REJECT:明示拒绝ACCEPT:接受2)查看添加结果iptables -nvL --line-number登录后复制然后重启防火墙即可生效重启防火墙的命令:service iptables restart此时,防火墙规则只是保存在内存中,重启后就会失效。使用以下命令将防火墙配置保存起来;保存到配置中:service iptables save (该命令会将防火墙规则保存在/etc/sysconfig/iptables文件中。)

linux下要使用iptables限制只有指定的ip才能访问本机则需要先设置一个默认的规则

iptables有默认的规则,它可以适用于所有的访问

因为只有指定或特定的ip地址才能访问本机

所以可以将默认的规则设置为所有访问全部阻止(当然这里需要注意下,如果你要设置的机器是在远端,比如vps则需要注意在设置默认规则的同时要将与该服务器链接的ip添加进白名单,否则在设置完默认阻止后你也无法访问这台服务器,也无法再进行 *** 作了,我们可以使用分号或者&&来在同一个命令行下来完成默认阻止和将自己的ip添加进白名单,假如你的ip地址为1.2.3.4则可以这样输入iptables -P INPUT DROPiptables -A INPUT -s 1.2.3.4 -p tcp -j ACCEPT,或者也可以指定一个端口)

设置默认规则后则可以添加白名单了

比如允许2.3.4.5访问则可以

iptables -A INPUT -s 2.3.4.5 -p tcp -j ACCEPT

如果要限定的不是整个服务器而只是该服务器中的某个服务

比如web服务(一般端口在80,https在443)

则我们可以使用0.0.0.0/0来阻止所有的ip地址

比如

iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 80 -j DROP

以及

iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 443 -j DROP

来阻止所有访问web服务器的ip地址

然后再添加指定的ip到白名单

比如添加1.2.3.4,我们可以

iptables -A INPUT -s 1.2.3.4 -p tcp --dport 80 -j ACCEPT

如果我们允许某个网段下的所有ip都可以访问的话比如1.2.3.[0-255],我们可以

iptables -A INPUT -s 1.2.3.0/24 -p tcp --dport -j ACCEPT

总之不管是阻止所有的服务还是只阻止指定的服务

我们可以先将默认的规则设置为所有ip都不可访问

然后再手动添加ip地址到白名单


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

原文地址: http://outofmemory.cn/yw/8890440.html

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

发表评论

登录后才能评论

评论列表(0条)

保存