当前位置: 首页 > article >正文

【Linux】网络服务

声明,以下内容均学习自《Linux就该这么学》一书

1、创建网络会话

Linux系统使用NetworkManager提供网络服务,它是一种动态管理网络配置的守护进程,能够让网络设备保持连接状态。

nmcli

nmcli是一款基于命令行的网络配置工具,它可以轻松地查看网络信息或网络状态。

nmcli connection show

创建网络会话,将公司的网络会话称为company,家庭的网络会话称为house。

创建公司网络会话company:

使用con-name参数指定公司所使用的网络会话名称为company,然后使用ifname参数指定本机的网卡名称(此处的eno16777736为示例),接着用autoconnect to参数设置该网络会话默认不被自动激活,最后用ip4及gw4参数手动指定网咯的IP地址 

nmcli connection add con-name company ifname eno16777736 autoconnect no type ethernet ip4 192.168.10.10/24 gw4 192.168.10.1

 创建家庭网络会话house:

因为我们想从外部DHCP服务器总获得IP地址,所以此处不需要手动指定。

nmcli connection add con-name house type ethernet ifname eno16777736

成功创建网络会话后,使用nmcli connection show命令查看所有的网络会话。

使用nmcli命令配置过的网络会话是永久生效的。

2、网卡绑定

常见的网卡绑定驱动有三种模式:

  1. mode0:平衡负载模式,平时两块网卡均工作,且自动备援,但需要在与服务器本地网卡相连的交换机设备上进行端口聚合来支持绑定技术。
  2. mode1:自动备援模式,平时只有一块网卡工作,在它故障后自动替换为另外的网卡。
  3. mode6:平衡负载模式,平时两块网卡均工作,且自动备援,无须交换机设备提供辅助支持。

3、远程控制服务

SSH

SSH(secure shell)是一种能够以安全的方式提供远程登录的协议,也是目前远程管理Linux系统的首选方式。

sshd

要想使用SSH协议来远程管理Linux系统,则需要部署配置sshd服务程序。sshd是基于SSH协议开发的一款远程管理服务程序,它能够提供两种安全验证的方法:

基于口令的验证:用账户和密码来验证登录;

基于密钥的验证:需要在本地生成密钥对,然后把密钥对中的公钥上传至服务器,并与服务器中的公钥进行比较。

sshd服务的配置信息保存在/etc/ssh/sshd_config文件中。一般把保存着最主要配置信息的文件称为主配置文件,在配置文件中有需要以#开头的注释行,要想让这些配置参数生效,需要在修改参数后去掉前面的#。

sshd服务配置文件中的参数及作用
Port 22默认的sshd服务端口
ListenAddress 0.0.0.0设定sshd服务器监听的IP地址
Protocol 2SSH协议的版本号
HostKey /etc/ssh/ssh_host_keySSH协议版本为1时,DES私钥存放的位置
HostKey /etc/ssh/ssh_host_rsa_keySSH协议版本为2时,RSA私钥存放的位置
HostKey /etc/ssh/ssh_host_dsa_keySSH协议版本为2时,DSA私钥存放的位置
PermitRootLogin yes设定是否允许root管理员直接登录
StrictModes yes当远程用户的私钥改变时直接拒绝连接
MaxAuthTries 6最大密码尝试次数
MaxSessions 10最大终端数量
PasswordAuthentication yes是否允许密码验证
PermitEmptyPasswords no是否允许空密码登录(很不安全)

使用ssh进行远程连接:ssh [参数] 主机IP地址

ssh 192.168.10.10

#要退出的话执行 exit 命令

如果禁止以root管理员身份远程登录到服务器,可以大大降低被黑客暴力破解密码的概率。

执行命令vim /etc/ssh/sshd_config打开sshd服务的主配置文件,把#PermitRootLogin yes这一行的 # 去掉,并把yes改成了no。如此配置后,就不再允许root管理员远程登录了。

如果想让新配置文件生效,需要手动重启相应的服务程序,并将此服务程序加入到开机启动项中,这样系统下一次一启动,sshd服务就会自动运行。

# 重启sshd服务程序,使其生效
systemctl restart sshd

# 将sshd服务程序加入到开机自启动
systemctl enable sshd

SCP

scp(secure copy)是一个基于SSH协议在网络之间进行安全传输的命令,它不仅能够通过网络传送数据,而且所有的数据都将进行加密处理:scp [参数] 本地文件 远程账户@远程IP地址:远程目录

scp命令参数及作用
-v显示详细的连接进度
-p指定远程主机的sshd端口号
-r用于传送文件夹
-6使用IPv6协议

在使用 scp 命今把文件以本地复制到远程主机时,首先需要以绝对路径的形式写清楚本地文件的存放位置。如果要传送整个文件夹内的所有数据,还需要额外添加参数 -r 进行递操作。然后写上要传送到的远程主机的IP地址,远程服务器便会要求进行身份验证了。当前用户名称为 root,而密码则为远程服务器的密码。如果想使用指定用户的身份进行验证,用“用户名@主机地址”的参数格式。最后需要在远程主机的IP地址后面添加冒号,并在后面写上要传送到远程主机的哪个文件夹中。只要参数正确并且成功验证了用户身份,即可开始传送工作。

也可以使用scp命令把远程主机上的文件下载到本地主机:scp [参数] 远程用户@远程IP地址:远程文件 本地目录

# 把文件复制到远程主机
scp /root/test.txt 192.168.10.20:/home

# 把远程主机上的文件下载到本地主机
scp 192.168.10.20:/etc/redhat-release /root

4、不间断会话服务

screen

screen是一款能够实现多窗口远程控制的开源服务程序,它是为了解决网络异常中断或为了同时控制多个远程终端窗口而设计的程序。用户可以使用screen服务同时在多个远程会话中自由切换。

  •  会话恢复:即便网络中断,也可让会话随时恢复,确保用户不会失去对远程会话的控制;
  • 多窗口:每个会话都是独立运行的,拥有各自独立的输入输出终端窗口,终端窗口内显示过的信息也将被分开隔离保存,以便下次使用时依然能看到之前的操作记录。
  • 会话共享:当多个用户同时登录到远程服务器时,便可以使用会话共享功能让用户间的输入输出信息共享。
screen参数及作用
-S创建会话窗口
-d将指定会话进行离线处理
-r恢复指定会话
-x一次性恢复所有的会话
-ls显示当前已有的会话
-wipe把目前无法使用的会话删除

退出会话:exit


http://www.kler.cn/a/428213.html

相关文章:

  • C++/stack_queue
  • 算法基础学习——二分查找(附带Java模板)
  • 神经网络|(七)概率论基础知识-贝叶斯公式
  • 挂载mount
  • (开源)基于Django+Yolov8+Tensorflow的智能鸟类识别平台
  • 哈工大:LLM高质量嵌入模型KaLM-Embedding
  • k8s 之 DaemonSet
  • 【强化学习】策略梯度(Policy Gradient,PG)算法
  • 【MySQL】数据类型的注意点和应用
  • 008.精读《Apache Paimon Docs - Table w/o PK》
  • 【PyQt5教程 二】Qt Designer 信号与槽的使用方法及PyQt5基本小部件说明
  • CentOS8.5.2111(10)基于域名访问的邮件服务配置与管理
  • python录制鼠标键盘操作循环播放
  • LeetCode:28. 找出字符串中第一个匹配项的下标(KMP算法)
  • 【PlantUML系列】思维导图(五)
  • Flink自定义数据源
  • Netty 的多线程模型详解
  • LabVIEW中“this VI‘s owning library is missing”错误及解决
  • openharmony开发资料合集
  • UI Left EXE Right Recive TCPIP
  • YOLOv8-ultralytics-8.2.103部分代码阅读笔记-build.py
  • 【如何制定虚拟货币的补仓策略并计算回本和盈利】
  • Linux网络编程之---组播和广播
  • 快速排序的基本思想和java实现
  • Next.js系统性教学:全面掌握客服务端组件(Server Components)
  • ARMv8-A MacOS调试环境搭建