欢迎光临散文网 会员登陆 & 注册

linux网络管理和安全

2023-03-11 22:51 作者:芜湖小量化  | 我要投稿

ifconfig 命令   (早期的网络管理工具)
ifconfig     使用ifconfig命令查看网卡状态
可选参数
-a  列出当前系统所有可用的网络接口
up  启用指定的网络接口
down  禁用指定的网络接口
netmask  指定当前ip网络的子网掩码
ip地址  修改指定网络接口的ip地址

sudo ifconfig ens33 down  禁用ens33接口


ip命令  (较新的网络管理工具)
语法  ip[选项]object[子命令]

-h  输出可读的信息
-4  指定协议为ipv4
-6  指定协议为ipv6
-s  显示详细信息

object是ip命令操作的对象  可以操作系统中不同的设备
常见的对象有:
address:ip地址 ipv4/ipv6
l2tp: l2tp 隧道协议
link: 网络设备
maddress: 多播地址
route: 路由表
rule: 路由策略
tunnel: 隧道

ip -s link list     使用ip命令查看网络接口详细信息


route命令(显示和操作路由表)
-A: 指定协议簇
-n: 显示数字形式的IP地址
-e: 使用netstat格式显示路由表
-net: 指定的目标是一个网络
-host: 指定的目标是一台主机
del: 删除路由记录
add: 添加路由记录
gw: 设置默认网关
dev: 路由记录对应的网络接口
netmask: 制定目标网络的子网掩码

route -n    查看路由表信息

返回信息:--------
内核 IP 路由表
目标            网关            子网掩码        标志  跃点   引用  使用 接口
0.0.0.0         *****                8 0.0.0.0         UG    600    0        0 wlp2s0
********            0.0.0.0         255.255.0.0     U     1000   0        0 wlp2s0

目标: 目标网络或者主机的ip地址
网关: 网关信息
子网掩码: 目标网络子网掩码
标志: 标志位 如果该条路由处于启动状态,则含有U 如果该条路由通向网关 则含有G 还有可能会有其他标志
跃点:当前位置距离目标主机或者网络的距离 用跳数表示
引用:0
使用:该路由被使用的次数
接口: 该路由的数据包将要发送到的网络接口

# 套接字是一种通信机制(通信的两方的一种约定),socket屏蔽了各个协议的通信细节,提供了tcp/ip协议的抽象,
# 对外提供了一套接口,同过这个接口就可以统一、方便的使用tcp/ip协议的功能。这使得程序员无需关注协议本身,
# 直接使用socket提供的接口来进行互联的不同主机间的进程的通信。

netstat命令
-a:显示所有处于活动状态的套接字
-A:显示指定协议簇的网络连接信息
-c:持续列出网络状态信息 刷新时间1s
-e:显示详细信息
-i:列出所有网络接口
-l:列出处于监听状态的套接字
-n:直接显示ip 不转化为域名
-p:显示使用套接字的进程id和程序名称
-r:显示路由表信息
-s:显示每个协议的统计协议
-t:显示tcp/ip的连接信息
-u:显示udp的连接信息

netstat -a   查看所有端口的状态

nslookup命令
nslookup用来查看域名的信息
nslookup www.bilibili.com     查看bilibili的域名信息

返回信息----------------------
Non-authoritative answer:
www.bilibili.com   canonical name = a.w.bilicdn1.com.
Name:  a.w.bilicdn1.com
Address: 183.232.239.20
Name:  a.w.bilicdn1.com
Address: 183.232.239.19
Name:  a.w.bilicdn1.com
Address: 183.232.239.18
Name:  a.w.bilicdn1.com
Address: 120.240.75.131
Name:  a.w.bilicdn1.com
Address: 183.232.239.22
Name:  a.w.bilicdn1.com

# 通过上面DNS域名解析,解析到www.baidu.com 的域名和地址,
# 会发现返回回来的是a.w.bilicdn1.com 一般大型网站,因为客户访问量比较大,
# 对网站访问速度要求比较高,都会使用CDN网站进行内容的分发。

七层模型
应用层:网络服务与用户的接口-----------|
表示层:数据的表示、安全、压缩----------|-------应用层(应用程序)
会话层:会话的建立、管理、断开----------|
传输层:通过协议端口号定义对方上层服务,流量控制、差错校验----|-------操作系统
网络层:通过IP地址进行逻辑寻址--------------------------|
数据链路层:通过物理地址(MAC)进行寻址,差错校验-------|
物理层:通过物理信号传输比特流,维护物理连接-----------|------设备驱动程序和网络接口

应用层 ------计算机
传输层-------计算机  防火墙
网络层-------路由器
数据链路层----交换机
物理层-------网卡网线

ping命令 (向目标主机发送一个ICMP包,并接受响应来测试服务器的连通性)
ping www.baidu.com      测试和百度的连通性,会不停输出(ctrl+c打断)


ubuntu上配置iptables防火墙 ufw
常用辅助命令如下
enable:开启防火墙
disable:关闭防火墙
reload:重新加载防火墙
default:修改默认策略
logging:日志管理
reset:恢复防火墙到初始状态
status:显示防火墙状态
show:显示防火墙信息
allow:添加允许通信的规则
deny:添加禁止通信的规则
limit:添加限制规则
delete:删除指定的规则
insert:在指定的位置插入规则
app list:列出使用防火墙的应用系统
app info: 查看应用信息系统
app update: 更新应用系统信息
app default:指定应用系统默认的规则
默认的状态下,ufw处于禁用状态

sudo ufw status    查看ufw当前状态
sudo ufw enable     启动防火墙
sudo ufw allow 8080    开放8080端口
sudo ufw delete allow 8080     删除开放的8080规则

ssh服务
ssh是一种通用的,功能强大的,基于软件的网络安全解决方案
计算机发送数据时,ssh会自动加密,到达目的地时,会自动解密,另外ssh为其传输数据压缩 可以加快传输的速度

systemctl status ssh    查看ssh服务

返回信息----------------------
# ssh. service - OpenBSD Secure Shell server
#      Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: e>
#      Active: active (running) since Sat 2023-03-11 22:04:43 CST; 2min 28s ago
#        Docs: man:sshd(8)
#              man:sshd_config(5)
#    Main PID: 7715 (sshd)
#       Tasks: 1 (limit: 37707)
#      Memory: 1.7M
#         CPU: 9ms
#      CGroup: /system.slice/ssh.service
#              └─7715 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups"

如果打开ufw,需要使用ufw命令添加允许ssh端口通信的原则
sudo ufw allow ssh    使用ufw命令添加允许ssh端口通信的原则

使用putty在windows上登陆ssh服务
输入 ip地址和port  就可以和远程主机连接  连接成功登陆就可以执行命令

FTP是基于互联网的文件双向传输协议
FTP实现需要客户端和服务端两个部分 Standard(主动)模式和passive(被动)模式

Standard(主动)模式
需要主动和服务器的21端口建立连接 用来发送命令 客户端在接受数据的同时在这个通道发送port命令
port命令包含客户端接受数据所用的端口,一般是20端口
在传输数据的时候 服务器端通过自身的20端口连接至客户端指定端口发送数据

passive(被动)模式
和Standard(主动)模式类似,但是建立连接后需要发送pasv命令,服务器受到命令之后
打开一个临时端口并且通知客户端在这个端口上传送的请求 客户端连接FTP,然后FTP服务器通过这个端口传送数据

vsftpd是一个在unix类操作系统上运行的服务器,以一般身份用户启动服务
apparmor 采用主动的方式对可能出现的危险进行防御 在linux内核中集成
数字证书:验证通信实体的身份数字证书由CA机构发行 采用公钥体制,即利用一对互相匹配的密钥进行加密,解密
在公开密钥密码体制中,常用RSA体制 一般很难推导出解密密钥


linux网络管理和安全的评论 (共 条)

分享到微博请遵守国家法律