RHCE8 资料整理(三)

在这里插入图片描述

第三篇 网络相关配置

第11章 网络配置

11.1 网络基础知识

可参考
https://blog.csdn.net/u010230019/article/details/130880059
https://blog.csdn.net/u010230019/article/details/130195777

  • IP,由32bit的二进制组成,32bit分为4部分,每部分8位,根据网络类型不同,A,B,C,D,E网。4部分中包括网络位和主机位,根据网络类型区分,由于二进制不便记忆,所以又把这四部分转为十进制。
  • 子网掩码,通过子网掩码进行划分网络位和主机位
  • 网关,IP地址通过网关到达其他网络,一般网关都和IP地址都在同一个网络
  • DNS,域名解析,把域名解析成IP地址称为正向解析,而把IP地址解析成域名则称为反向解析

11.2 查看网络信息

一般可以使用ifconfignmcli或者ip address`进行查询IP,格式

ifconfig [dev]
nmcli d[evice] show [dev]
ip a[ddress show] [dev] #可简写为ip a或ip a s [dev]

查看网关使用routeip route(来自两个不同的命令簇,个人感觉route比较常用)命令,格式

route [-n] [-4|-6] 
ip [-4|-6] route
#默认都是-4

查看NDS,一般都记录在/etc/resolv.confi

[root@server yurq]# cat /etc/resolv.conf
nameserver 8.8.8.8
nameserver 114.114.114.114

通过nmcli connection可以查看当前连接,以及具体属性

nmcli connection
nmcli connection show ens32|grep ipv4

nmcli命令簇实在庞大,具体可以查看 https://blog.csdn.net/u010230019/article/details/126759779

11.3 图形化界面修改

在命令行输入,可以打开【网络连接】的图形化界面窗口
在这里插入图片描述
点击+创建网络连接,选择类型为Ethernet(以太网)
在这里插入图片描述
进入以太网连接界面,进行相关配置
在这里插入图片描述
相关配置内容,包括:

  • Connection name,连接名称
  • Devices,设备名称
  • IPV4 Setting,IPV4手动设置包括IP,netmask,gateway或选择DHCP自动设置

完成后进行保存,即可生效

如果输入nm-connection-editor未能启动图形界面,也可通过nmtui-edit进行图形界面设置,虽和上述界面不同,但设置类似,不展开讨论了。

11.4 通过配置文件修改

一般配置文件都配置在/etc/sysconfig/network-scripts/目录中,名称类似ifcfg-***

[root@server yurq]# ll /etc/sysconfig/network-scripts/
total 8
-rw-r--r--. 1 root root 115 Sep  8 17:38 ifcfg-ens32
-rw-r--r--. 1 root root 115 Sep  8 17:43 ifcfg-ens35

新系统或者该文件被误删,可以通过nmcli connection根据已存在网卡自动生成该文件

该文件中各字段含义,参考 https://blog.csdn.net/u010230019/article/details/126759779

  • 新创建的配置文件可通过nmcli connection reload生效
  • 对于已存在的配置文件,修改后通过nmcli connection reloadnmcli device reapply ens160(网卡名)

11.5 命令行管理

nmcli connection			#查看现有连接
nmcli connection delete 连接名	#删除连接名
nmcli connection add [options]				#添加连接名
	type: #类型
	con-name: #连接名
	ifname: #网卡名
	ipv4.method manual/auto #manual 手动配置IP,auto 自动获取
	ipv4.addresses #指定ip及子网掩码
	ipv4.gateway	#指定网关
	ipv4.dns	#指定dns
	autoconnect yes	#设置连接开机自动生效
#示例
nmcli connection add type ethernet con-name ens160 ifname ens160 ipv4.method manual \
ipv4.addresses 192.168.0.100/24 ipv4.gateway 192.168.0.1 ipv4.dns 114.114.114.114 autoconnect yes

nmcli connection show ens160 |grep ipv4	#查看连接属性
nmcli connection modify 连接名 属性1 属性2 ...	#修改连接属性,属性同添加时的属性
	#如果某个网卡有两个ip,可以写成 -ipv4.addresses 192.168.0.101/24
nmcli device reapply 连接名	#应用到设备

在RHCE8中,不能直接通过systemctl restart network来重启网络,但可以通过安装network-scripts使用

11.6 主机名的设置

查看主机名

[root@server yurq]# hostname
server.rhce.cc
[root@server yurq]# hostname -s	#可以查看短主机名,即没有域名的主机名
server

设置主机名

hostnamectl set-hostname 主机名

或者通过修改/etc/hostname进行修改,这两种方式都是永久生效

通过/etc/hosts添加本地域名解析

IP	长主机名	短主机名

第12章 ssh

12.1 ssh基本用法

基本用法1:
以当前用户登录远程服务器

ssh 主机名/IP

当完成认证信息后,服务器的密钥将会记录在.ssh/know_hosts中,后续登录将不需要认证
如果远程服务器没有当前用户名的用户信息,则认证无法通过,即无法登录

基本用法2:
以指定用户登录远程服务器

ssh -l 用户名 主机名/IP
ssh 用户名@主机名/IP

当远程登录用户登录密码发生变更时,会出现连接错误,此时需要删除.ssh/know_hosts中对应条目

12.2 打开远程图形化界面

当远程连接到远程服务器时,出现如下信息

[root@server ~]# firefox
Error: no DISPLAY environment variable specified

这是为什么呢?我们来了解下Xserver和Xclient。
每个打开图形化界面的工具,例如,终端、Firefox浏览器、gedit记事本等,这些都叫Xclient,而这些Xclient必须在Xserver上运行。
Xserver是一个平台环境,安装系统时如果选择了图形化界面,那么Xserver默认就已安装上了。

想在本机打开远程服务器的Xclient,即图形化客户端,需要满足以下3个条件:

  • 通过ssh登录到服务器时,需要加-X选项,因为ssh默认只允许字符传输,不允许Xclient传输,加上-X之后就可以让Xclient传输
  • 本地要运行Xserver
  • 远程服务器要安装xorg-x11-xauth,默认已经安装了

12.3 ssh无密码登录

ssh登录远程服务器有两种认证方式

  1. 密码登录
  2. 密钥登录
    • 首先生成密钥对
    ssh-keygen -f ~/.ssh/id_rsa -N ""
    
    该命令会生成一个密钥对(公钥和私钥),-f指定路径,默认也是上面的路径,-N 后面的双引号中没有空格,是不对生成的私钥加密
    [root@server yurq]# ll /root/.ssh/
    total 16
    -rw-------  1 root root 2602 Oct 21 01:22 id_rsa	#私钥
    -rw-r--r--  1 root root  573 Oct 21 01:22 id_rsa.pub	#公钥
    
    • 复制公钥到指定用户服务器的家目录下的.ssh/authorized_keys中,如果没有此文件,拷贝过程中会自动创建
    ssh-copy-id yurq@node-138
    
    此时,就无密码可以登录远程服务器了

12.4 ssh安全设置

可以通过编辑/etc/ssh/sshd_config实现仅一种认证生效

  1. 禁用密钥登录
    [root@server yurq]# cat /etc/ssh/sshd_config|grep Pubkey
    #PubkeyAuthentication yes
    
    设置PubkeyAuthentication no,保存并重启sshd,即禁用密钥登录
  2. 禁用密码登录
    [root@server yurq]# cat /etc/ssh/sshd_config|grep Pass
    #PasswordAuthentication yes
    
    设置PasswordAuthentication no,保存并重启sshd,即禁用密钥登录

12.5 ssh限制用户

对于服务器上的有效用户,基本上都可以使用ssh登录,但是有时为了安全性要禁用某些用户登录,例如root。

  1. 禁用root登录
    编辑/etc/ssh/sshd_config

    [root@server yurq]# cat /etc/ssh/sshd_config|grep Root
    PermitRootLogin no
    

    PermitRootLogin yes运行root登录

  2. 禁用指定普通用户登录
    编辑/etc/ssh/sshd_config,如对用户yurq禁止登录

    DenyUsers	yurq
    

    类似的指令还包括AllowUsers,DenyGroups,只允许指定用户或群组登录

    当指定用户拒绝和允许登录的条件同时存在时,拒绝优先级高于允许

    [root@server yurq]# tail -2 /etc/ssh/sshd_config
    DenyUsers yurq
    AllowUsers yurq
    

    用户yurq仍无法登录

12.6 ssh其他设置

当已指定用户登录本机,然后连接远程服务器时,如果没有显式指定用户登录,则一般以当前用户登录

  1. 指定默认用户登录
    而这里可用过修改.ssh/config来实现以默认指定用户登录,例如
[root@server yurq]# cat /root/.ssh/config
Host 192.168.17.138
        User yurq
[root@server yurq]# chmod 644 /root/.ssh/config
[root@server yurq]# systemctl daemon-reload
[root@server yurq]# systemctl restart sshd
[root@server yurq]# ssh 192.168.17.138
...
yurq@192.168.17.138's password:

这里需要注意:当使用ssh登录时,即使登录同一台机器,使用域名和IP效果也是不同的。即以上设置仅对IP生效,如果使用域名仍以root登录,这与.ssh/config中设置的Host有关

  1. 取消输入yes
    首次登录远程服务器的时候,都会提示我们是否保存公钥指纹信息,并提示我们输入yes/no,通过修改.ssh/config可以实现默认为yes作为选项,而不需要手动输入,如此修改
Host 192.168.17.138
        User yurq
Host *
	StrictHostKeyChecking no

*为通配符,代表所有主机。

  1. 解决ssh慢的问题
    有时当我们通过ssh登录远程服务器时,连接过程会比较慢。很多时候是因为系统自动取反向解析,即把IP解析成域名,才导致ssh速度慢

编辑/etc/ssh/sshd_config,找到UseDNS进行如下修改
#UseDNS no注释取消,即UseDNS no,重启服务即可

12.7 Windows 远程登录linux服务器

只要在windows上安装ssh客户端,就可以远程登录linux服务器。Windows中常见的ssh客户端包括PuTTY、Xshell
笔者目前使用的是MobaXterm,也很不错。

12.8 远程拷贝

  1. linux服务器之间
    一般我们使用scprsync,这两个软件都是用过ssh建立通道,默认都是通过22号端口进行通信

scp用法

scp [-r] /path/file [user@]remoteIP:/path2/	#从本地向远程服务器指定目录拷贝文件或目录
#或
scp [-r] [user@]remoteIP:/path2/file /path/	#从远程服务器目录向本地目录进行拷贝文件或目录
-r 递归

rsync用法

rsync [-r] /path/file[/] [user@]remoteIP:/path2/
#或
rsync [-r] [user@]remoteIP:/path2/file /path/
-r 递归

这里需要注意目录带不带/还是有区别的,请查看以下示例

#node-138
[root@node-138 test]# ll
total 0
-rw-r--r-- 1 root root 0 Oct 23 09:29 123
-rw-r--r-- 1 root root 0 Oct 23 09:29 124
-rw-r--r-- 1 root root 0 Oct 23 09:29 125
[root@node-138 test]# pwd
/opt/test

#node-140
[root@server opt]# rsync node-138:/opt/test /opt/ -r	#不带/
[root@server opt]# ll /opt/test
total 0
-rw-r--r-- 1 root root 0 Oct 23 17:15 123
-rw-r--r-- 1 root root 0 Oct 23 17:15 124
-rw-r--r-- 1 root root 0 Oct 23 17:15 125
[root@server opt]# ll /opt/
drwxr-xr-x  2 root root     39 Oct 23 17:15 test
[root@server opt]# rm -rf test
[root@server opt]# ll /opt/
[root@server opt]# rsync node-138:/opt/test/ /opt/ -r	#带/
[root@server opt]# ll /opt/
-rw-r--r--  1 root root      0 Oct 23 17:16 123
-rw-r--r--  1 root root      0 Oct 23 17:16 124
-rw-r--r--  1 root root      0 Oct 23 17:16 125

说的直白点,带/能把目录中的内容拷贝到指定位置,并不带该目录

  1. Windows和linux之间
    如果需要通过ssh在命令行进行拷贝,则需要在Windows服务器安装OpenSSH,例如
    OpenSSH-Win64-v9.2.2.0.msi
    
    另外,如果Windows未安装该软件,前面提到的Xshellmobaxterm都默认都带SFTP功能,同样可以进行拷贝工作,不过得手动操作
  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值