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

目录
相关文章
|
3天前
|
监控 安全 Linux
【专栏】Linux 中有哪些常用的网络命令,分别适用于什么场景?
【4月更文挑战第28天】本文介绍了Linux中六个常用的网络命令:ping、traceroute、netstat、nmap、ifconfig和ip,以及它们在测试网络连通性、追踪路由、查看网络状态、安全扫描和接口配置等场景的应用。通过学习和运用这些命令,系统管理员和网络爱好者能更有效地诊断和管理网络问题,确保网络稳定运行。
|
4天前
|
网络协议 算法 Linux
【Linux】深入探索:Linux网络调试、追踪与优化
【Linux】深入探索:Linux网络调试、追踪与优化
|
1天前
|
JSON 网络协议 Linux
Linux ip命令:网络的瑞士军刀
【4月更文挑战第25天】
7 1
|
2天前
|
缓存 网络协议 Linux
Linux 网络命令大全,详细归纳!
【4月更文挑战第24天】
22 3
Linux 网络命令大全,详细归纳!
|
3天前
|
网络协议 JavaScript Linux
Linux常用网络指令(下)
Linux常用网络指令(下)
10 0
|
3天前
|
Linux
Linux常用网络指令(上)
Linux常用网络指令(上)
6 0
|
3天前
|
安全 Linux 网络安全
【专栏】Linux 网络扫描工具:nmap,涨知识的时间到了!
【4月更文挑战第28天】nmap, 开源网络扫描工具,用于探测主机、网络信息,包括开放端口、服务类型、OS等。本文分三部分介绍:1) nmap简介与基本原理;2) 使用方法和高级技巧,如脚本扩展;3) 实际应用,如网络安全评估、系统管理和渗透测试。学习nmap需注意合规性,持续探索新技巧,以提升网络管理与安全能力。一起开始nmap的探索之旅吧!
|
3天前
|
安全 网络协议 Linux
【专栏】一文教你玩转 Linux 的 ping 命令,从此成为 Linux 网络高手
【4月更文挑战第28天】本文详细介绍了Linux系统中ping命令的使用,包括其基本语法、输出信息、常用参数及高级用法。通过ping,用户可测试网络连通性、诊断故障及评估性能。此外,文章还讨论了ping在不同协议、模拟网络环境及与其他命令结合使用时的场景。注意防火墙和网络环境可能影响ping结果,理解错误信息有助于网络问题排查。熟练掌握ping命令,能助你成为Linux网络专家。不断学习和实践,提升网络技能,为构建稳定网络环境贡献力量。
|
3天前
|
运维 监控 安全
【专栏】运维工程师必须知道的 11 个 Linux 网络命令
【4月更文挑战第28天】本文介绍了11个必备的Linux网络命令,包括ifconfig、ip、ping、traceroute、netstat、tcpdump、ss、telnet、ftp、ssh和nmap,这些命令在网络配置、故障排查和性能监控中发挥关键作用。通过实例分析,强调了它们在实际工作中的综合应用,帮助运维工程师提升效率和应对网络挑战。学习和熟练运用这些命令是提升网络管理能力的基础。
|
4天前
|
运维 网络协议 Linux
【Linux】CentOS网络故障排查大揭秘: 实战攻略解读
【Linux】CentOS网络故障排查大揭秘: 实战攻略解读

热门文章

最新文章