9_1 Linux 网络管理

2024-06-11 15:04
文章标签 linux 网络管理

本文主要是介绍9_1 Linux 网络管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

9_1 Linux 网络管理

文章目录

  • 9_1 Linux 网络管理
    • @[toc]
    • 1. 构建yum仓库
    • 2. 配置主机名
    • 3. 配置网络参数之IP地址与子网掩码、网关地址
      • 3.1 修改网卡命名规则(eth0,eth1,eth2)
      • 3.2 配置地址
        • 3.2.1 nmcli
        • 3.2.2 配置文件修改IP地址、子网掩码、网关地址
    • 4. 远程管理(Linux 与 linux)
    • 5. 配置网络参数之DNS服务器地址
    • 6. 日志管理
    • 7. 登录用户查看
    • 8. Linux内核定义的事件紧急程度
    • 9. ip 命令
    • 10. 系统安全保护
    • 11. 构建基础服务
      • 11.1 构建Web服务
      • 11.2 构建FTP服务
    • 12. 防火墙策略
      • 12.1 防火墙默认区域的修改
      • 12.2 防火墙public区域添加规则
      • 12.3 防火墙public区域添加规则(永久)
      • 12.4 防火墙单独拒绝PC2所有的访问
      • 12.5 卸载防火墙软件
    • 13. 服务管理

1. 构建yum仓库


  1. 将光驱挂载到自建文件夹下
[root@localhost ~]# mkdir     /mydvd
[root@localhost ~]# mount   /dev/cdrom    /mydvd [root@localhost ~]# ls   /mydvd

  1. 手写客户配置文件
[root@localhost ~]# rm  -rf   /etc/yum.repos.d/*
[root@localhost ~]# vim   /etc/yum.repos.d/mydvd.repo
[centos]
name=haha
baseurl=file:///mydvd
enabled=1
gpgcheck=0
[root@localhost ~]# yum repolist
[root@localhost ~]# yum  -y    install   dhcp  

  1. 开机自动挂载
]# blkid  /dev/cdrom   #查看 光驱设备文件系统类型
]# vim   /etc/fstab   #添加一行配置
/dev/cdrom   /mydvd   iso9660   defaults   0  0
]# umount   /mydvd    
]# mount  -a     #进行检测
]# ls   /mydvd
]# yum -y install   bind   #测试安装软件包

  1. 当配置的主机作为样板机要克隆时,要修改/etc/fstab下的UUID
* UUID是机器的唯一标识[root@localhost ~]# df  -h  /boot  #查看设备挂载情况
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda1      1014M  172M  843M   17% /boot
[root@localhost ~]# blkid  /dev/sda1   
/dev/sda1: UUID="8e57ee09-0d60-4da9-87a0-83bb4a62587d" TYPE="xfs"
[root@localhost ~]# vim    /etc/fstab    #vmware虚拟机
/dev/sda1    /boot        xfs     defaults        0 0
[root@localhost ~]# vim   /etc/fstab    #KVM虚拟机
/dev/vda1   /boot       xfs     defaults        0 0
[root@localhost ~]# reboot    #重启系统
[root@localhost ~]# yum  repolist   #检测yum仓库

  1. yum常见错误:清空/var/run/yum.pid文件内容
[root@localhost ~]# yum  repolist 
已加载插件:fastestmirror, langpacks
/var/run/yum.pid 已被锁定,PID 为 2446 的另一个程序正在运行。
Another app is currently holding the yum lock; waiting for it to exit...另一个应用程序是:PackageKit内存: 33 M RSS (378 MB VSZ)已启动: Fri May 13 09:37:12 2022 - 00:07之前状态  :睡眠中,进程ID:2446
Loading mirror speeds from cached hostfile
源标识                   源名称                   状态
centos                   linux                    10,072
repolist: 10,072
[root@localhost ~]# > /var/run/yum.pid   #清空文件内容
[root@localhost ~]# yum clean all   #清空yum缓存
[root@localhost ~]# yum repolist    #列出仓库信息

2. 配置主机名

  • 永久设置主机名
    • 方法一:敲命令hostnamectl set-hostname xxxxxxx
    • 方法二:vim /etc/hostname
    • 查看主机名:终端输入hostname

3. 配置网络参数之IP地址与子网掩码、网关地址

3.1 修改网卡命名规则(eth0,eth1,eth2)

]# ifconfig   |    head    -2
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500ether 00:0c:29:8a:72:4f  txqueuelen 1000  (Ethernet)]# vim   /etc/default/grub      #内核引导文件
……..此处省略一万字
GRUB_CMDLINE_LINUX="…….. quiet   net.ifnames=0  biosdevname=0"
……..此处省略一万字                            
]# grub2-mkconfig  -o  /boot/grub2/grub.cfg  #重新生成网卡命名的规则
]# reboot      #重启系统
]# ifconfig   |   head   -2
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.81.132  netmask 255.255.255.0  broadcast 192.168.81.255

3.2 配置地址

三种方式配置地址:1.nmtui;2.nmcli;3.修改配置文件

3.2.1 nmcli
1. nmcli命令的网卡命名,删除错误网卡命名[root@server ~]# nmcli  connection   show     #查看[root@server ~]# nmcli  connection   delete   ens33[root@server ~]# nmcli  connection   show[root@server ~]# nmcli  connection   show[root@server ~]# nmcli  connection  delete  有线连接\ 1 [root@server ~]# nmcli  connection   show2. nmcli命令的网卡命名,添加新的网络命名[root@server ~]# nmcli connection  add  type  ethernet      ifname  eth0    con-name   eth0解析: nmcli connection 添加   类型   以太网设备网卡设备名为eth0    nmcli命令的命名为eth0[root@server ~]# nmcli   connection   show[root@server ~]# cat   /etc/sysconfig/network-scripts/ifcfg-eth0    #简单查看生成的网卡配置文件内容3. 利用nmcli修改IP地址、子网掩码、网关地址[root@server ~]# nmcli connection modify  eth0    ipv4.method    manual                          ipv4.addresses   192.168.88.77/24                ipv4.gateway   192.168.88.200               connection.autoconnect    yes命令解析:[root@server ~]# nmcli connection   修改   外号   ipv4.方法    手工配置                          ipv4.地址   192.168.88.77/24                ipv4.网关   192.168.88.200               每次开机自动启用以上所有参数[root@server ~]# nmcli connection up eth0     #激活[root@server ~]# ifconfig   |   head   -2[root@server ~]# route   -n        #查看网关地址信息
3.2.2 配置文件修改IP地址、子网掩码、网关地址
]# vim   /etc/sysconfig/network-scripts/ifcfg-eth0
.....此处省略一万字......
IPADDR=192.168.88.240
PREFIX=24
GATEWAY=192.168.88.222
]# ifdown  eth0          #停用设备(名字为网卡实际名字)
]# ifup  eth0              #启用设备(名字为网卡实际名字)
]# ifconfig  |  head  -2

4. 远程管理(Linux 与 linux)

SSH协议

  1. 软件包安装
[root@server /]# rpm  -qa   |   grep   openssh
openssh-7.4p1-16.el7.x86_64
openssh-server-7.4p1-16.el7.x86_64
openssh-clients-7.4p1-16.el7.x86_64[root@server ~]#ls /usr/sbin/sshd#提供远程管理功能的程序
/usr/sbin/sshd
[root@server ~]# pgrep -l  sshd   #搜索sshd进程
1181 sshd
  1. 远程登录工具ssh
[root@server /]#  ssh    root@192.168.88.2
………necting (yes/no)? yes
root@192.168.88.2's password:        #输入密码
[root@pc2 ~]# touch   /root/hahaxixi.txt
[root@pc2 ~]# exit
登出
Connection to 192.168.88.2 closed.
[root@server /]# cat   /root/.ssh/known_hosts  #记录曾经远程管理的机器
  1. 数据传递工具scp=ssh+cp
* scp  [-r]  用户名@服务器:路径      本地路径
* scp  [-r]  本地路径    用户名@服务器:路径虚拟机A:                 
]# scp    /etc/passwd       root@192.168.88.2:/root
]# scp  -r    /home       root@192.168.88.2:/root
]# scp    root@192.168.88.2:/etc/shadow        /mnt
虚拟机B:                      
]# ls    /root
  1. 实现ssh远程管理无密码验证
虚拟机A:
1.生成公钥(锁)与私钥(钥匙)进行验证 
[root@server ~]# ssh-keygen      #一路回车
…….save the key (/root/.ssh/id_rsa):   #回车 设置默认保存位置
……..assphrase):     #回车 设置密码为空
…….. again:     #回车 设置密码为空
[root@server ~]# ls   /root/.ssh/
id_rsa(私钥)    id_rsa.pub(公钥)     known_hosts
2.将公钥(锁)传递给虚拟机B 
[root@server ~]# ssh-copy-id     root@192.168.88.2 
[root@server ~]# ssh     root@192.168.88.2     #测试无密码
[root@pc2 ~]# exit
登出
Connection to 192.168.88.2 closed.
[root@server ~]#
虚拟机B          
[root@pc2 ~]# ls    /root/.ssh/
authorized_keys(别的机器传递过来的公钥)    known_hosts
[root@pc2 ~]#

5. 配置网络参数之DNS服务器地址

  • DNS服务器:负责域名解析的服务器,将域名解析为IP地址
  • /etc/resolv.conf:最终有效配置文件
]# echo nameserver   99.100.200.38  > /etc/resolv.conf
]# cat   /etc/resolv.conf
nameserver    99.100.200.38]#  >  /etc/resolv.conf    #清空此文件内容,为构建Web服务器做准备
]#  cat   /etc/resolv.conf

6. 日志管理

  1. 日志的功能

    • 系统和程序的“日记本”
      • 记录系统、程序运行中发生的各种事件
      • 通过查看日志,了解及排除故障
      • 信息安全控制的“依据”
  2. 日志的管理

    • 由系统服务rsyslog统一记录/管理
      • 日志消息采用文本格式
      • 主要记录事件发生的时间、主机、进程、内容
  3. 常见的日志问价

日志文件主要用途
/var/log/messages记录内核消息、各种服务的公共消息
/var/log/dmesg记录系统启动过程的各种消息
/var/log/cron记录与cron计划任务相关的消息
/var/log/maillog记录邮件收发相关的消息
/var/log/secure记录与访问限制相关的安全消息

7. 登录用户查看

  • users、who、w 命令
    • 查看已登录的用户信息,详细度不同
  • last、lastb 命令
    • 查看最近登录成功/失败的用户信息

8. Linux内核定义的事件紧急程度

  • 分为 0~7 共8种优先级别
  • 其数值越小,表示对应事件越紧急/重要
0 EMERG(紧急)会导致主机系统不可用的情况
1 ALERT(警告)必须马上采取措施解决的问题
2 CRIT(严重)比较严重的情况
3 ERR(错误)运行出现错误
4 WARNING(提醒)可能会影响系统功能的事件
5 NOTICE(注意)不会影响系统但值得注意
6 INFO(信息)一般信息
7 DEBUG(调试)程序或系统调试信息等

9. ip 命令

  1. 查看ip地址

    • ip address show
    • ip a s
  2. 临时添加ip地址

    • ip address add 192.168.10.1/24 dev eth0
    • ip a a 192.168.20.1/24 dev eth0
  3. 删除临时ip地址

    • ip address del 192.168.10.1/24 dev eth0
  4. ping测网络连接

    • -c 包个数
    • ping -c 2 192.168.88.240

10. 系统安全保护

  1. SELinux的运行模式

    • enforcing(强制)
    • permissive(宽松)
    • disabled(彻底禁用)
    • 任何模式变成disabled模式,都要经历重启系统
  2. 切换运行模式

    • 获取状态:getenforce
    • 临时切换:setenforce 1或0
      • [root@server /]# setenforce 0 #修改当前运行模式
    • 固定配置:/etc/selinux/config 文件
      • [root@server /]# vim /etc/selinux/config
        SELINUX=permissive #需改配置

11. 构建基础服务

11.1 构建Web服务

  • Web服务:提供一个页面内容的服务
  • 提供Web服务的软件:httpd、Nginx、tomcat
  • http协议:超文本传输协议
1.安装软件包          [root@server ~]# yum  -y  install  httpd
2.运行提供Web服务程序]# /usr/sbin/httpd         #绝对路径运行程序]# pgrep  -l  httpd        #查看进程信息
4.书写一个页面文件         ]# vim   /var/www/html/index.htmlhaha阳光明媚
5.本机浏览器访问测试        ]# curl   192.168.88.240haha阳光明媚

11.2 构建FTP服务

  • FTP:文本传输协议
  • 实现FTP服务功能的软件:vsftpd
  • 默认共享数据的主目录:/var/ftp/
1.安装软件包       [root@server ~]# yum  -y  install  vsftpd
2.运行程序[root@server ~]# /usr/sbin/vsftpd[root@server ~]# pgrep  -l  vsftpd #查看进程信息[root@server ~]# touch  /var/ftp/dcc.txt
3.本机访问测试[root@server ~]# curl  ftp://192.168.88.240-rw-r--r--    1 0   0    0 May 16 06:42 dcc.txtdrwxr-xr-x    2 0    0   6 Oct 13  2020 pub

12. 防火墙策略

  • 作用:隔离,严格过滤入站,放行出站
  • 系统服务:firewalld ---->iptables(底层防火墙)
  • 管理工具:firewall-cmd、firewall-config
根据所在的网络场所区分,预设区域:public:仅允许访问本机的ssh、dhcp、ping服务trusted:允许任何访问block:拒绝任何来访请求,明确拒绝客户端drop:丢弃任何来访的数据包,不给任何回应
  • 防火墙判定原则:
    1. 查看客户端请求中来源IP地址,查看自己所有区域中规则,那个区域中有该源IP地址规则,则进入该区域
    2. 进入默认区域(默认情况下为public)

12.1 防火墙默认区域的修改

虚拟机A                           
]# firewall-cmd    --get-default-zone   #查看默认区域
虚拟机B
]# curl      192.168.88.240    #失败
]# curl      ftp://192.168.88.240      #失败
]# ping    -c2    192.168.88.240        #成功虚拟机A:修改默认区域
]# firewall-cmd   --set-default-zone=trusted
虚拟机B
]# curl      192.168.88.240    #成功
]# curl      ftp://192.168.88.240    #成功

12.2 防火墙public区域添加规则

虚拟机A:添加允许的协议
]# firewall-cmd    --set-default-zone=public
]# firewall-cmd  --zone=public  --add-service=http   
]# firewall-cmd   --zone=public   --list-all
虚拟机B
]# curl   http://192.168.88.240    #成功
]# curl   ftp://192.168.88.240     #失败虚拟机A:添加允许的协议
]# firewall-cmd    --zone=public  --add-service=ftp
]# firewall-cmd   --zone=public  --list-all
虚拟机B
]# curl   http://192.168.88.240    #成功
]# curl   ftp://192.168.88.240    #成功

12.3 防火墙public区域添加规则(永久)

-永久(--permanent  破门能它) 
]# firewall-cmd   --reload    #加载防火墙永久策略
]# firewall-cmd   --zone=public    --list-all]# firewall-cmd    --permanent                                    --zone=public   --add-service=http   #永久添加http协议
]# firewall-cmd   --permanent                                    --zone=public     --add-service=ftp    #永久添加ftp协议]# firewall-cmd   --reload    #加载防火墙永久策略
]# firewall-cmd   --zone=public   --list-all

12.4 防火墙单独拒绝PC2所有的访问

虚拟机A:   
[root@server ~]# firewall-cmd  --zone=block            --add-source=192.168.88.2虚拟机A:删除策略
[root@server ~]# firewall-cmd --zone=block            --remove-source=192.168.88.2

12.5 卸载防火墙软件

[root@server ~]# yum  -y remove  firewalld

13. 服务管理

  • 方法一:手动进行运行

    • 运行: /usr/sbin/httpd
    • 停止: killall httpd
  • 方法二:采用systemd方式运行

systemctl  restart      服务名    #重起服务   
systemctl   start       服务名      #开启服务 
systemctl   stop        服务名      #停止服务
systemctl   status      服务名      #查看服务当前的状态
systemctl  enable       服务名     #设置服务开机自启动
systemctl   disable     服务名      #设置服务禁止开机自启动
systemctl   is-enabled  服务名    #查看服务是否开机自启

这篇关于9_1 Linux 网络管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1051505

相关文章

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

Linux_kernel驱动开发11

一、改回nfs方式挂载根文件系统         在产品将要上线之前,需要制作不同类型格式的根文件系统         在产品研发阶段,我们还是需要使用nfs的方式挂载根文件系统         优点:可以直接在上位机中修改文件系统内容,延长EMMC的寿命         【1】重启上位机nfs服务         sudo service nfs-kernel-server resta

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

Linux服务器Java启动脚本

Linux服务器Java启动脚本 1、初版2、优化版本3、常用脚本仓库 本文章介绍了如何在Linux服务器上执行Java并启动jar包, 通常我们会使用nohup直接启动,但是还是需要手动停止然后再次启动, 那如何更优雅的在服务器上启动jar包呢,让我们一起探讨一下吧。 1、初版 第一个版本是常用的做法,直接使用nohup后台启动jar包, 并将日志输出到当前文件夹n

[Linux]:进程(下)

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:Linux学习 贝蒂的主页:Betty’s blog 1. 进程终止 1.1 进程退出的场景 进程退出只有以下三种情况: 代码运行完毕,结果正确。代码运行完毕,结果不正确。代码异常终止(进程崩溃)。 1.2 进程退出码 在编程中,我们通常认为main函数是代码的入口,但实际上它只是用户级

【Linux】应用层http协议

一、HTTP协议 1.1 简要介绍一下HTTP        我们在网络的应用层中可以自己定义协议,但是,已经有大佬定义了一些现成的,非常好用的应用层协议,供我们直接使用,HTTP(超文本传输协议)就是其中之一。        在互联网世界中,HTTP(超文本传输协议)是一个至关重要的协议,他定义了客户端(如浏览器)与服务器之间如何进行通信,以交换或者传输超文本(比如HTML文档)。

如何编写Linux PCIe设备驱动器 之二

如何编写Linux PCIe设备驱动器 之二 功能(capability)集功能(capability)APIs通过pci_bus_read_config完成功能存取功能APIs参数pos常量值PCI功能结构 PCI功能IDMSI功能电源功率管理功能 功能(capability)集 功能(capability)APIs int pcie_capability_read_wo