centos禁止广播,centos怎么下载软件

CentOS Linux防火墙配置及关闭方法

偶然看到防火墙的配置操作说明,感觉不错。执行”setup”命令启动文字模式配置实用程序,在”选择一种工具”中选择”防火墙配置”,然后选择”运行工具”按钮,出现防火墙配置界面,将”安全级别”设为”禁用”,然后选择”确定”即可.

或者用命令:

  #/sbin/iptables-I INPUT-p tcp–dport 80-j ACCEPT

  #/sbin/iptables-I INPUT-p tcp–dport 22-j ACCEPT

  #/etc/rc.d/init.d/iptables save

这样重启计算机后,防火墙默认已经开放了80和22端口

这里应该也可以不重启计算机:

  #/etc/init.d/iptables restart

防火墙的关闭,关闭其服务即可:

查看防火墙信息:

  #/etc/init.d/iptables status

关闭防火墙服务:

#/etc/init.d/iptables stop

永久关闭?不知道怎么个永久法:

  #chkconfig–level 35 iptables off

看了好几个页面内容都有错,下面是正确方法:

  #/sbin/iptables-I INPUT-p tcp--dport 80-j ACCEPT

  #/sbin/iptables-I INPUT-p tcp--dport 22-j ACCEPT

然后保存:

  #/etc/rc.d/init.d/iptables save

再查看是否已经有了:

[root@vcentos~]#/etc/init.d/iptables status

  Table: filter

  Chain INPUT(policy ACCEPT)

  num target prot opt source destination 

  1 ACCEPT udp-- 0.0.0.0/0 0.0.0.0/0 udp dpt:80

  2 ACCEPT tcp-- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80

  3 RH-Firewall-1-INPUT all-- 0.0.0.0/0 0.0.0.0/0

Chain FORWARD(policy ACCEPT)

  num target prot opt source destination 

  1 RH-Firewall-1-INPUT all-- 0.0.0.0/0 0.0.0.0/0

服务器遭受到大量的大量SYN_RECV,80端号占死,网站打不开

没有硬防

有什么办法可以解决吗

1

  sysctl-w net.ipv4.tcp_syncookies=1#启用使用syncookies

  sysctl-w net.ipv4.tcp_synack_retries=1#降低syn重试次数

  sysctl-w net.ipv4.tcp_syn_retries=1#降低syn重试次数

  sysctl-w net.ipv4.tcp_max_syn_backlog=6000#最大半连接数

  sysctl-w net.ipv4.conf.all.send_redirects=0

  sysctl-w net.ipv4.conf.all.accept_redirects=0#不接受重定向的icmp????br/sysctl-w net.ipv4.tcp_fin_timeout=30

  sysctl-w net.ipv4.tcp_keepalive_time=60

  sysctl-w net.ipv4.tcp_window_scaling=1

  sysctl-w net.ipv4.icmp_echo_ignore_all=1#禁止ICMP

  sysctl-w net.ipv4.icmp_echo_ignore_broadcasts=1#ICMP禁止广播

2.限制单位时间内连接数

  如

  iptables-N syn-flood

  iptables-A FORWARD-p tcp--syn-j syn-flood

  iptables-A INPUT-p tcp--syn-j syn-flood

  iptables-A syn-flood-p tcp--syn-m limit--limit 3/s--limit-burst 1-j ACCEP

  iptables-A syn-flood-j DROP

  iptables-A INPUT-i eth0-p tcp!--syn-m state--state NEW-j DROP

  iptables-A INPUT-p tcp--syn-m state--state NEW-j DROP

3如果还是不行,

  iptables-A INPUT-p tcp--dport 80-m recent--name BAD_HTTP_ACCESS--update--seconds 60--hitcount 30-j REJECT

  iptables-A INPUT-p tcp--dport 80-m recent--name BAD_HTTP_ACCESS--set-j ACCEP

如攻击过来的流量大于你的服务器的流量,那就没有什么办法了,如果流量不大,以上方法,可以暂时保证你的80可以访问

如果你的内核已经支持iptables  connlimit可以使用, iptables设定部份,也可以使用

iptables-I FORWARD-p tcp--syn-m connlimit--connlimit-above 5-j DROP

  或

  iptables-A INPUT-p tcp--syn--dport 80-m connlimit--connlimit-above 5-j REJECT

对付SYN FLOOD的话,真正起作用的是:

  sysctl-w net.ipv4.tcp_syncookies=1       #启用使用syncookies

  sysctl-w net.ipv4.tcp_synack_retries=1       #降低syn重试次数

  其他IPTABLES的限制速度功能不能用来对付SYN FLOOD的(不能阻止拒绝服务,但是确实可以防止服务器CRASH)。

CentOS7使用hostapd实现无AP模式的详解

这篇是 linux下使用hostapd实现无线接入点 AP模式的另一种实现方式:hostapd路由模式配置。

对于软硬件的基本配置及 hostapd安装在《CentOS 7之 hostapd AP模式配置》的前半部分内容中有说明,可以先看看那篇,再看本文。

hostapd的AP模式配置需要的有线网卡和无线网卡进行桥接,那路由模式配置主要就是将无线网卡的数据通过有线网卡进行伪装、转发两个方面,也就不再需要将有线和无线网卡进行桥接。

配置这种路由模式就类似一台普通的无线路由器,有线网口就相当于普通无线路由器的 WAN接口,无线网卡就负责发送广播无线信号供手机、笔记本的无线设备接入实现网络访问。

但也有区别的地方就是跟普通无线路由器相比,这种实现方式没有四个普通的 LAN接口,不能供其它台式机等进行有线连接。

实际上 linux作为网络功能为主的操作系统也是可以连接的,只是需要交换机等设备等,会复杂些。我这里的配置就当作是没有四个 LAN接口的普通无线路由器。

hostapd.conf配置

这里只是一个最小化的配置:

#/etc/hostapd/hostapd.conf最小化配置

interface=wlp2s0

#bridge=br0#不再需要桥接,将这行注释就可以

driver=nl80211

ssid=test

hw_mode=g

channel=1

auth_algs=3

ignore_broadcast_ssid=0#是否广播,0广播

wpa=3

wpa_passphrase=12345678#无线连接密码

配置跟AP模式配置文件类似,只要注释掉 bridge=br0选项就可以。

有线接口配置

首先我们需要正确配置有线接口并且可以正常上网。最简单的是方式就是从路由器那自动获取IP地址、网关、DNS。如果没有路由器的话那就需要手动设置有线接口的上网方式,例如常用的PPPOE方式、静态IP地址方式、动态获取IP地址方式等。反正动态获取IP地址的最简单。

无线接口设置使用 ip addr add命令

使用 ip addr add命令设置无线网卡的IP地址,重启后就会失效。例如172.16.0.1/24或其他私有地址,还有就是不要与有线网卡处在同一个网段。一般有线网卡从路由器获取的IP地址是 192.168.1.0/24网段地址。

ipaddradd172.16.0.1/24devwlp2s0

坑提示:目前 CentOS 7默认使用的是 NetworkManager套件作为网络配置工具。这里遇到一个问题就是,NetworkManager套件其提供的 nmcli命令并不支持给无线网卡设置静态的 IP地址,这就需要使用 ip addr add命令手动设定无线网卡的 IP地址或者在/etc/sysconfig/network-scripts/文件夹下面新建配置文件,这是比较老且经典的一种接口配置方式。

使用网络配置文件

如要想想保存设置,可以新建一个文件/etc/sysconfig/network-scripts/ifcfg-static-wlp2s0,文件名以 ifcfg前缀。

vi/etc/sysconfig/network-scripts/ifcfg-static-wlp2s0

[root@server~]#vi/etc/sysconfig/network-scripts/ifcfg-static-wlp2s0

#TYPE=Ethernet

#BOOTPROTO=none

#DEFROUTE=yes

#IPV4_FAILURE_FATAL=no

#IPV6INIT=yes

#IPV6_AUTOCONF=yes

#IPV6_DEFROUTE=yes

#IPV6_FAILURE_FATAL=no

#NAME=static-wlp2s0

#UUID=a036678e-8fdf-48f3-8693-961bb6326i744

DEVICE=wlp2s0#指定无线网卡的接口

ONBOOT=yes#开机就进行设置

IPADDR=172.16.0.1#指定IP地址

PREFIX=24#指定掩码长度

#GATEWAY=192.168.10.254#其他用不着注释掉

#DNS1=127.0.0.1

#DNS2=192.168.10.254

#IPV6_PEERDNS=yes

#IPV6_PEERROUTES=yes

保存后需要先停止 NetworkManager.service服务,最好禁止开机启动,不然还是会有问题。主要表现为开机时 network.service无法启动。

禁止NetworkManager.service服务开机启动

systemctldisableNetworkManager.service

停止NetworkManager.service服务

systemctlstopNetworkManager.service

想看看有没有生效可以重启 network.service服务或直接重启系统。

systemctlrestartnetwork.service

启用转发和配置接口伪装启用转发

使用 sysctl-w重启后会失效

sysctl-wnet.ipv4.ip_forward=1

[root@server~]#sysctl-wnet.ipv4.ip_forward=1

net.ipv4.ip_forward=1

启用IP转发重启后不会失效使用下面方法,系统重启后会自动加载/etc/sysctl.d/文件夹下的设置。

vi/etc/sysctl.d/ip_forward.conf

[root@server~]#vi/etc/sysctl.d/ip_forward.conf

net.ipv4.ip_forward=1

配置接口伪装

CentOS 7中使用 firewalld和 iptables都能做到接口伪装。CentOS 7中默认启用的是 firewalld.service服务。iptables服务和 firewalld服务冲突,两者只能启用其中一个。

使用 firewalld配置接口伪装

如果能使用图形界面配置的话更加简单明了,这里仅使用 firewalld-cmd命令方式配置。

如果没有启动 firewalld.service服务,需要先启动 firewalld.service服务。

systemctlstartfirewalld.service

将无线接口加入到 trust区域,并保存配置。默认情况下所有接口属于 public区域,连接限制比较严格,会导致无法连接。

firewall-cmd--zone=trusted--add-interface=wlp2s0--permanent

[root@server~]#firewall-cmd--zone=trusted--add-interface=wlp2s0--permanent

success

对有线接口所在的区域启用伪装,并保存配置,默认情况下有线接口属于 public区域。

firewall-cmd--zone=public--add-masquerade--permanent

[root@server~]#firewall-cmd--zone=public--add-masquerade--permanent

success

重启 firewalld服务

systemctlrestartfirewalld.service

使用 iptables配置接口伪装

如果习惯使用 iptables,需要安装 iptables-services这个包,里面包含 iptables.service和 ip6tables.service这两个服务,分别用于 ipv4和 ipv6。

要使用 iptables需要先停止并禁用 firewalld.service服务

systemctlstopfirewalld.service

systemctldisablefirewalld.service

再启用 iptables.service服务,因为目前还是主要使用 ipv4所以只启用 iptables.service就可以。如果使用 iptables同样需要设置开机启动 iptables.service服务。

systemctlenableiptables.service

启动 iptables.service服务

systemctlstartiptables.service

接口伪装

iptables-tnat-APOSTROUTING-op2p1-jMASQUERADE

一般来说配置上面的命令就可以了,如果防火墙设置比较严格需要添加允许转发无线网卡接口wlp2s0。

iptables-tfilter-AFORWARD-iwlp2s0-jACCEPT

dnsmasq配置 dnsmasq软件安装

dnsmasq主要负责分配客户端IP地址及DNS解析服务。

没有安装的话先安装 dnsmasq软件

yuminstalldnsmasq

设置开机自动启动 dnsmasq服务

systemctlenablednsmasq.service

dnsmasq.conf配置

vi/etc/dmsmasq.conf

[root@server~]#vi/etc/dnsmasq.conf

#指定接口,指定后同时附加lo接口,可以使用'*'通配符

interface=wlp2s0

#绑定接口

bind-interfaces

#DHCP地址池从172.16.0.100到172.16.0.200

dhcp-range=172.16.0.100,172.16.0.200,255.255.255.0,1h

启动 dnsmansq服务需要无线网卡已经正确设置了 ip地址。dnsmasq会自动将当前的无线网卡地址 172.16.0.1设置为客户端的网关地址和DNS地址。

systemctlstartdnsmasq.service

最后重新启动 hostapd服务

systemctlrestarthostapd.service

centos怎样安装wireshark

centos下安装wireshark相当简单.两条命令就够了.这里.主要是记录写使用方面的东西

安装:

1、yum install wireshark。注意这样并无法使用wireshark命令和图形界面。但提供了抓包基本功能。

2、yum install wireshark-gnome。这样就可以方便的使用了。

如果能登录图形界面终端.那使用和windows下的无区别.但我们的服务器都在国外.要管理的话都是SSH登录只能用命令行了。使用wireshark的命令行工具tshark,在安装的时候会默认给安装上的,使用方法很简单,要捕捉包: tshark-wpacket.txt-i etho-q这样就会把捕捉到的网络包存放在packet.txt文件里面,要查看详情的话: tshark-rpacket.txt-x-V|more即可.

下面理一下所有参数的作用:

-a

设置一个标准用来指定Wireshark什么时候停止捕捉文件。标准的格式为 test:value,test值为下面中的一个。

duration:value

当捕捉持续描述超过Value值,停止写入捕捉文件。

filesize:value

当捕捉文件大小达到Value值kilobytes(kilobytes表示1000bytes,而不是1024 bytes),停止写入捕捉文件。如果该选项和-b选项同时使用,Wireshark在达到指定文件大小时会停止写入当前捕捉文件,并切换到下一个文件。

files:value

当文件数达到Value值时停止写入捕捉文件

-b

如果指定捕捉文件最大尺寸,因为Wireshark运行在”ring buffer”模式,被指定了文件数。在”ring buffer”模式下,Wireshark会写到多个捕捉文件。它们的名字由文件数和创建日期,时间决定。

当第一个捕捉文件被写满,Wireshark会跳转到下一个文件写入,直到写满最后一个文件,此时Wireshark会丢弃第一个文件的数据(除非将files设置为0,如果设置为0,将没有文件数限制),将数据写入该文件。

如果duration选项被指定,当捕捉持续时间达到指定值的秒数,Wireshark同样会切换到下个文件,即使文件未被写满。

duration:value

当捕捉持续描述超过Value值,即使文件未被写满,也会切换到下个文件继续写入。

filesize:value

当文件大小达到value值kilobytes时(kelobyte表示1000bytes,而不是1024bytes),切换到下一个文件。

files:value

当文件数达到value值时,从第一个文件重新开始写入。

-B

仅适合Win32:设置文件缓冲大小(单位是MB,默认是1MB).被捕捉驱动用来缓冲包数据,直到达到缓冲大小才写入磁盘。如果捕捉时碰到丢包现象,可以尝试增大它的大小。

-c

实时捕捉中指定捕捉包的最大数目,它通常在连接词-k选项中使用。

-D

打印可以被Wireshark用于捕捉的接口列表。每个接口都有一个编号和名称(可能紧跟在接口描述之后?)会被打印,接口名或接口编号可以提供给-i参数来指定进行捕捉的接口(这里打印应该是说在屏幕上打印)。

在那些没有命令可以显示列表的平台(例如Windows,或者缺少ifconfig-a命令的UNIX平台)这个命令很有用;接口编号在Windows 2000及后续平台的接口名称通常是一些复杂字符串,这时使用接口编号会更方便点。

注意,”可以被Wireshark用于捕捉”意思是说:Wireshark可以打开那个设备进行实时捕捉;如果在你的平台进行网络捕捉需要使用有特殊权限的帐号(例如root,Windows下的Administrators组),在没有这些权限的账户下添加-D不会显示任何接口。参数

-f

设置捕捉时的内置过滤表达式

-g在使用-r参数读取捕捉文件以后,使用该参数跳转到指定编号的包。

-h

-h选项请求Wireshark打印该版本的命令使用方法(前面显示的),然后退出。

-i

设置用于进行捕捉的接口或管道。

网络接口名称必须匹配Wireshark-D中的一个;也可以使用Wireshark-D显示的编号,如果你使用UNIX,netstat-i或者ifconfig-a获得的接口名也可以被使用。但不是所有的UNIX平台都支持-a,ifconfig参数。

如果未指定参数,Wireshark会搜索接口列表,选择第一个非环回接口进行捕捉,如果没有非环回接口,会选择第一个环回接口。如果没有接口,wireshark会报告错误,不执行捕捉操作。

管道名即可以是FIFO(已命名管道),也可以使用”-”读取标准输入。从管道读取的数据必须是标准的libpcap格式。

-k

-k选项指定Wireshark立即开始捕捉。这个选项需要和-i参数配合使用来指定捕捉产生在哪个接口的包。

-l

打开自动滚屏选项,在捕捉时有新数据进入,会自动翻动”Packet list”面板(同-S参数一样)。

-m

设置显示时的字体(编者认为应该添加字体范例)

-n

显示网络对象名字解析(例如TCP,UDP端口名,主机名)。

-N

对特定类型的地址和端口号打开名字解析功能;该参数是一个字符串,使用m可以开启MAC地址解析,n开启网络地址解析,t开启传输层端口号解析。这些字符串在-n和-N参数同时存在时优先级高于-n,字母C开启同时(异步)DNS查询。

-o设置首选项或当前值,覆盖默认值或其他从Preference/recent file读取的参数、文件。该参数的值是一个字符串,形式为 prefname:value,prefnmae是首选项的选项名称(出现在preference/recent file上的名称)。value是首选项参数对应的值。多个-o可以使用在单独命中中。

设置单独首选项的例子:

wireshark-o mgcp.display_dissect_tree:TRUE

设置多个首选项参数的例子:

wireshark-o mgcp.display_dissect_tree:TRUE-o mgcp.udp.callagent_port:2627-p

不将接口设置为杂收模式。注意可能因为某些原因依然出于杂收模式;这样,-p不能确定接口是否仅捕捉自己发送或接受的包以及到该地址的广播包,多播包

-Q

禁止Wireshark在捕捉完成时退出。它可以和-c选项一起使用。他们必须在出现在-i-w连接词中。

-r

指定要读取显示的文件名。捕捉文件必须是Wireshark支持的格式。

-R

指定在文件读取后应用的过滤。过滤语法使用的是显示过滤的语法,,不匹配的包不会被显示。

-s

设置捕捉包时的快照长度。Wireshark届时仅捕捉每个包字节的数据。

-S

Wireshark在捕捉数据后立即显示它们,通过在一个进程捕捉数据,另一个进程显示数据。这和捕捉选项对话框中的”Update list of packets in real time/实时显示数据”功能相同。

-t

设置显示时间戳格式。可用的格式有

r相对的,设置所有包时间戳显示为相对于第一个包的时间。

a absolute,设置所有包显示为绝对时间。

ad绝对日期,设置所有包显示为绝对日期时间。

d delta设置时间戳显示为相对于前一个包的时间

e epoch设置时间戳显示为从epoch起的妙数(1970年1月1日 00:00:00起)

-v

请求Wireshark打印出版本信息,然后退出

-w

在保存文件时以savefile所填的字符为文件名。

-y

如果捕捉时带有-k参数,-y将指定捕捉包中数据链接类型。The values reported by-L are the values that can be used.

-X

设置一个选项传送给TShark模块。eXtension选项使用extension_key:值形式,extension_key:可以是:

lua_script:lua_script_filename,它告诉Wireshark载入指定的脚本。默认脚本是Lua scripts.

-z

得到Wireshark的多种类型的统计信息,显示结果在实时更新的窗口。

用LogParser分析WireShark的包

阅读剩余
THE END