samba

Samba 是在 Linux 和 UNIX 系统上实现 SMB 协议的一个免费软件,由服务器及客户程序构成,SMB(Server Messages Block,)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB 协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOSover TCP/IP”使得 Samba 不但能与局域网络主机分享源,还能与全世界的电脑分享资源。

1)准备工作

1). 防火墙关闭,selinux开启;

2). desktop:172.25.254.126 (desktop126.example.com)

   server:172.25.254.139(server139.example.com)

3). vim /etc/hosts

2samba简单配置

**- samba服务端配置

yum install samba-client samba-common samba -y//安装samba服务端需要的软件

systemctl start smb

systemctl start nmb//启动samba服务,smb(tcp),nmb(udp),并设置服务开机自启

netstat -antlupe | grep -E 'nmb|smb'//显示smb,nmb端口

**- 客户端检测:

smbclient -L //172.25.254.139//客户端匿名用户登陆samba服务,查看服务端共享的内容

(3)通过samba共享目录之匿名用户访问

**- samba服务端配置:

1). 创建共享目录

mkdir /smbshare/smb{1..3} -p

chcon -t samba_share_t /smbshare/ -R

//临时设置selinux安全上下文,参考文件/etc/samba/smb.conf

semanage fcontext -a -t samba_share_t '/smbshare(/.*)?'

restorecon -FvvR /smbshare

2). 修改配置/etc/samba/smb.conf,末尾添加内容如下:

vim /etc/samba/smb.conf

@@

124map to guest = bad user

322 # my samba share directory is /smbshare

323[mywestos]

324comment = My samba share

325path = /smbshare

326public = yes

327 guest ok = yes

328writable = yes

@@

systemctl restart smb

**- 客户端检测:

smbclient -L //server139//显示server139主机共享的目录

smbclient //server139/mywestos//交互式访问samba服务共享的内容

yum install cifs-utils -y

mount //172.25.254.139/mywestos /mnt/ -o username=guest

vim /etc/fstab//设置samba共享永久挂载

@@

//server139/mywestos /mnt cifs defaults 0 0

@@

注意:不能对samba共享目录操作时,解决办法:修改服务端共享目录的权限,

chmod 777 /smbshare

(4)通过samba共享本地用户家目录之本地用户访问

**- samba服务端配置:

1).创建可以使用samba的帐号和密码

useradd user1

useradd user2

useradd user3

smbpasswd -a user1

smbpasswd -a user2

smbpasswd -a user3

setsebool -P samba_enable_home_dirs on

**- 客户端检测:

smbclient -L //server139 -U user1

smbclient -L //server139/user1 -U user1

(5)通过samba共享新建目录之本地用户访问

**- samba服务端配置:

groupadd smbgroup

usermod -aG smbgroup user1

usermod -aG smbgroup user2

Vim /etc/samba/smb.conf

@@

323# my samba share directory is /smbshare

324[mywestos]

325comment = My samba share

326path = /smbshare

327 ;public = yes

328 ;guest ok = yes

329valid users = user2

//允许哪些用户或者用户组访问该共享目录,+smbgroup|@smbgroup

330write list = @smbgroup

//允许哪些用户或者用户组往该共享目录中写入内容

@@

**- 客户端检测:

mount //server139/mywestos /mnt -o username=user1,passwd=user1

**永久挂载1:

vim /etc/fstab

@@

//server139/mywestos /mnt cifs defaults,username=user1,password=user10 0

@@

**永久挂载2:

vim /root/smbpasswd

@@

user=user1

pass=user1

@@

vim /etc/fstab

@@

//server139/mywestos /mnt cifs defaults,credentials=/root/smbpasswd0 0

@@

(6)客户端多用户挂载

**- 客户端操作:

yum install cifs-utils -y

vim /root/smbpasswd

@@

user=user1

pass=user1

user=user2

pass=user2

user=user3

pass=user3

@@

vim /etc/fstab

@@

//server139/mywestos /mnt cifs defaults, credentials=/root/smbpasswd,multiuser,     sec=ntlmssp0 0

@@

检验方式:

在客户端新建用户user{1,2,3},当切换用户到user1用户时,默认访问不到/mnt的内容。

激活方式如下:

cifscreds add server139


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章