Linux server下搭建共享文件服务
- 在centos7系统服务器下搭建samba文件共享服务,并通过Windows系统或浏览器直接访问操作
这里使用samba服务,支持SMB/CIFS协议
- 安装Samba
sudo yum install -y samba samba-client samba-common
- 创建共享目录并设置权限
sudo mkdir -p /samba/share
sudo chmod -R 777 /samba/share #放出所有权限(仅用于测试环境或者内部安全环境)
sudo chown -R nobody:nobody /samba/share #让Samba用户可访问
- 配置Samba
sudo vim /etc/samba/smb.conf
在该文件末尾添加以下内容
[share]
path = /samba/share
browseable = yes
writable = yes
guest ok = yes # 允许匿名访问(不安全,适合测试)此处解释不要复制进文件
read only = no
此处生产环境建议在配置文件中添加,然后关闭匿名访问即删除该行guest ok =yes
valid user = user1,user2,user3
然后再外面执行以下命令设置用户密码
smbpasswd -a user1
smbpasswd -a user2
- 启动samba服务
sudo systemctl start smb
sudo systemctl enable smb
sudo systemctl start nmb # NetBIOS服务(可选)
sudo systemctl enable nmb
- 开放防火墙,关闭selinux(测试环境直接关闭防火墙,生产环境加入规则)
sudo firewall-cmd --permanent --add-service=samba
sudo firewall-cmd –reload
sudo setenforce 0
确认selinux为关闭状态
sudo getenforce
- 然后访问文件并测试传输
- 直接从系统访问
打开文件资源管理器
输入用户名/密码(如果设置了valid users)
就可以正常传输文件了
可以右键该文件夹,然后映射到本地磁盘,就不需要每次去访问了
从浏览器访问
需要在服务器搭建WebDAV模式
WebDAV允许通过http/https上传/下载文件,适合浏览器直接访问
安装Apache和WebDAV模块
sudo yum install -y httpd
启用WebDAV
sudo vim /etc/httpd/conf.d/webdav.conf
写入以下内容
DavLockDB /var/lib/dav/lockdb
<Directory "/samba/share">
Dav On
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Alias /webdav /samba/share
设置WebDAV用户认证
sudo htpasswd -c /etc/httpd/.htpasswd user1 # 创建用户并设置密码
然后在添加以下内容
AuthType Basic
AuthName "WebDAV Access"
AuthUserFile /etc/httpd/.htpasswd
Require valid-user
启动Apache
sudo systemctl start httpd
sudo systemctl enable httpd
开放防火墙
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd –reload
sudo firewall-cmd –list-service查看当前设置是否生效
然后打开浏览器访问
输入http://Server_IP/webdav