Linux就该这么学第十三节课学习心得

本文详细介绍了在Linux系统中配置网络服务的方法,包括使用nmtui和nmcli命令来配置网卡,创建网络会话,以及网卡绑定技术。内容涵盖了配置静态IP、创建网络会话以实现不同环境下网络配置的快速切换,以及如何通过nmcli创建和管理绑定的网卡。文章还讨论了SSH服务的配置,包括禁止root远程登录和安全密钥验证,以及使用scp命令进行文件传输。最后,文章介绍了Tmux终端复用器的使用,包括创建、恢复和管理会话,以及如何利用会话共享功能进行多用户协作。
摘要由CSDN通过智能技术生成

9.1 配置网卡服务

9.1.1 配置网卡参数

截至目前,大家已经完全可以利用当前所学的知识来管理Linux系统了。当然,大家的水平完全可以更进一步,当有朝一日登顶技术巅峰时,您一定会感谢现在正在努力学习的自己。

我们接下来将学习如何在Linux系统上配置服务。但是在此之前,必须先保证主机之间能够顺畅地通信。如果网络不通,即便服务部署得再正确,用户也无法顺利访问。所以,配置网络并确保网络的连通性是学习部署Linux服务之前最后一个重要的知识点。

4.1.3节讲解了如何使用Vim文本编辑器来配置网卡参数。其实,在RHEL 8系统中至少有5种网络的配置方法,刘遄老师尽量在本书中为大家逐一演示。这里教给大家的是使用nmtui命令来配置网络,其具体的配置步骤如图9-1至图9-8所示。当遇到不容易理解的内容时,会额外进行解释说明。

图9-1  执行nmtui命令运行网络配置工具

图9-2  选中配置网卡按钮并按下回车键

在RHEL 5、RHEL 6系统及其他大多数早期的Linux系统中,网卡的名称一直都是eth0、eth1、eth2、……;在RHEL 7中则变成了类似于eno16777736这样的名字;而在RHEL 8系统中网卡的最新名称是类似于ens160、ens192这样的,所以经常丰富的运维老手光看网卡名称大致就能猜出系统的版本了。不过除了网卡的名称发生变化之外,其他一切几乎照旧,因此这里演示的网络配置实验完全可以适用于各种版本的Linux系统。

现在,在服务器主机的网络配置信息中填写IP地址192.168.10.10/24。24表示子网掩码中的前24位为网络号,后8位是主机号(与写成255.255.255.0的效果一样)。网关、DNS等信息暂可不必填写,等用到时再补充。

图9-3  选中要配置的网卡名称,然后按下编辑按钮

图9-4  把网卡IPv4的配置方式改成手动模式

图9-5  按下显示详细信息按钮

Tips

再多提一句,咱们这本《Linux就该这么学(第2版)》不仅学习门槛低、简单易懂,而且还有一个潜在的优势—书中所有的服务器主机IP地址均为192.168.10.10,而客户端主机均为192.168.10.20及192.168.10.30。这样的好处就是,在后面部署Linux服务的时候,不用每次都要考虑IP地址变化的问题,从而可以心无旁骛地关注配置细节。

图9-6  填写IP地址和子网掩码

图9-7  单击OK按钮保存配置

图9-8  单击Back按钮结束配置工作

至此,在Linux系统中配置网络的步骤就结束了。

刘遄老师在培训时会经常发现,很多学员在安装RHEL 8系统时默认没有激活网卡。如果各位读者有同样的情况也不用担心,只需使用Vim编辑器将网卡配置文件中的ONBOOT参数修改成yes,这样在系统重启后网卡就被激活了。

[root@linuxprobe ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens160
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens160
UUID=97486c86-6d1e-4e99-9aa2-68d3172098b2
DEVICE=ens160
ONBOOT=yes
HWADDR=00:0C:29:7D:27:BF
IPADDR=192.168.10.10
PREFIX=24
IPV6_PRIVACY=no

当修改完Linux系统中的服务配置文件后,并不会对服务程序立即产生效果。要想让服务程序获取到最新的配置文件,需要手动重启相应的服务,之后就可以看到网络畅通了:

[root@linuxprobe ~]# nmcli connection reload ens160
[root@linuxprobe ~]# nmcli connection up ens160
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/6)
[root@linuxprobe ~]# ping 192.168.10.10
PING 192.168.10.10 (192.168.10.10) 56(84) bytes of data.
64 bytes from 192.168.10.10: icmp_seq=1 ttl=64 time=0.122 ms
64 bytes from 192.168.10.10: icmp_seq=2 ttl=64 time=0.048 ms
64 bytes from 192.168.10.10: icmp_seq=3 ttl=64 time=0.106 ms
64 bytes from 192.168.10.10: icmp_seq=4 ttl=64 time=0.043 ms

--- 192.168.10.10 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 61ms
rtt min/avg/max/mdev = 0.043/0.079/0.122/0.036 ms

9.1.2 创建网络会话

RHEL和CentOS系统默认使用NetworkManager来提供网络服务,这是一种动态管理网络配置的守护进程,能够让网络设备保持连接状态。可以使用nmcli命令来管理NetworkManager服务程序。nmcli是一款基于命令行的网络配置工具,功能丰富,参数众多。它可以轻松地查看网络信息或网络状态:

[root@linuxprobe ~]# nmcli connection show
NAME    UUID                                  TYPE      DEVICE 
ens160  97486c86-6d1e-4e99-9aa2-68d3172098b2  ethernet  ens160 
virbr0  e5fca1ee-7020-4c21-a65b-259d0f993b44  bridge    virbr0
[root@linuxprobe ~]# nmcli connection show ens160 
connection.id:                          ens160
connection.uuid:                        97486c86-6d1e-4e99-9aa2-68d3172098b2
connection.stable-id:                   --
connection.type:                        802-3-ethernet
connection.interface-name:              ens160
connection.autoconnect:                 yes
………………省略部分输出信息………………

另外,RHEL 8系统支持网络会话功能,允许用户在多个配置文件中快速切换(非常类似于firewalld防火墙服务中的区域技术)。如果我们在公司网络中使用笔记本电脑时需要手动指定网络的IP地址,而回到家中则是使用DHCP自动分配IP地址,这就需要麻烦地频繁修改IP地址,但是使用了网络会话功能后一切就简单多了—只需在不同的使用环境中激活相应的网络会话,就可以实现网络配置信息的自动切换了。

使用nmcli命令并按照“connection add con-name type ifname”的格式来创建网络会话。假设将公司网络中的网络会话称之为company,将家庭网络中的网络会话称之为house,现在依次创建各自的网络会话。

使用con-name参数指定公司所使用的网络会话名称company,然后依次用ifname参数指定本机的网卡名称(千万要以实际环境为准,不要照抄书上的ens160),用autoconnect no参数将网络会话设置为默认不被自动激活,以及用ip4及gw4参数手动指定网络的IP地址:

[root@linuxprobe ~]# nmcli connection add con-name company ifname ens160 autoconnect no type ethernet ip4 192.168.10.10/24 gw4 192.168.10.1
Connection 'company' (6ac8f3ad-0846-42f4-819a-e1ae84f4da86) successfully added.

使用con-name参数指定家庭所使用的网络会话名称house。因为要从外部DHCP服务器自动获得IP地址,所以这里不需要进行手动指定。

[root@linuxprobe ~]# nmcli connection add con-name house type ethernet ifname ens160
Connection 'house' (d848242a-4bdf-4446-9079-6e12ab5d1f15) successfully added.

在成功创建网络会话后,可以使用nmcli命令查看创建的所有网络会话:

[root@linuxprobe ~]# nmcli connection show
NAME     UUID                                  TYPE      DEVICE 
ens160   97486c86-6d1e-4e99-9aa2-68d3172098b2  ethernet  ens160 
virbr0   e5fca1ee-7020-4c21-a65b-259d0f993b44  bridge    virbr0 
company  6ac8f3ad-0846-42f4-819a-e1ae84f4da86  ethernet  --     
house    d848242a-4bdf-4446-9079-6e12ab5d1f15  ethernet  --  

使用nmcli命令配置过的网络会话是永久生效的,这样当我们上班后,顺手启动company网络会话,网卡信息就自动配置好了:

[root@linuxprobe ~]# nmcli connection up company 
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/6)
[root@linuxprobe ~]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.88  netmask 255.255.255.0  broadcast 192.168.10.255
        inet6 fe80::320e:a005:dfa1:431c  prefixlen 64  scopeid 0x20
        ether 00:0c:29:7d:27:bf  txqueuelen 1000  (Ethernet)
        RX packets 66  bytes 5469 (5.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 99  bytes 11255 (10.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
………………省略部分输出信息………………

如果大家使用的是虚拟机,请把虚拟机系统的网卡(网络适配器)切换成桥接模式,如图9-9所示。然后重启虚拟机系统即可。

图9-9  设置虚拟机网卡的模式

这样操作过后就能使用家庭中的路由器设备了。启动house家庭会话,看一下效果:

[root@linuxprobe ~]# nmcli connection up house
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/4)
[root@linuxprobe ~]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.107  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::f209:dc47:4004:3868  prefixlen 64  scopeid 0x20
        ether 00:0c:29:7d:27:bf  txqueuelen 1000  (Ethernet)
        RX packets 22  bytes 6924 (6.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 82  bytes 10582 (10.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
………………省略部分输出信息………………

如果启用company会话成功,但启用house会话失败且不能获取到动态地址,则证明您的配置是正确的,问题出在了外部网络环境。有3种常见的情况,首先,您家中的设备没有连接路由器,而是通过拨号网络或共享WiFi的方式上网;其次,还在上学或上班的读者在浏览网页前必须通过学校或公司的验证页面才能访问互联网;最后,检查物理机的防火墙设置,可暂时关闭后再重试。

后续不需要网络会话时,直接用delete命令就能删除,特别简单:

[root@linuxprobe ~]# nmcli connection delete house
Connection 'house' (d848242a-4bdf-4446-9079-6e12ab5d1f15) successfully deleted.
[root@linuxprobe ~]# nmcli connection delete company 
Connection 'company' (6ac8f3ad-0846-42f4-819a-e1ae84f4da86) successfully deleted.

9.1.3 绑定两块网卡

一般来讲,生产环境必须提供7×24小时的网络传输服务。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值