samba的作用
1.可以用来进行存储
2.可以进行文件共享
3.可以实现不同系统的文件共享
主机1 192.168.2.10 server
主机2 192.168.2.20 client
同系统之间的linux和linux
1.匿名用户登录
server
[root@localhost ~]# yum -y install samba
创建共享目录
[root@localhost ~]# mkdir /samba
[root@localhost ~]# vim /etc/samba/smb.conf
7 workgroup = SAMBA #工作组
8 security = user #用户级别 使用用户名和密码才能共享
9 map to guest = Bad User #支持匿名用户登录
添加:
38 [pub]
39 comment = pub
40 path = /samba
41 public = yes
42 writable = yes
43 browseable = yes
[root@localhost ~]# systemctl start smb
[root@localhost ~]# systemctl enable smb
[root@localhost ~]# smbclient -L localhost
Enter SAMBA\root's password:
放行防火墙
[root@localhost ~]# firewall-cmd --add-service=samba --permanent
success
[root@localhost ~]# firewall-cmd --reload
success
client
[root@localhost ~]# rpm -q samba-client
samba-client-4.7.1-6.el7.x86_64
yum -y install samba-client
[root@localhost ~]# smbclient -L 192.168.2.10 服务端的ip
不需要输入密码 直接回车
挂载
cifs 文件系统类型
[root@localhost ~]# mkdir /client
[root@localhost ~]# mount -t cifs //192.168.2.10/pub /client/ -o guest
验证:
server 创建文件
[root@localhost ~]# touch /samba/moukai
[root@localhost ~]# setenforce 0
client
[root@localhost ~]# ls /client/
moukai
如果出现坏的超级快
[root@localhost ~]# yum -y install cifs-utils
自动挂载
[root@localhost ~]# umount //192.168.2.10/pub
[root@localhost ~]# vim /etc/fstab
//192.168.2.10/pub /client cifs defaults,guest 0 0
[root@localhost ~]# mount -a
本地用户共享
server
[root@localhost ~]# mkdir /samba-share
[root@localhost ~]# vim /etc/samba/smb.conf
9 #map to guest = Bad User
[public] #模块名
comment = public #详细描述
path = /samba-share #实际的共享目录
public = no #不是公开的
writable = yes #可写的权限
browseable = yes #可读的权限
本地用户添加到samba服务 作为登录samba的用户
[root@localhost ~]# useradd test
[root@localhost ~]# smbpasswd -a test 添加
New SMB password:
Retype new SMB password:
Added user test.
smbpasswd -x 用户名 删除用户
[root@localhost ~]# systemctl restart smb
服务端先验证自己没有问题
[root@localhost ~]# smbclient -L localhost -U test
Enter SAMBA\test's password:
client:
[root@localhost ~]# smbclient -L 192.168.2.10 -U test
Enter SAMBA\test's password:
Sharename Type Comment
[root@localhost ~]# mkdir /client-share
[root@localhost ~]# mount -t cifs -o user=test,password=123.com //192.168.2.10/public /client-share/
[root@localhost ~]# df -hT
//192.168.2.10/public cifs 37G 4.0G 34G 11% /client-share
验证:
server:
[root@localhost ~]# touch /samba-share/lalalala
client:
[root@localhost ~]# ls /client-share/
lalalala
自动挂载
[root@localhost ~]# umount //192.168.2.10/public
[root@localhost ~]# vim /etc/fstab
//192.168.2.10/public /client-share cifs defaults,user=test,password=123.com 0 0
[root@localhost ~]# mount -a
[root@localhost ~]# df -hT
samba linux和windows系统的数据共享
物理机---虚拟机---ping
samba
[root@localhost ~]# mkdir /data
[root@localhost ~]# vim /etc/samba/smb.conf
[aa]
comment = aa
path = /data
valid users = aa #管理用户
write list = aa #能写入的用户
public = no #不公开
create mask = 0644 #创建文件的权限
directory mask = 0755 #创建目录的权限
[root@localhost ~]# useradd -s /sbin/nologin aa #创建不能登录系统的用户 这样这个用户只能共享samba 没有剩余的权限
[root@localhost ~]# smbpasswd -a aa
[root@localhost ~]# chown aa:aa /data/
[root@localhost ~]# systemctl restart smb
[root@localhost ~]# setenforce 0
[root@localhost ~]# firewall-cmd --add-service=samba --permanent
success
[root@localhost ~]# firewall-cmd --reload
success
windows
网络 搜索 \\192.168.2.10 (服务端的ip) 回车 aa 123.com 可以查看到共享的块 aa 创建文件 linux查看
也可以他通过添加网络映射器 ---从而让samba共享的目录称为一个盘 能更快捷的找到samba共享的目录
ftp文件共享
主要用于存储,采用c/s架构,客户端可以通过登录server,去实现文件的上传,删除的操作
ftp工作模式
主动传输模式
client使用N端口向ftp的server的21端口进行请求,并且会告诉ftp的server其接收数据的端口为n+1端口,建立连接成功后,ftp的server会使用其20端口和client的n+1端口进行连接,传输数据
优点:服务端配置简单,利于服务端的安全管理,只需要开放21和20端口
缺点:如果客户端开启了防火墙,限制了端口,就有可能接收不了服务端响应的数据