第九章 主要讲了网络的配置方法,与ssh服务管理远程主机
一、网络的配置方法
网络的配置方法有很多,只要学会一种就行,当然图形化界面更简单,但是这里主要讲nmcli命令,nmcli通过命令行即可管理网络。
nmcli 主要有两个层面:
1)链接:就好比手机中的无线网链接,在家用 home 链接,学校用 school 链接,在公司用work链接,链接也就是针对不 同网络环境的配置。
2)网卡:就是用来使用链接的设备,没有硬件设备,有再多链接配置也无法使用。
以上就对应了nmcli 命令的两个模式
nmcli c[onnection] {show|up|down|modify|add|edit|clone|delete|monitor|reload|load|import|export} 针对链接的管理
nmcli d[evice] {status|show|set|connect|reapply|modify|disconnect|delete|monitor|wifi|lldp} 针对网卡设备的管理
1、针对链接的管理命令
nmcli c show [链接名称] 如不指定链接名称则显示所有链接。如果指定链接名称则显示指定链接的详细信息
nmcli c up [链接名称] 和 nmcli c down [链接名称] 启动或停止 指定的链接。就好像手机链接或断开指定的wifi一样。
需要注意的是:当停止一个指定的链接时,系统会自动寻找和切换另一个可用的链接,就好像你的手机当前有
两个可用的wifi,当断开当前wifi时,系统会切换另一个可用的链接。
nmcli c modify [链接名称] [+|- 选项.属性名 设置的变量] 修改指定链接的某个属性。+|- 需要指定属性的索引
nmcli c add
type ethernet | wifi | bond | bond-slave | team | team-slave | vpn | ..... 此属性必须指定,不可省略,指定你要创建链接的 链接属性。
以下常用的属性根据需要添加,如不指定则使用默认配置,
[con-name 链接名称] 创建链接的名称
[ifname 网络接口名] 指定创建链接的网络接口名, 也就是绑定到的网卡设备
[ip4 IP地址/掩码] 指定ip地址
[gw4 网关] 指定网关地址
[autoconnect yes|no] 是否自动链接
nmcli c edit [链接名称] 通过交互式 编辑链接的各种属性,里面有引导,这里就不赘述了。其中所有的属性名,都可与modify, add共用,如果不指定链接名称则为引导添加链接
nmcli c delete [链接名称] 删除指定链接
2、针对网卡(设备)的管理命令(在linux中 网卡也叫接口)
nmcli d status 查看网卡状态
nmcli d show [网卡名称] 查看网卡信息,如果不指定网卡名称则显示所有网卡信息
nmcli d set [网卡名称] [autoconnect yes|no] [managed yes|no] 设置网卡是否自动连接,和是否被管理。
nmcli d connect [网卡名称] 和 nmcli d disconnect [网卡名称] 将激活和禁止指定网卡,网卡自动链接可用链接。
nmcli d modify [网卡名称] [+|-] [属性] 与针对链接的管理命令语法相同,只不过修改不写入配置文件。
nmcli d reapply [网卡名称] 使用当前活动链接来更新网卡配置。说白了,此命令与modify命令配合使用意思就成了modify修改网 卡配置,但不写入配置中,reapply从配置中读出属性来更新网卡的配置。
nmcli d delete [网卡名称] 删除指定网卡设备,注意,只能删除虚拟网卡,如bond,team......无法删除硬件设备
二、网卡的绑定与聚合技术
网卡绑定与聚合技术是将多块网卡绑定为一个网卡,为了解决网卡的负载与备用问题。
常用模式有以下三种
第一种模式:mod=0 ,即:(balance-rr) Round-robin policy(平衡抡循环策略)
特点:传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1….一直循环下去,直到最后一个传输完 毕),此模式提供负载平衡和容错能力;但是我们知道如果一个连接或者会话的数据包从不同的接口发出的话,中途再 经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网 络的吞吐量就会下降
第二种模式:mod=1,即: (active-backup) Active-backup policy(主-备份策略)
特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得,从外面看来, bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。此模式只提供了容错能力;由此可见此算法的优点是可以提 供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有 N 个网络接口的情况下,资源利 用率为1/N
第七种模式:mod=6,即:(balance-alb) Adaptive load balancing(适配器适应性负载均衡)
特点:流量均衡,且有自动备援功能。
绑定与聚合的区别在与,绑定只能将2块网卡绑定在一起,聚合则支持最多8块网卡绑定。
下面演示添加绑定网卡,与聚合网卡
聚合网卡支持以下模式
broadcast 广播容错
roundrobin 负载轮询
activebackup 主备
loadbalance 负载均衡
lacp 需要交换机支持lacp协议
三、ssh服务
ssh服务是一种能有以安全的方式提供远程登录的协议,也是目前远程管理Linux系统的首选方式
ssh服务就好像windows系统中的远程界面一样。
ssh服务提供了两种登录方式:1)基于口令的验证,即输入用户名与密码来登录
2)基于密钥的验证,即在本地生成密钥对,并将公钥发给远程主机,通过匹配验证登录。
ssh服务很简单,主要先知道ssh服务的主配置文件,在/etc/ssh/sshd_config中,主要参数有:
sshd服务配置文件中包含的参数以及作用
参数 | 作用 |
Port 22 | 默认的sshd服务端口 |
ListenAddress 0.0.0.0 | 设定sshd服务器监听的IP地址 |
Protocol 2 | SSH协议的版本号 |
HostKey /tc/ssh/ssh_host_key | SSH协议版本为1时,DES私钥存放的位置 |
HostKey /etc/ssh/ssh_host_rsa_key | SSH协议版本为2时,RSA私钥存放的位置 |
HostKey /etc/ssh/ssh_host_dsa_key | SSH协议版本为2时,DSA私钥存放的位置 |
PermitRootLogin yes | 设定是否允许root管理员直接登录 |
StrictModes yes | 当远程用户的私钥改变时直接拒绝连接 |
MaxAuthTries 6 | 最大密码尝试次数 |
MaxSessions 10 | 最大终端数 |
PasswordAuthentication yes | 是否允许密码验证 |
PermitEmptyPasswords no | 是否允许空密码登录(很不安全) |
ssh 语法: ssh [用户名@] IP地址 远程登录I
ssh-keygen 生成密钥对
ssh-copy-id [用户名@]IP地址 将公钥发给远程主机
下面演示以下这两种登录方式:
确保/etc/ssh/sshd_config文件中 PasswordAuthentication yes。如果要用root用户登录,还需要确认 PermitRootLogin yes 。
密钥对登录
四、scp 远程传输命令
语法: scp [选项] [ip地址:]文件路径 [IP地址:]文件路径
常用选项:-r 用于文件夹
-v 显示详细链接进度
-p 用于指定远程主机的sshd端口号
-6 指定使用ipv6协议
下面是简单的演示: