Qu'est-ce que la samba sous Linux

青灯夜游
青灯夜游original
2022-04-14 17:23:585752parcourir

Sous Linux, samba est un logiciel open source basé sur le protocole SMB. C'est un logiciel qui permet au système Linux d'appliquer le protocole de communication réseau Microsoft. Le logiciel samba peut être utilisé pour le partage de fichiers entre Windows et Linux et pour le partage de ressources entre Linux et Linux.

Qu'est-ce que la samba sous Linux

L'environnement d'exploitation de ce tutoriel : système linux5.9.8, ordinateur Dell G3.

1. Présentation de Samba

1. Introduction à samba

Samba est un logiciel gratuit qui implémente le protocole SMB sur les systèmes Linux et UNIX.

SMB est un protocole de communication permettant de partager des fichiers et des imprimantes sur un réseau local. Il fournit des services de partage de fichiers, d'imprimantes et d'autres ressources entre différents ordinateurs du réseau local.

Le protocole SMB est un protocole de type C/S grâce auquel les clients peuvent accéder aux systèmes de fichiers partagés, aux imprimantes et à d'autres ressources sur le serveur.

samba est un logiciel qui permet aux systèmes Linux d'appliquer les protocoles de communication réseau Microsoft. La fonction la plus importante de samba est qu'il peut être utilisé pour le partage direct de fichiers et le partage d'impression entre les systèmes Linux et Windows. et Linux Le partage peut également être utilisé pour partager des ressources entre Linux et Linux.

Composition du service Samba

1) SMB est le service de démarrage principal de samba. Il est principalement chargé d'établir un dialogue entre le serveur Linux samba et le client samba, d'authentifier l'identité de l'utilisateur et de fournir l'accès au fichier et à l'impression. système. Uniquement SMB Ce n'est que lorsque le service est démarré que le partage de fichiers peut être réalisé et écouter le port TCP 139.

2) Le service NMB est responsable de l'analyse, similaire à la fonction implémentée par DNS. NMB peut faire correspondre le nom du groupe de travail partagé par le système Linux avec son IP. Si le service NMB n'est pas démarré, le fichier partagé est uniquement accessible. via IP Écoutez sur les ports UDP 137 et 138.

Installer le service samba

yum -y install samba

Vérifiez l'état de l'installation

rpm -qa | grep samba

2 port d'écoute samba

.
TCP UDP
139 | 445 137 |
    Le service correspondant au port tcp est le service smbd, dont le rôle est de fournir un accès partagé aux fichiers et ressources d'impression du serveur
  • Le service correspondant au port udp est le service nmbd, dont le rôle est de fournir une résolution basée sur les noms d'hôtes NetBIOS

3. processus samba

processus correspond à nmbd correspond à netbios smb d correspond à le protocole cifswinbindd + ldap Correspond à Windows AD Active Directory

4.

sont tous des utilisateurs du système /etc/passwdS Le service amba a son propre fichier de mot de passe passé au niveau de sécurité smbpasswd -a USERNAME
//smbpasswd 命令:
    -a Sys_User     //添加系统用户为 samba 用户并为其设置密码
    -d              //禁用用户帐号
    -e              //启用用户帐号
    -x              //删除用户帐号
 
 
[root@localhost ~]# yum -y install samba-*
[root@localhost ~]# useradd tom
[root@localhost ~]# smbpasswd -a tom
New SMB password:
Retype new SMB password:
Added user tom.
5
smbpasswd -a USERNAME 命令设置
#测试配置文件是否有语法错误,以及显示最终生效的配置。使用 testparm 命令
[root@localhost ~]# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Loaded services file OK.
Server role: ROLE_STANDALONE
......

5. samba 安全级别

Samba 服务器的安全级别有三个,分别是 user,server,domain. Le serveur Samba dispose de trois niveaux de sécurité, à savoir utilisateur, serveur et domaine

Niveau de sécurité Fonction
utilisateur Authentification locale
serveur Utilisateur l'identité est authentifiée par un autre serveur désigné
domaine Authentification par contrôleur de domaine
  • La version précédente de samba prenait en charge quatre niveaux de sécurité, à savoir partage, utilisateur, serveur, domaine
  • share est utilisé pour définir up accès anonyme, mais La version actuelle ne prend plus en charge le partage, mais l'accès anonyme peut toujours être obtenu, mais la méthode de configuration a changé

6. (fichier de configuration principal)

  • Samba a trois composants principaux
Fonction[global]Configuration globale, les paramètres ici sont valables pour l'ensemble du serveur samba[homes] Paramètres de partage du répertoire hôte, utilisés ici pour définir le partage par défaut pour les utilisateurs Linux, correspondant au répertoire personnel de l'utilisateur. Lorsqu'un utilisateur accède à un répertoire partagé portant le même nom que son nom d'utilisateur sur le serveur, il sera automatiquement mappé au répertoire personnel de l'utilisateur après vérification[imprimantes]Paramètres de partage d'imprimante

7. 常用配置文件参数

参数 作用
workgroup 表示设置工作组名称
server string 表示描述 samba 服务器
security 表示设置安全级别,其值可为 share、user、server、domain
passdb backend 表示设置共享帐户文件的类型,其值可为 tdbsam(tdb数据库文件)、ldapsam(LDAP目录认证)、smbpasswd(兼容旧版本 samba 密码文件)
comment 表示设置对应共享目录的注释,说明信息,即文件共享名
browseable 表示设置共享是否可见
writable 表示设置目录是否可写
path 表示共享目录的路径
guest ok 表示设置是否所有人均可访问共享目录
public 表示设置是否允许匿名用户访问
write list 表示设置允许写的用户和组,组要用 @ 表示,例如 write list = root,@root
valid users 设置可以访问的用户和组,例如 valid users = root,@root
hosts deny 设置拒绝哪台主机访问,例如 hosts deny = 192.168.10.100
hosts allow 设置允许哪台主机访问,例如 hosts allow = 192.168.10.200
printable 表示设置是否为打印机
#测试配置文件是否有语法错误,以及显示最终生效的配置。使用 testparm 命令
[root@localhost ~]# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Loaded services file OK.
Server role: ROLE_STANDALONE
......

二、搭建匿名用户共享服务器(Linux - Linux)

1. 环境准备

IP 主机 系统
192.168.10.20 server CentOS7
192.168.10.30 client CentOS7
systemctl stop firewalld && systemctl disable firewalld
setenforce 0
yum -y install ntp && ntpdate ntp.aliyun.com

//server
hostnamectl set-hostname server
su
//client
hostnamectl set-hostname client
su

2. 服务端

yum -y install samba-* &> /dev/null
systemctl start smb && systemctl enable smb

#添加全局配置
vim /etc/samba/smb.conf
......
[global]
        workgroup = SAMBA
        security = user
        map to guest = Bad User
......

#创建共享文件夹
mkdir -p /opt/yc
chmod 777 /opt/yc/
ll /opt/

#配置共享
cat >> /etc/samba/smb.conf << EOF
[yc]
comment = yc
path = /opt/yc
browseable = yes
guest ok = yes
writable = yes
public = yes
EOF

#测试配置文件是否有误
testparm

#重启服务
systemctl restart smb

3. 客户端

yum -y install samba-* &> /dev/null
systemctl start smb && systemctl enable smb

#客户端验证
smbclient -L 192.168.10.20 -U &#39;Bad User&#39;	#123456
mkdir -p /opt/smb
mount -t cifs //192.168.10.20/yc /opt/smb/ -o username=&#39;Bad User&#39;
df -h

#在客户端上创建共享目录,文件
cd /opt/smb/ && touch test && mkdir yanchuang
ls

4. 服务端上验证

[root@server ~]#cd /opt/yc
[root@server /opt/yc]#ls
test  yanchuang

三、Windows 访问共享文件

同网段 windows 虚拟机访问

Quest-ce que la samba sous Linux
Quest-ce que la samba sous Linux
Quest-ce que la samba sous Linux

不同网段 windows 虚拟机访问

  • 需要认证

Quest-ce que la samba sous Linux

相关推荐:《Linux视频教程

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Que signifie Linux NFS ?Article suivant:Que signifie Linux NFS ?