xml地图|网站地图|网站标签 [设为首页] [加入收藏]
来自 新闻动态 2019-10-22 12:31 的文章
当前位置: 新濠国际登录平台 > 新闻动态 > 正文

新濠国际登录平台首先检查iptables服务的状态,查

命令格式:命令 -选项 参数,例如:ls -la /usr;当有多个选项时,可以写在一起。
ifconfig:查看当前机器的IP信息
service network restart:重启网络服务
service iptables status:查看当前机器防火墙状态
hostname XX:查看或者修改主机名
pwd:查看当前所在文件全路径
ls -l或者ll或者ls:查看当前目录内容
cat 文件名:表示查看文件的内容(小文件)
more 文件名:表示查看文件内容(大文件),使用空格进行翻页,回车显示下一行,q(或者ctrl+c)退出
mkdir:创建文件夹
mkdir -p d3/d4/d5:递归创建文件夹
touch:创建文件
head -number [文件名]:查看文件的前多少行
tail -number [文件名]:查看文件的后多少行
mv 1 修改文件名称的功能 : mv [源文件名称] [新文件名称]
2 移动文件位置: mv [源文件名称] [新文件位置+ 新文件名称]

Part1:iptables

命令:chmod
语法:chmod [{ugo}{+-=}{rwx}] [文件或目录]
chmod [mode=421] [文件目录]
描述:改变文件或目录的权限
形如:chmod g+w filename
形如:chmod 761 filename

   环境:centos6.7

问题示例:新建一个新目录,下面一个新文件,尝试用普通用户去删除新目录下的新文件。
1 尝试修改:新文件的读写权限设置为 777,进行删除文件操作
2 尝试修改:新目录的读写权限设置为 777,进行删除文件操作

目前我只配置了INPUT。OUTPUT和FORWORD都是ACCEPT的规则

文件的rwx权限:
r:可以执行catch、more等读操作。
w:修改文件的内容等写操作,但是不代表你可以把这个文件删除。
x:对文件进行执行操作。
目录的rwx权限:
r:可读操作,可以列出目录的内容,比如ls命令。
w:表示可以在目录下创建或删除文件的权限。
x:表示可以进入这个目录(基本上所以的目录都会有rx权限)。
所以:删除文件的权限,是拥有你当前文件所在的目录的写权限。

由于想要先实现防火墙规则,所以前面的内容讲的是方法,后面是详解iptables

命令:chown
语法:chown user 文件
描述:改变文件的所有者
示例:chown newuser t1.sh
useradd username 添加用户
passwd username 为用户设置密码

注意centos7.0服务启动命令不一样 

命令:chgrp
语法:chgrp group 文件
描述:改变文件的所属组
示例:chgrp adm t1.sh
查看系统默认的权限 :umask -S (umask查看权限掩码值022 使用777-022得到真实权限)

一、检查iptables服务状态

命令:find
语法:find [搜索范围路径] -name 【文件名称】(根据文件名查找)
find [搜索范围路径] -size [(+-)文件大小] (根据文件大小查找,大于+ 小于-)
find [搜索范围路径] -user(文件的所有者)
find [时间查找] [以天为单位]
[以天为单位] 1 ctime、atime、mtime
[以分钟为单位] 2 cmin、amin、mmin
。。。。。
描述:查找任何文件或目录(所有)

首先检查iptables服务的状态

find [时间查找] [以天为单位]
天: ctime、atime、mtime
分钟:cmin、amin、mmin
c表示:change 改变文件属性的意思(比如所有者、所属组、权限变更)。
a表示:access 表示被访问过的意思(比如被查看过等)。
m表示:modify 更改内容的意思。
在时间前面添加:-表示之内,+表示之外

 1 [root@izp**** ~]# service iptables status

find应用的连接符:
-a (and的意思,逻辑与)
-o(or的意思,逻辑或)

2 iptables: Firewall is not running. 
说明iptables服务是有安装的,但是没有启动服务。
如果没有安装的话可以直接yum安装

find查找:根据文件类型进行查找:
-type
其中:f表示二进制文件,l表示软连接文件 d表示目录

yum install -y iptables
启动iptables

find的连接执行符号:
find ... -exec [执行命令] {} ;
注意:“{}"表示find命令查找的结果,而""表示转义符
find ... -exec [执行命令] {} ;
find ... -ok [执行命令] {} ;
ok和exec的区别就是ok有询问确认的意思。
find -inum [i节点标号] 根据i节点查找文件,在linux系统中,所有的文件都有一个唯一的标识,方便linux内核去调用,这就是i节点

 1 [root@izp**** ~]# service iptables start

命令:locate
语法:locate [文件名称]
描述:查找文件,根据linux数据库内部的索引(updatedb命令,可以手工更新updatedb数据库,一般和locate配合使用)
注意:locate的查找速度非常快,比find查找快很多,原因是locate查找的是linux系统构建的文件数据库的索引值,所以速度非常快,但是有的时候新创建的文件使用locate命令查找不到,原因是这个文件的索引没有马上更新到linux系统文件数据库里。

2 iptables: Applying firewall rules: [ OK ] 
看一下当前iptables的配置情况

命令:man
语法:man [命令或者配置文件],
描述:帮助命令,非常的有用,可以获得命令的帮助文档,如何使用等。

 1 [root@izp**** ~]# iptables -L -n 
二、清除默认的防火墙规则

命令:whatis
语法:whatis [命令]
描述:查看命令的描述。

#首先在清除前要将policy INPUT改成ACCEPT,表示接受一切请求。
#这个一定要先做,不然清空后可能会悲剧
 1 [root@izp**** ~]# iptables -P INPUT ACCEPT 

命令:--help
语法:[命令] --help
描述: 查看命令的选项用法。

#清空默认所有规则
 1 [root@izp**** ~]# iptables -F 

命令:gzip
语法:gzip [文件名称]
描述:压缩的时候不保留原文件,并且只能压缩文件不能压缩目录

#清空自定义的所有规则
 1 [root@izp**** ~]# iptables -X 

命令:gunzip
语法:gunzip [已压缩的文件]
描述:解压缩文件,不不保留源文件

#计数器置0
 1 [root@izp**** ~]# iptables -Z 

命令:tar
语法:tar [zcvf] [zxvf] [打包文件名.tar.gz] [源文件]
-c 产生tar打包文件(必选)
-x 产生的解压缩文件(必选)
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
描述:打包目录 生成的后缀名 .tar.gz,或者进行解压
最后配置加-C 表示文件解压后存放的路径
file命令可以查看任何文件的类型

三、配置规则

命令:zip
语法:zip 选项[-r] [压缩后文件名称] [源文件]
描述:zip的格式是windows和linux通用的格式,可以压缩文件和目录,压缩目录时需要选项-r。

#允许来自于lo接口的数据包
#如果没有此规则,你将不能通过127.0.0.1访问本地服务,例如ping 127.0.0.1
 1 [root@izp**** ~]# iptables -A INPUT -i lo -j ACCEPT  

命令:unzip
语法:unzip [解压缩的文件]
描述:进行解压缩
最后配置加-d 表示文件解压后存放的路径

#ssh端口22
 1 [root@izp**** ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT 

ping
(注意:ping 不通对方网络的原因有很多种,需要一步步详细排查)
(1)首先ping一下回环地址 127.0.0.1 检查自己本机的网络协议是否正确
(2)再ping一下本机ip 查看自己本机的网络是否正确
(3)然后检查对方网络设置、防火墙、插件等等
(4)如果发现丢包率里有丢失数据包,可能是网络、网线的原因
(5)ping 配置选项 ping -c 6 192.168.80.100(表示ping 6次之后断开)
(6)ping 配置选项 ping -s 60000 (最大65507)

#FTP端口21
 1 [root@izp**** ~]# iptables -A INPUT -p tcp --dport 21 -j ACCEPT 

查看网卡信息:ifconfig
关机:shutdown -h now
重启:reboot
ctrl + l 清屏。
ctrl + c 退出应用。
tab键,信息补全。

#web服务端口80
 1 [root@izp**** ~]# iptables -A INPUT -p tcp --dport 80 -j ACCEP 

过滤:grep,可以将指定内容进行过滤然后输出。

#tomcat
 1 [root@izp**** ~]# iptables -A INPUT -p tcp --dport xxxx -j ACCEP 

管道:
将一个命令的输出传送给另一个命令,作为另外一个命令的输入。管道可以连接N个命令。
ls -l /etc | more (表示将ls -l /etc的输出,当做more命令的输入,即more命令浏览的内容为前面命令的输出结果)
ls -l /etc | grep init(表示将ls -l /etc的输出结果进行过滤,显示为init的结果)
ls -l /etc | grep init | wc -l (最后进行统计显示的个数)

#mysql
 1 [root@izp**** ~]# iptables -A INPUT -p tcp --dport xxxx -j ACCEP 

逻辑与(&&)
形如:ls && pwd(第一个命令如果执行成功。第二个命令才会执行)
逻辑或(||)
形如:ls || pwd (第一个命令执行成功,则第二个不执行,第一个命令执行失败,则执行第二个)

#允许icmp包通过,也就是允许ping
 1 [root@izp**** ~]# iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT 

输入输出重定向:
Shell对每一个进程预先定义了3个文件描述字(0,1,2)
0 (stdin) 标准输入 1 (stdout)标准输出 2 (stderr)标准错误输出
输出重定向:就是把输出的结果显示到一个文件上 (>表示输出重定向)

#允许所有对外请求的返回包
#本机对外请求相当于OUTPUT,对于返回数据包必须接收啊,这相当于INPUT了
 1 [root@izp**** ~]# iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT 

 

#如果要添加内网ip信任(接受其所有TCP请求)
 1 [root@izp**** ~]# iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT 

文件信息说明:
drwxr-xr-x. 2 root root 6 Nov 5 2016 etc
d:开始为d,表示目录directory,表示文件夹
-:开头为-,表示普通的二进制文件
l:开始为l,表示软连接文件(link)
r:read读权限,w:write写权限,x:execute执行权限
Linux中的文件如:drwxr-xr-x 可以看做三个部分(rwx r-x r-x),分别是文件的所有者rwx(user)的权限、所属组r-x(group)的权限和其他人r-x(others)的权限

#过滤所有非以上规则的请求
 1 [root@izp**** ~]# iptables -P INPUT DROP 

在进入编辑文本之后,需要按a或者i或者o才可以进行文本编辑
退出文本编辑的操作顺序是:首先按ESC键,然后在按SHIFT + :,输入wq表示保存并且退出,输入q!表示不保存并强制退出

四、保存

Linux文件说明
1、文件的rwx
2、硬连接数
3、所有者
4、所属组
5、文件大小(不精确)
6、文件的创建或者修改时间
7、文件的名称

首先iptables -L -n看一下配置是否正确。
没问题后,先不要急着保存,因为没保存只是当前有效,重启后就不生效,这样万一有什么问题,可以后台强制重启服务器恢复设置。
另外开一个ssh连接,确保可以登陆。

/usr/software/JDK/jdk1.8.0_131
export JAVA_HOME=/usr/software/JDK/jdk1.8.0_131
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

确保没问题之后保存

CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙步骤。

#保存
 1 [root@izp**** ~]# service iptables save 

1、关闭firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)

#添加到自启动chkconfig
 1 [root@izp**** ~]# chkconfig iptables on 

2、iptables防火墙(这里iptables已经安装,下面进行配置)
vi/etc/sysconfig/iptables #编辑防火墙配置文件
# sampleconfiguration for iptables service
# you can edit thismanually or use system-config-firewall
# please do not askus to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT[0:0]
:OUTPUT ACCEPT[0:0]
-A INPUT -m state--state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -jACCEPT
-A INPUT -i lo -jACCEPT
-A INPUT -p tcp -mstate --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -jACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080-j ACCEPT
-A INPUT -j REJECT--reject-with icmp-host-prohibited
-A FORWARD -jREJECT --reject-with icmp-host-prohibited
COMMIT
:wq! #保存退出

iptables 25个最常用的命令

备注:这里使用80和8080端口为例。***部分一般添加到“-A INPUT -p tcp -m state --state NEW -m tcp--dport 22 -j ACCEPT”行的上面或者下面,切记不要添加到最后一行,否则防火墙重启后不生效。
systemctlrestart iptables.service #最后重启防火墙使配置生效
systemctlenable iptables.service #设置防火墙开机启动

1、清空存在的策略
当你开始创建新的策略,你可能想清除所有的默认策略,和存在的策略,可以这么做:
iptables -F 或者iptables --flush
2、设置默认策略
默认链策略是ACCEPT,改变所有的链策略为DROP:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
3、阻止一个指定的ip
BLOCK_THIS_IP=“x.x.x.x"
iptables -A INPUT -s ”$BLOCK_THIS_IP“ -j DROP
iptables -A INPUT -i eth0 -s "$BLOCK_THIS_IP" -j DROP
iptables -A INPUT -i eth0 -p tcp -s "$BLOCK_THIS_IP" -j DROP
4、允许SSH
允许所有通过eth0接口使用ssh协议连接本机:
iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
5、允许某个网段通过ssh连接
iptables -A INPUT -i eth0 -p tcp -s 192.168.100.0/24 --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
6、允许http和https
允许所有进来的web流量:http协议的80端口
iptables -A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
允许所有进来的web流量:https协议的443端口
iptables -A INPUT -i eth0 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
7、多个策略联合一起
允许ssh,http,https:
iptables -A INPUT -i eth0 -p tcp -m multiport --dports 22,80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp -m multiport --sports 22,80,443 -m state --state ESTABLISHED -j ACCEPT
8、允许SSH连接其他主机
iptables -A OUTPUT -o eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
9、允许SSH连接指定的网段
iptables -A OUTPUT -o eth0 -p tcp -d 192.168.100.0/24 --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
10、允许https出去
iptables -A OUTPUT -o eth0 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
11、对web请求做负载均衡(每三个包,均衡到指定服务器,需要扩展iptables)
iptables -A PREROUTING -i eth0 -p tcp --dport 443 -m state --state NEW -m nth --counter 0 --every 3 --packet 0 -j DNAT --to-destination 192.168.1.101:443
iptables -A PREROUTING -i eth0 -p tcp --dport 443 -m state --state NEW -m nth --counter 0 --every 3 --packet 1 -j DNAT --to-destination 192.168.1.102:443
iptables -A PREROUTING -i eth0 -p tcp --dport 443 -m state --state NEW -m nth --counter 0 --every 3 --packet 2 -j DNAT --to-destination 192.168.1.103:443
12、允许ping
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
13、允许ping远程
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
新濠国际登录平台,iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
14、允许本地回环
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
15、允许内网访问外部网络
这个例子eth1 连接外部网络,eth0连接内部网络
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
16、允许DNS出去
iptables -A OUTPUT -p udp -o eth0 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --sport 53 -j ACCEPT
17、允许NIS连接
NIS端口是动态的,当ypbind启动时它分配端口。
首先运行 rpcinfo -p 显示得到端口号,这个例子使用端口850,853。
iptables -A INPUT -p tcp --dport 111 -j ACCEPT
iptables -A INPUT -p udp --dport 111 -j ACCEPT
iptables -A INPUT -p tcp --dport 853 -j ACCEPT
iptables -A INPUT -p udp --dport 853 -j ACCEPT
iptables -A INPUT -p tcp --dport 850 -j ACCEPT
iptables -A INPUT -p udp --dport 850 -j ACCEPT
上面的例子当ypbind重新启动时将失效,有2种解决方案:
(1)分配nis服务静态ip(2) 使用精妙的脚本
18、允许指定网段连接Rsync
iptables -A INPUT -i eth0 -p tcp -s 192.168.101.0/24 --dport 873 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 873 -m state --state ESTABLISHED -j ACCEPT
19、允许mysql从指定的网段连接
iptables -A INPUT -i eth0 -p tcp -s 192.168.100.0/24 --dport 3306 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 3306 -m state --state ESTABLISHED -j ACCEPT
20、允许sendmail或者postfix
iptables -A INPUT -i eth0 -p tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 25 -m state --state ESTABLISHED -j ACCEPT
21、允许IMAP和IMAPS
IMAP:
iptables -A INPUT -i eth0 -p tcp --dport 143 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 143 -m state --state ESTABLISHED -j ACCEPT
IMAPS:
iptables -A INPUT -i eth0 -p tcp --dport 993 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 993 -m state --state ESTABLISHED -j ACCEPT
22、允许POP3和POP3S
POP3:
iptables -A INPUT -i eth0 -p tcp --dport 110 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 110 -m state --state ESTABLISHED -j ACCEPT
POP3S:
iptables -A INPUT -i eth0 -p tcp --dport 995 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 995 -m state --state ESTABLISHED -j ACCEPT
23、预防DOS攻击
iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
-m : 使用iptables扩展
--limit 25/minute : 限制分钟连接请求数
--limit-burst:触发阀值,一次涌入数据包数量
24、端口转发
来自442的都转到22端口
iptables -t nat -A PREROUTING -p tcp -d 192.168.102.37 --dport 422 -j DNAT --to 192.168.102.37:22
你还必须明确允许442端口
iptables -A INPUT -i eth0 -p tcp --dport 422 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 422 -m state --state ESTABLISHED -j ACCEPT
25、包丢弃日志
你也许想查看所有丢弃包的日志。
首先创建一个新链叫 LOGGING
iptables -N LOGGING
确保所有的连接跳到LOGGING
iptables -A INPUT -j LOGGING
记录这些包通过自定义名字 "log-prefix"
iptables -A LOGGING -m limit --limit 2/min -j LOG --log-prefix "IPTables Packet Dropped:" --log-level 7
最后丢弃这些数据包
iptables -A LOGGING -j DROP

 

 

Part2:linux ls命令

   当输出的内容超出一屏时,可以使用管道(|)结合more命令来实现分屏显示

1 ls | more

按enter键 是向上滚动一行

按空格键 是向上滚动一页

  ls

  命令选项 (非必选项)

  -a 列出目录下所有文件,包含以.开头的隐藏文件

  -A显示出.和..以外的所有文件

  -d显示目录的自身属性,不显示目录下的文件(不是很清楚,只显示一个.)

  -l列出目录和文件的详细信息

  -h 和 -l参数合用,以人可读取的方式显示文件的大小,如4k,2M,3G,

  -i 显示文件或者目录的inode信息,即索引信息

  -t 按修改时间排序显示文件或者目录(时间由近及远排序)

  -r 与其他参数一起使用,使之反向排序

  --color=auto 让输出的内容按照类别显示颜色(grep中也有该参数)

part3:Linux索引节点inode

  1.inode的简介

    文件存储在硬盘上,硬盘的最小存储单位叫做"扇区"(sector).每个扇区存储512字节(相当于0.5kb)。

    操作系统读取硬盘的时候不会一个一个扇区的读取,这样效率太低,而是一次性读取多个扇区,即一次性读取一个“块”(block)。这种由多个扇区组成的“块”,是文件存

  储的最小单位。“块”的大小,最常见的是“4KB”,即连续的八个扇区(sector)组成一个block。

    文件数据都存储在“块”中,那么显然,我们必须找到一个地方存储文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种存储文件元信息的区域就

  叫做inode,中文译名“索引节点”。

  2.inode的内容

  inode包含文件的元信息,具体来说有以下内容:

  *文件的字节数

  *文件拥有者的User ID

  *文件的Group ID

  *文件的读写执行权限

  *文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,atime指文件上一次打开的时间。

  *链接数,即有多少文件名指向这个inode

  *文件数据block的位置

  可以用stat命令,查看某个文件的inode的信息:

   [root@izr**** /]# stat bin 

  总之,除了文件名以外的所有文件信息,都存放在inode之中。

  3.inode的大小

    inode也会消耗硬盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域,一个是数据区,存放文件数据;另一个是inode区(inode table),存放inode所

  包含的信息。

    每个inode节点的大小,一般是128字节或256字节。inode节点的总数,在格式化时就给定,一般是每1KB或2KB就设置一个inode。

本文由新濠国际登录平台发布于新闻动态,转载请注明出处:新濠国际登录平台首先检查iptables服务的状态,查

关键词: