Linux6-配置网络、源码包的编译和安装

配置 linux 网络

配置主机名

修改/etc/hostname 配置文件,永久配置主机名

[root@localhost ~]# vim /etc/hostname
svr7.tedu.cn
[root@localhost ~]# cat /etc/hostname
svr7.tedu.cn
[root@localhost ~]# reboot #重启生效

命令行永久修改主机名

[root@localhost ~]# echo svr7.tedu.cn > /etc/hostname #需要重启生效
[root@localhost ~]# hostname svr7.tedu.cn #可以设置临时主机名,当前生效

配置 IP

修改网卡名

[root@svr7 ~]# vim /etc/default/grub
…
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet net.ifnames=0 biosdevname=0" #添加 net.ifnames=0 biosdevname=0
…
[root@svr7 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg #重新生成引导文件,使配置文件生效
[root@svr7 ~]# reboot #重启
验证,网卡名是否发生变化
[root@svr7 ~]# ifconfig #有 eth0 网卡

查看网络连接

使用show指令
nmcli connection show
nmcli connection show “连接名”

  • 配置 IP 地址
[root@svr7 ~]# nmcli connection show #查看连接名
[root@svr7 ~]# nmcli connection delete ens33 #删除
[root@svr7 ~]# nmcli connection show
NAME                 UUID                   TYPE  DEVI
virbr0 0ace37a8-f7ad-45d6-9088-00b367999c0b bridge virb
有线连接 1 02cc8558-b41e-3bc4-817b-243ca95c0417 ethernet eth

重新添加网卡

[root@svr7 ~]# nmcli connection delete 有线连接\ 1
[root@svr7 ~]# nmcli connection add type ethernet ifname eth0 con-name eth0 #添加网卡
连接“eth0”(7b47bf24-859e-45f5-ace7-3b9706b61e55) 已成功添加。
[root@svr7 ~]# nmcli connection show
NAME            UUID                        TYPE      DEVICE
eth0  7b47bf24-859e-45f5-ace7-3b9706b61e55  ethernet  eth0

修改网络连接配置

  • 使用modify指令
    nmcli connection modify ‘连接名’ 参数1 值1…

    • 常用参数:
      ipv4.method auto | manual
      ipv4.addresses ‘IP地址/掩码长度’
      ipv4.gateway 网关地址
      connection.autoconnect yes | no
  • 激活/禁用网络连接
    使用up/down指令
    nmcli connection down "连接名”
    nmcli connection up "连接名”

  • 红帽固定IP地址

    #配置IP地址和网关并实现开机自动连接,此处 ip 地址和网关地址要根据自己的虚拟机网络配置来确定
    #(参考后面虚拟机网络类型步骤)
    [root@svr7 ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.10.(5/24) ipv4.gateway 192.168.10.2 connection.autoconnect yes 
    [root@svr7 ~]# nmcli connection up eth0 	#激活 eth0
    [root@svr7 ~]# ifconfig 					#查看配置的 IP
    [root@svr7 ~]# route -n 					#查看网关
    


    Linux6-配置网络、源码包的编译和安装_第1张图片

#这里更改的是配置文件所以要进行以下操作重启网卡
nmcli c reload  
nmcli c up eth0     #nmcli c reload会读取配置文件,但是不会立即生效,接着如果执行nmcli c up X,就会立即生效重启
或执行这两条命令
nmcli d reapply eth0       #更新设备信息,只有在设备处于连接状态,才可以更新设备。更新设备相当于重启连接。
nmcli d connect eth0       #连接设备,如果 ens33 本来就出于连接状态,那此命令会重启 ens160。

这里有很详细的好文章

为本机指定 DNS 服务器

  • 配置文件/etc/resolv.conf
    关键记录:nameserver DNS服务器地址

    [root@server0~]# vim /etc/resolv.conf
    search example.com 				//默认域后缀
    nameserver 172.25.254.254 		//设置DNS服务器地址
    [root@svr7 ~]# vim /etc/resolv.conf
    …
    nameserver 8.8.8.8
    
    • 其中,nameserver 8.8.8.8和nameserver 8.8.4.4表示DNS服务器的IP地址是8.8.8.8和8.8.4.4。这两个地址是Google公共DNS的地址。当你的系统需要解析一个域名时,它会向这些DNS服务器发送请求。因此可以ping baidu.com,而不用ping百度的ip地址。
  • 修改指定主机映射文件

    • vim /etc/hosts
[root@svr7 ~]# vim /etc/hosts
增加:
192.168.10.5 svr7.tedu.cn

Linux6-配置网络、源码包的编译和安装_第2张图片

此时 ping 主机名,可以映射到 IP, 请注意:该文件应该到发起 ping 的主机上修改,而不是目标主机(被 ping 方)。

虚拟网络类型

  • 桥接模式
    Guest.与Host连接到同一个交换机上
    通过桥接物理网卡,相当于直连到Host所在网络
  • 隔离模式
    Guest可访问同一虚拟交换机上的其他Guest
    但无法访问Host所在外部网络

请选择 NAT 模式

打开 Vmware 虚拟机,选择菜单中的“虚拟机”的“设置”
Linux6-配置网络、源码包的编译和安装_第3张图片
再点击编辑,找到虚拟网络编辑器
选择vmnet8 这张网卡,
你的红帽就应该配置到这个 192.168.10.0/24 这个网段,可以配成:192.168.10.5 或者192.168.10.6 以此论推,可以配到 192.168.10.254

Linux6-配置网络、源码包的编译和安装_第4张图片
你的虚拟网关是多少呢,请点击上图中的 NAT 设置查看:
Linux6-配置网络、源码包的编译和安装_第5张图片

远程管理 linux 主机

ssh 简介

ssh 概述

服务器托管在IDC机房或者云端?
最有效率的命令行远程控制?

  • SSH协议,Secure Shell
    为客户机提供安全的Shell环境
    默认端口:TCP 22
  • OpenSSH服务
    服务名称:sshd
    主程序:/usr/sbin/sshd、/usr/bin/ssh
    配置文件:/etc/ssh/sshd_config、 /etc/ssh/ssh config

克隆

克隆一台新的机器
更改 svr1 虚拟机名字
Linux6-配置网络、源码包的编译和安装_第6张图片
选择虚拟机 A,右击 管理—>克隆

克隆 A,选择链接克隆成 B。
Linux6-配置网络、源码包的编译和安装_第7张图片
Linux6-配置网络、源码包的编译和安装_第8张图片
克隆后的 B 的 IP 会跟 A 一摸一样,此时你必须重新修改 B 的 IP 值,否则会 IP 重复引起冲突,
之后使用 root 用户分别登陆 A 和 B 主机,B 主机更改主机名,IP 地址

[root@svr7 ~]# vim /etc/hostname
pc207.tedu.cn
[root@svr7 ~]# hostname pc207.tedu.cn

以下步骤是让 B 自动获取 IP 的过程,此时假设你的网卡名称是 eth0

[root@svr7 ~]# ping 8.8.8.8 #失败
[root@svr7 ~]# nmcli connection modify eth0 ipv4.method auto connection.autoconnect yes #自动获取 IP
[root@svr7 ~]# nmcli connection up eth0
[root@svr7 ~]# route -n
#测试
[root@svr7 ~]# ping 8.8.8.8 #可以通
[root@svr7 ~]# firefox www.baidu.com #可以访问
如果你想手动修改 ip,可以参照以下命令:
[root@svr7 ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.10.7/24 connection.autoconnect yes #配置IP地址和网关并实现开机自动连接
[root@svr7 ~]# nmcli connection up eth0 #激活 eth0

远程登录工具ssh

ssh [选项]… 服务器
ssh [选项]… 用户名@服务器
ssh [选项]… -l 用户名 服务器

  • 指定以对方的用户名登录
[root@svr7~]#ssh [email protected]
[email protected]'s password:
/验证用户口令
[zengye@svr1~]#whoami
zengye
  • 以客户端当前用户名作为登录名
[root@svr7~]#ssh192.168.8.8
[email protected] s password:/验证对方的root▣令
Last login:Fri Aug 30 17:26:45 2014
[root@svr1~]#whoami
root

ssh 命令选项

-p 端口:连接到指定的端口
-X 启用-X 转发,在本机运行对方的图形程序

[root@svr7 ~]# ssh [email protected]
…
Are you sure you want to continue connecting (yes/no)? yes #第一次远程会让输入 yes
[email protected]'s password: #输入密码
Last login: Wed Jul 8 11:24:37 2020
[root@pc207 ~]# firefox #运行 firefox 图形程序,失败
Error: GDK_BACKEND does not match available displays
退出,使用-X 选项登陆,成功
[root@pc207 ~]# exit
[root@svr7 ~]# ssh -X [email protected]
[email protected]'s password:
[root@pc207 ~]# firefox
  • 修改默认端口,pc207 主机操作
[root@pc207 ~]# vim /etc/ssh/sshd_config
Port 8022
[root@pc207 ~]# systemctl restart sshd.service #重启 sshd 服务,systemctl status sshd.service 查看 sshd 服务状态 
切记 selinux 需要是宽松或者禁止状态 setenforce 0
测试:svr7 主机操作,如果测试失败,出现以下问题,请关闭防火墙
[root@svr7 ~]# ssh -p 8022 -X [email protected]
ssh: connect to host 192.168.4.207 port 8022: No route to host

[root@svr7 ~]# systemctl stop firewalld
systemctl disable firewalld
vim /etc/selinux/config
SELINUX=disable 永久关闭 selinux
查看 selinux 状态:getenforce 临时设置 selinux 状态宽松模式:setenforce 0 或 setenforce
permissive 或 disable 关闭。Setenforce 1 或 enforcing 开启强制模式,所有策略生效,这是
selinux 的默认状态。

[root@svr7 ~]# ssh -p 8022 -X [email protected] #重新测试
[email protected]'s password: 
[root@pc207 ~]#
第一次连接 ssh,会在/root/.ssh/know_hosts 文件中记录 ssh 第一次连接,删除后,会初始
化连接。
恢复端口,直接注释更改的文件,重启服务即可
[root@pc207 ~]# vim /etc/ssh/sshd_config
# Port 8022
PermitRootLogin yes #修改该行,表示允许 root 登录
[root@pc207 ~]# systemctl restart sshd

scp 基于 ssh 远程管理,安全复制工具 scp

scp [-r] 用户名@服务器:路径 本地路径
scp [-r] 本地路径 用户名@服务器:路径
scp /路径/源数据(本地文件) root@对方IP地址:/路径/
scp root@对方IP地址:/路径/ /路径/源数据(本地文件)

[root@svr7 ~]# scp -r /boot/ [email protected]:/opt/ #把本机的boot目录放到207主
机的 opt 下面
[root@svr7 ~]# scp -r [email protected]:/boot /opt/ #把远程主机的目录 boot 放到
本地 opt 下
[root@svr7 ~]# ls /opt/

远程管理进阶与 xshell

实现 ssh 无密码验证

  • 生成公钥与私钥,完成 ssh 无密码验证
A[root@svr7 ~]# ssh-keygen #一路回车
A[root@svr7 ~]# ls /root/.ssh/
  • 传递公钥到对方主机
    A 将公钥传递给 B
[root@svr7 ~]# ssh-copy-id [email protected]
…
#A 然后登录对方 B,发现就不用密码了。
[root@svr7 ~]# ssh [email protected]
#A 把公钥传给 B, A 就能够不用密码登录 B

Windows–>Linux远程访问

  • 远程登录工具
    Xshell、MobaXterm、.FinalShell、Putty、SecureCRT、…

常用的网络工具

IP 命令的使用

查看 IP 地址

[root@svr7 ~]# ip address show
Linux6-配置网络、源码包的编译和安装_第9张图片

BROADCAST 表示该接口支持广播;
MULTICAST 表示该接口支持多播;
UP 表示该网络接口已启用;
LOWER_UP 表示网络电缆已插入,设备已连接至网络

mtu 1500:最大传输单位(数据包大小)为 1,500 字节

qdisc pfifo_fast:用于数据包排队
state UP:网络接口已启用
qlen 1000:传输队列长度
link/ether 00:1e:4f:c8:43:fc:接口的 MAC(硬件)地址
brd ff:ff:ff:ff:ff:ff:广播地址
inet 192.168.0.24/24:IPv4 地址
brd 192.168.0.255:广播地址
scope global:全局有效
dynamic enp0s25:地址是动态分配的
valid_lft forever:IPv4 地址的有效使用期限
preferred_lft forever:IPv4 地址的首选生存期
inet6 fe80::2c8e:1de0:a862:14fd/64:IPv6 地址
scope link:仅在此设备上有效
valid_lft forever:IPv6 地址的有效使用期限
preferred_lft forever:IPv6 地址的首选生存期

添加 IP 地址

[root@svr7 ~]# ip address add 192.168.8.1/24 dev eth0 #会有 8.1 的 IP,但是是临时的

[root@svr7 ~]# ip addr show
[root@svr7 ~]# ping 192.168.8.1 #可以 ping 通
#也可以使用以下命令,临时配置 ip 地址:
[root@svr7 ~]# ifconfig eth0 192.168.10.5/24
#如果想要每次开机生效,可以写/etc/rc.d/rc.local 文件,给个执行的权限
chmod +x /etc/rc.d/rc.local
[root@svr7 ~]# vim /etc/rc.d/rc.local
ip address add 192.168.8.1/24 dev eth0

添加路由

路由是一种机制,通过它,数据包可以从源主机传输到目标主机。路由表是一个指导数据包如何到达目标地址的指南。添加路由就是在路由表中添加新的条目。
[root@svr7 ~]# ip route add 10.0.0.0/24 via 192.168.8.100 dev eth0

[root@svr7 ~]# ip route show #查看路由表
删除路由
[root@svr7 ~]# ip route del 10.0.0.0/24
[root@svr7 ~]# ip route show
网卡配置文件在: /etc/sysconfig/network-scripts/ifcfg-eth0

追踪路由

  • traceroute 功能:可以知道从本机到达目标所经过的路由器有哪些(用于追踪数据包从源主机到目标主机的路径)
    • 命令格式: traceroute [参数] [主机]
    • TTL值:每经过一个路由器减少1

红帽 8 里面没有这条命令,需要先安装 yum -y install traceroute*
也可以用 mtr 这条命令追踪目标(可以是网址,也可以是 IP)

[root@svr7 ~]# traceroute 192.168.4.7
traceroute to 192.168.4.7 (192.168.4.7), 30 hops max, 60 byte packets
1 svr7.tedu.cn (192.168.4.7) 0.043 ms 0.013 ms 0.011 ms
[root@svr7 ~]# traceroute 192.168.4.207
  • Windows命令路由跟踪tracert
Windos 双击运行-->cmd-->
C:\Users\Administrator>tracert www.baidu.com

ss 与 netstat

-a 显示所有端口的信息
-n 以数字格式显示端口号
-t 显示 TCP 连接的端口
-u 显示 UDP 连接的端口
-l 显示服务正在监听的端口信息
-p 显示监听端口的服务名称是什么(也就是程序名称)

[root@svr7 ~]# netstat -anptu
[root@svr7 ~]# ss -anptu
[root@svr7 ~]# netstat -anptu |grep :22
[root@svr7 ~]# ss -anptu |grep :22

ping 命令

常用选项:
-c:测试包个数
-i:指定收发信息的间隔时间,默认频率是 1 秒一次
-W:设置等待返回时间,默认等待 3 秒。

[root@svr7 ~]# ping -c 2 192.168.4.7 #ping2 次结束
[root@svr7 ~]# ping -c 2 –i 0.2 –W 1 192.168.4.7 #ping2 次结束,频率是 0.2 秒一次,

源码编译安装

源码编译安装的优势

自定义 yum 仓库

yum 仓库的定义

你可能感兴趣的:(Linux,网络,linux)