博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux网络相关知识
阅读量:6067 次
发布时间:2019-06-20

本文共 6837 字,大约阅读时间需要 22 分钟。

hot3.png

10月25日任务

10.11 Linux网络相关

10.12 firewalld和netfilter

10.13 netfilter5表5链介绍

10.14 iptables语法

 

Linux网络相关命令

查看网卡信息:ifconfig

安装:yum install -y net-tools

[root@centos7 ~]# ifconfig ens33: flags=4163
mtu 1500 inet 192.168.65.130 netmask 255.255.255.0 broadcast 192.168.65.255 ...lo: flags=73
mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 ...

手动启动/关闭特定网卡

ifup/ifdown ens33

设置虚拟网卡

  1. 拷贝网卡文件为新文件
# 这里在命令行模式下要转义:即\:[root@centos7 network-scripts]# cp ifcfg-ens33 ifcfg-ens33\:1
  1. 修改新的网卡文件
[root@centos7 network-scripts]# vim ifcfg-ens33:1 # 其中只要修改IPADDR、DEVICE和NAME三列即可# 这里要删除UUID(唯一性),可以将DNS,GATEWAY行也删掉(可选)
  1. 重新启动ens33网卡,附带的新建的虚拟网卡也会重启生效
[root@centos7 network-scripts]# ifdown ens33 && ifup ens33成功断开设备 'ens33'。连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/3)
  1. 使用ifconfig验证
[root@centos7 network-scripts]# ifconfigens33: flags=4163
mtu 1500 inet 192.168.65.133 netmask 255.255.255.0 broadcast 192.168.65.255 ...ens33:1: flags=4163
mtu 1500 inet 192.168.65.143 netmask 255.255.255.0 broadcast 192.168.65.255 ether 00:0c:29:94:84:1f txqueuelen 1000 (Ethernet)lo: flags=73
mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 ...

在物理机测试ping可通,证明配置成功

C:\Users\18367>ping 192.168.65.143正在 Ping 192.168.65.143 具有 32 字节的数据:来自 192.168.65.143 的回复: 字节=32 时间<1ms TTL=64来自 192.168.65.143 的回复: 字节=32 时间<1ms TTL=64来自 192.168.65.143 的回复: 字节=32 时间<1ms TTL=64来自 192.168.65.143 的回复: 字节=32 时间<1ms TTL=64192.168.65.143 的 Ping 统计信息:    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),往返行程的估计时间(以毫秒为单位):    最短 = 0ms,最长 = 0ms,平均 = 0ms

查看网卡是否连接

mii-tool | ethtool

1. 可以使用mii-tool命令查看[root@centos7 network-scripts]# mii-tool ens33ens33: negotiated 1000baseT-FD flow-control, link ok2. 也可以使用ethtool命令查看[root@centos7 network-scripts]# ethtool ens33 | tail -n 1	Link detected: yes

更改主机名

下列命令只支持centos7.x

hostnamectl set-hostname HOST

上列的命令在当前终端下并不会立即生效,需要重启!

在/etc/hostname文件中可以查看系统主机的hostname。

主机host的配置文件为/etc/hosts,修改其内容只在本机生效!

若存在多个ip指向同一个域名,只有最后一行的ip生效!即后面设置的同域名的ip将覆盖前面的ip!

此外同一个ip可以指向多个域名,在hosts文件内可以写在一行内即

192.168.1.110 www.123.com www.qq.com www.baidu.com

修改hosts文件,指定2个ip指向同一个域名[root@centos7 network-scripts]# vim /etc/hosts127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4::1         localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.1.25 www.baidu.com192.168.1.35 www.baidu.com~

上述配置之后只有后一个ip192.168.1.35生效;同样的指向同一个域名的多个ip,只有最后一个ip生效

[root@centos7 network-scripts]# ping www.baidu.comPING www.a.shifen.com (192.168.1.35) 56(84) bytes of data.64 bytes from 192.168.1.35 (192.168.1.35): icmp_seq=1 ttl=128 time=29.6 ms....

/etc/resolv.conf文件存放系统的DNS,该DNS由网卡的配置文件中的DNS列定义产生。

netfilter(6.x) / firewalld(7.x)

selinux的关闭

配置时必须关闭selinux,否则防火墙无法正常运行

  • 临时关闭: setenforce 0
  • 永久关闭: 修改/etc/selinux/config文件 -> SELINUX=disabled
  • 查看:getenforce

启动iptables服务

  1. 关闭7.x版本默认的firewalld服务
disable禁止开机启动,stop关闭服务[root@centos7 network-scripts]# systemctl disable firewalldRemoved symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.[root@centos7 network-scripts]# systemctl stop firewalld
  1. 安装iptables服务
[root@centos7 network-scripts]# yum install -y iptables-services
  1. 设置开机启动iptables,并立即启动iptables
[root@centos7 network-scripts]# systemctl enable iptablesCreated symlink from /etc/systemd/system/basic.target.wants/iptables.service to /usr/lib/systemd/system/iptables.service.[root@centos7 network-scripts]# systemctl start iptables
  1. 查看当前规则
[root@centos7 network-scripts]# iptables -nvLChain INPUT (policy ACCEPT 0 packets, 0 bytes) pkts bytes target     prot opt in     out     source               destination            28  1848 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0               0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0               ...

netfilter 5表5链

!centos6中只有4个表(没有security);7.x版本有5个表(及其使用的链),如下:

  • filter(多用于过滤包)
    • INPUT
    • FORWARD
    • OUTPUT
  • nat(用于网络地址转换)
    • PREROUTING
    • OUTPUT
    • POSTROUTING
  • mangle(标记数据包)
  • raw(不追踪某些数据包)
  • security(用于MAC的网络规则)

相关的有5个链

  • PREROUTING
  • INPUT
  • OUTPUT
  • FORWARD
  • POSTROUTING

数据经过本机 PREROUTING -> FORWARD -> POSTROUTING

数据不经过本机 PREROUTING -> INPUT -> OUTPUT -> POSTROUTING

工作中主要使用的是filter和nat表,后3个表使用不多

iptables详解 

iptables语法

iptables默认规则配置文件 /etc/sysconfig/iptables

  • 查看规则: iptables -nvL
  • 清空规则: iptables -F
    • 执行后默认的规则表并不会清空,需要执行service iptables save存操作
  • 指定表(默认为filter):iptables -t nat
  • 清空计数器(清空规则记录的数据量):iptables -Z

命令参数

  • -A 在所选链的最后添加一或多条规则
  • -I 在所选链的第一个规则前插入规则;加规则序号,在指定规则前插入
  • -D 删除所选链中的规则(也可以是规则序号)
  • -R 替换所选链中的规则
  • -L 列出所选链中的所有规则
  • -S 打印所选链的所有规则,默认打印所有链的规则
  • -F 清空所选链的规则
  • -p 指定规则的协议tcp/udp...
  • -s 指定源地址
  • -d 指定目标地址
  • -j 指定规则的目标 DROP/REJECT/ACCEPT
  • -i 指定网卡
  • --sport/dport 指定源/目的端口

在INPUT链的最后追加一条规则

[root@localhost network-scripts]# iptables -A INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -j DROP

不指定目标ip,默认代表所有

# 在首行插入规则[root@localhost network-scripts]# iptables -I INPUT -s 1.1.1.1 -j DROP# 在末行添加规则[root@localhost network-scripts]# iptables -A INPUT -s 1.1.1.1 -j DROP# 删除某条规则(对应添加时的规则)[root@localhost network-scripts]# iptables -D INPUT -s 1.1.1.1 -j DROP

设置关于特定的网卡的规则

# -i指定网卡[root@localhost network-scripts]# iptables -I INPUT -s 192.168.1.0/24 -i ens33 -j ACCEPT

根据规则编号删除规则

[root@localhost network-scripts]# iptables -nvL --line-numberChain INPUT (policy ACCEPT 0 packets, 0 bytes)num   pkts bytes target     prot opt in     out     source               destination         1      184 13824 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED2        0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           3        0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           4        0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:225        6   468 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibitedChain FORWARD (policy ACCEPT 0 packets, 0 bytes)num   pkts bytes target     prot opt in     out     source               destination         1        0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibitedChain OUTPUT (policy ACCEPT 141 packets, 10976 bytes)num   pkts bytes target     prot opt in     out     source               destination         # 删除第一条[root@localhost network-scripts]# iptables -D INPUT 1

设置指定链的默认策略

# 默认INPUT的策略为ACCEPT[root@localhost network-scripts]# iptables -P INPUT DROP# 这里需要注意的是,一旦修改默认策略为DROP,你的ssh通信的数据包将被丢弃,无法远程连接,只能连物理机修改!所以最好不要乱修改,保持默认即可!

转载于:https://my.oschina.net/u/3964535/blog/2252204

你可能感兴趣的文章
Clone探讨 深度克隆-浅克隆-运算符赋值
查看>>
Centos7 docker push 推送失败
查看>>
nfs在客户端创建文件提示:touch: cannot touch `test': Permissi
查看>>
一个比较好用的轻量级时间选择控件 ----- JQUERY特效模板
查看>>
string ids=aduuids.Aggregate("", (m, n) => m + n+",").TrimEnd(',');
查看>>
MySQL优化--OS和硬件
查看>>
DirectX D3D texture 的Level,解释。。。。
查看>>
HTML5入门必知
查看>>
jQuery3动画+创建元素
查看>>
priority_queue 优先队列
查看>>
Redis
查看>>
tomcat日志出现乱码
查看>>
Poj1218--THE DRUNK JAILER
查看>>
杭电2063--过山车(二分匹配)
查看>>
杭电2027--统计元音
查看>>
Linux线程退出、资源回收、资源清理的方法
查看>>
crontab的定时任务实例
查看>>
Oracle / PLSQL函数 - NUMTODSINTERVAL和NUMTOYMINTERVAL
查看>>
Unity在场景切换之间清理下内存
查看>>
算法研究:插入类排序(简单插入,折半插入,希尔排序)
查看>>