Module Title: dgt_sys04 – NFS and Samba
Overview:
This module covers the administration of network file sharing on Linux systems. It focuses on the two major technologies used for sharing files across networks: Network File System (NFS) and Samba. The module combines theory with natural-language practice: participants never edit exports or smb.conf by hand, but direct the machine in plain language to set up, configure and manage these services, and then verify every change it makes.
Module Objectives:
1. Understand the fundamentals of network file sharing and its importance in Linux environments.
2. Explore the architecture, configuration, and deployment of NFS for Unix/Linux-based file sharing.
3. Learn about Samba’s role in providing Windows interoperability with Linux/Unix systems using the SMB/CIFS protocols.
4. Practice instructing the machine to set up, secure, and troubleshoot NFS and Samba services, and checking that the result is correct.
5. Learn to specify and verify user permissions, directories, and shares across different platforms.
Modules:
- Introduction to Network File Sharing
- Overview of file sharing concepts
- Benefits of networked file systems
-
Understanding the difference between local and remote file access
-
Network File System (NFS)
- History and development of NFS
- Core components and architecture of NFS
- Step-by-step guide to having the machine install and configure NFS on Linux, and to reading the configuration it produces
- Exports, permissions, and security for NFS shares: what to ask for and what to check
-
Performance tuning and best practices for NFS
-
Samba Overview
- Introduction to Samba and its role in Windows interoperability
- Understanding the SMB/CIFS protocols
-
Key features of Samba: domains, workgroups, and authentication methods
-
Configuring Samba Services
- Describing to the machine how Samba should be installed and set up on Linux systems
- Configuring Samba for various use cases (e.g., standalone server, domain controller) and reviewing the resulting configuration
- Defining user permissions and access controls, and verifying that they are enforced
-
Integrating with existing Active Directory environments
-
Security Considerations
- Best practices for securing NFS and Samba shares
- Firewall rules and SELinux/AppArmor policies: how they work and how to judge the ones the machine proposes
- Encrypting data in transit for both protocols
-
Regular maintenance tasks: updating, logging, monitoring, and auditing
-
Troubleshooting and Performance Optimization
- Common issues with NFS and Samba configurations
- Tools and techniques for diagnosing problems, and how to interpret their output when the machine runs them for you
-
Methods to enhance the performance of file-sharing services
-
Natural-Language Lab Sessions
- Labs in which participants have the machine configure and manage both NFS and Samba setups, then test access from clients and correct its mistakes.
- Scenario-based exercises simulating real-world network environments, including deliberately broken shares to diagnose with the machine.
Target Audience:
This module is intended for system administrators, IT professionals, and network engineers who manage Linux systems or need interoperability between Unix/Linux and Windows networks. Participants should have a basic understanding of the Linux command line and of networking concepts, enough to read the commands the machine runs.
By the end of this module, participants will be able to implement and manage file-sharing services with NFS and Samba in mixed network environments, with attention to performance and security.
The students can push their exercises to the Academy DevOps & SRE Git project. For this module, create a folder with your username as its name in the following subfolder: https://github.com/Garanti-Del-Talento/gdt_academy
