Linux操作系统实验十 Linux网络及服务配置(四)

简介: Linux操作系统实验十 Linux网络及服务配置(四)

案例演示3:

显示远程主机的当前目录,并且显示客户端当前工作目录,显示远程主机的当前目录下的所有文件信息,显示客户端当前工作目录下的所有信息,可以使用如下命令:

  1. pwd
  2. ! pwd
  3. ls
  4. ! ls

[请在右侧“命令行”里直接体验]

案例演示4:

在远程主机上新创建一个文件夹newDir,然后将本地的/home/fzm/testFile上传到newDir目录下,将远程主机上的sambaUser/fzm文件下载到/home/fzm目录下,并重命名为newFzm,最后退出smbclient客户端,可以使用如下命令:

  1. mkdir newDir
  2. put /home/fzm/testFile newDir/testFile
  3. get sambaUser/fzm /home/fzm/newFzm
  4. exit

[请在右侧“命令行”里直接体验]

案例演示5:

Windows系统上通过samba服务器去访问Linux系统共享的文件夹,可以使用如下步骤:

  • Windows主机上打开"运行"(快捷键win+r)输入需要访问的LinuxIP地址(格式为:\\IP);

[请在`Windows`主机上进行验证]

  • 回车后即可看到Linux主机上所共享的文件夹(fzm);

[请在`Windows`主机上进行验证]

  • 打开fzm文件夹进行访问即可(有时需要输入samba的用户名和密码才能访问)。

[请在`Windows`主机上进行验证]

编程要求

本关任务是学会如何使用smbclient命令访问samba服务器的共享资源。

注意:在执行本关任务前,首先执行如下命令来初始化任务环境。

  1. apt-get update
  2. apt-get install smbclient
  3. useradd testUser
  4. smbpasswd -a testUser(输入新设置的密码)
  5. touch testFile
  6. 向文件`/etc/samba/smb.conf`结尾追加如下内容,并且重新启动`Samba`服务器,并且重新启动服务
  7. [homes]
  8.        comment = smbclient homes
  9.        path = /tmp
  10.        browseable = no
  11.        writable = yes
  12.        create mask = 0664
  13.        directory mask = 0775

具体编程要求如下:

  • 启动samba服务;
  • 使用smbclient命令连接本机testUser共享文件夹(将本机作为远程服务器,并且使用testUser用户去访问);
  • 在远程服务器上新建一个目录Dir
  • 将本地的一个文件(/root/testFile)上传到远程主机的Dir目录下并重命名为upLoadFile

任务描述

通过以上关卡的学习,我们学会了使用smbclient命令来登录远程主机,并进行文件的上传和下载操作。接下来我们来学习如何配置samba服务器。

本关任务:学会samba服务器的常见配置。

相关知识

上一关卡中,我们在案例演示前进行了一系列环境的初始化,现在我们详细的介绍为什么我们要做那些环境的配置。

samba服务器提供了很多的配置项,每个配置项都有不同的功能,接下来,我们介绍samba常见的配置项功能,samba服务器的配置文件存放路径为:/etc/samba/smb.conf目录下。

smb.conf结构

smb.conf文件中包括4种结构,[Global]、[Homes]、[printers]、[Userdefined_shareName],其中:

  1. Globa:用于定义全局参数和缺省值;
  2. Homes:用于用户的home目录共享;
  3. Printers:用于定义打印机共享;
  4. Userdefined_ShareName:用于自定义共享(可有多个)。
全局配置参数[Global]

全局配置参数常用的主要有以下几个:

  1. Workgroup:设置 samba 要加入的工作组;
  2. server string:指定浏览列表里的机器描述;
  3. netbios name:设 置samba 的 NetBIOS 名字(需要自己添加);
  4. Intterface:设置接口 IP 地址;
  5. Host allow:设置允许访问的主机 IP;
  6. log file:指定日志文件的名称;
  7. Max  log size:指定日志文件的最大尺寸(KB);
  8. security:是定义 samba 的安装等级。

案例演示1:

修改浏览列表里的机器描述为This is My Samba Server,具体使用如下步骤:

  1. 修改 smb.conf 文件中的 server string 值(sudo vim /etc/samba/smb.conf)
  2. sudo service smbd restart
  3. smbclient -L 127.0.0.1 -U sambaUser%fzm

[修改配置文件]

[请在右侧“命令行”里直接体验]

配置home共享[homes]

home共享默认将用户的宿主目录进行了共享,这是十分危险的。为了安全考虑,我们需要自己指定共享的目录,使用home共享的好处是不同的登录用户看到的共享目录名称是本身用户名。

常见的设置共享目录的属性有如下几个:

  1. comment :描述该共享的名称;
  2. path:定义该共享的目录;
  3. browseable :指定共享的目录是否可浏览;
  4. Writable:指定共享的目录是否有写入权限;
  5. read only:指定共享的目录为只读权限;
  6. Public:指定是否可以允许 Guest 帐户访问;
  7. Guest  ok:通 public 相同,yes 为允许 guest 访问;
  8. create mask:创建文件的默认权限;
  9. directory mask:创建目录的默认权限。

我们现在讲解为什么我们在上一关中要向配置文件添加如下属性:

[上一关配置文件]

可以看到我们将home的共享目录指定为/tmp,并且设置可以有写权限,以及创建文件和目录的默认权限。

案例演示1:

home设置为可浏览,具体使用如下步骤:

  1. 修改 smb.conf 文件中的 server string 值(sudo vim /etc/samba/smb.conf)
  2. sudo service smbd restart
  3. smbclient -L 127.0.0.1 -U sambaUser%fzm

[请在右侧“命令行”里直接体验]

可以看到现在本机共享文件夹又多了一个homes的文件夹。

自定义共享

自定义共享文件夹可以设置多个,设置方式与home的设置方式相似,并且共享文件夹的名字随便起。

案例演示1:

自定义一个共享文件夹,将共享名字设置为MyShare,指定共享目录为/tmp,并且设置其可写属性以及创建文件和目录的默认权限分别是06440755,具体使用如下步骤:

  1. 修改 smb.conf 文件中的 server string 值(sudo vim /etc/samba/smb.conf)
  2. sudo service smbd restart
  3. smbclient -L 127.0.0.1 -U sambaUser%fzm

[追加配置文件]

[请在右侧“命令行”里直接体验]

可以看到新创建的共享文件夹MyShare成功的显示出来,如果登录的只需要输入:smbclient //127.0.0.1/MyShare -U userName%passwd

编程要求

本关任务是学会如何配置samba服务器。

注意:在执行本关任务前,首先执行如下命令来初始化任务环境。

  1. mkdir /testDir
  2. chmod 777 /testDir
  3. useradd testUser
  4. smbpasswd -a testUser(输入新设置的密码)
  5. touch testFile

具体编程要求如下:

  • 自定义一个共享文件夹,将共享名字设置为TestShare,指定共享目录为/testDir,同时设置其可浏览,并且设置其可写属性以及创建文件和目录的默认权限分别是06440755
  • 使用smbclient命令连接本机TestShare共享文件夹(将本机作为远程服务器,并且使用testUser用户去访问);
  • 在远程服务器上新建一个目录Dir;
  • 将本地的一个文件(/root/testFile)上传到远程主机的Dir目录下并重命名为upLoadFile

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
目录
相关文章
|
14天前
|
算法 Linux 调度
深入理解Linux操作系统的进程管理
本文旨在探讨Linux操作系统中的进程管理机制,包括进程的创建、执行、调度和终止等环节。通过对Linux内核中相关模块的分析,揭示其高效的进程管理策略,为开发者提供优化程序性能和资源利用率的参考。
39 1
|
15天前
|
安全 Linux 数据安全/隐私保护
深入Linux操作系统:文件系统和权限管理
在数字世界的海洋中,操作系统是连接用户与硬件的桥梁,而Linux作为其中的佼佼者,其文件系统和权限管理则是这座桥梁上不可或缺的结构。本文将带你探索Linux的文件系统结构,理解文件权限的重要性,并通过实际案例揭示如何有效地管理和控制这些权限。我们将一起航行在Linux的命令行海洋中,解锁文件系统的奥秘,并学习如何保护你的数据免受不必要的访问。
|
16天前
|
搜索推荐 Linux
深入理解Linux操作系统的启动过程
本文旨在揭示Linux操作系统从开机到完全启动的神秘面纱,通过逐步解析BIOS、引导加载程序、内核初始化等关键步骤,帮助读者建立对Linux启动流程的清晰认识。我们将探讨如何自定义和优化这一过程,以实现更高效、更稳定的系统运行。
|
14天前
|
存储 缓存 网络协议
Linux操作系统的内核优化与性能调优####
本文深入探讨了Linux操作系统内核的优化策略与性能调优方法,旨在为系统管理员和高级用户提供一套实用的指南。通过分析内核参数调整、文件系统选择、内存管理及网络配置等关键方面,本文揭示了如何有效提升Linux系统的稳定性和运行效率。不同于常规摘要仅概述内容的做法,本摘要直接指出文章的核心价值——提供具体可行的优化措施,助力读者实现系统性能的飞跃。 ####
|
15天前
|
缓存 监控 网络协议
Linux操作系统的内核优化与实践####
本文旨在探讨Linux操作系统内核的优化策略与实际应用案例,深入分析内核参数调优、编译选项配置及实时性能监控的方法。通过具体实例讲解如何根据不同应用场景调整内核设置,以提升系统性能和稳定性,为系统管理员和技术爱好者提供实用的优化指南。 ####
|
4天前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
41 17
|
14天前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。
|
15天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
39 10
|
17天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
在数字化时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将介绍网络安全漏洞、加密技术和安全意识等方面的内容,并提供一些实用的代码示例。通过阅读本文,您将了解到如何保护自己的网络安全,以及如何提高自己的信息安全意识。
44 10
|
17天前
|
存储 监控 安全
云计算与网络安全:云服务、网络安全、信息安全等技术领域的融合与挑战
本文将探讨云计算与网络安全之间的关系,以及它们在云服务、网络安全和信息安全等技术领域中的融合与挑战。我们将分析云计算的优势和风险,以及如何通过网络安全措施来保护数据和应用程序。我们还将讨论如何确保云服务的可用性和可靠性,以及如何处理网络攻击和数据泄露等问题。最后,我们将提供一些关于如何在云计算环境中实现网络安全的建议和最佳实践。