赞
踩
安装samba
sudo apt-get install samba samba-common
查看状态
systemctl status smbd.service
拷贝配置文件
cp /etc/samba/smb.conf{,.backup}
创建samba目录
mkdir -p /samba
为群组授权
chgrp sambashare /samba
创建普通用户
sudo useradd -M -d /samba/wind -s /usr/bin/nologin -G sambashare wind
useradd选项的含义如下:
-M-不创建用户的主目录。我们将手动创建此目录。
-d /samba/wind -将用户的主目录设置为/samba/wind。
-s /usr/sbin/nologin -禁止该用户访问shell。
-G sambashare -将用户添加到sambashare组。
mkdir -p /samba/wind
chown wind:sambashare /samba/wind
sudo chmod 2770 /samba/wind
# 设置密码并启用用户
smbpasswd -a wind
smbpasswd -e wind
smbpasswd 用户名: 修改密码;
-a:向smbpasswd文件中添加用户;
-c:指定samba的配置文件;
-x:从smbpasswd文件中删除用户;
-d:在smbpasswd文件中禁用指定的用户;
-e:在smbpasswd文件中激活指定的用户;
-n:将指定的用户的密码置空。
创建管理用户
sudo useradd -M -d /samba/users -s /usr/bin/nologin -G sambashare sadmin
mkdir -p /samba/users
chown sadmin:sambashare /samba/users
sudo chmod 2770 /samba/users
# 设置密码并启用用户
smbpasswd -a sadmin
smbpasswd -e sadmin
vim /etc/samba/smb.conf
[users] comment = 组 path = /samba/users browseable = yes create mask = 0770 directory mask = 0770 valid users = @sambashare,@sadmin write list = @sambashare,@sadmin [wind] comment = 个人 path = /samba/wind browseable = yes create mask = 0770 directory mask = 0770 valid users = wind,@sadmin write list = wind,@sadmin
需要部署frp 穿透内存来代理samba服务
这里提供frpc 的配置如下:
[common] server_addr = xxx.xxx.xxx.xxx server_port = 7000 ; 日志设置 log_level = info log_max_days = 7 log_file = /var/log/frpc/frpc.log ; 权限设置 authentication_method = token token = xxxxx [smb] type = tcp # 这里得是tcp local_ip = 192.168.50.190 # samba服务器的ip local_port = 445 remote_port = 44502
linux 连接
mac 连接
windows 连接
windows 默认连接端口445,这个是写死了的,我们改不了,只能把它绕过去。
管理员模式打开cmd 终端设置端口转发: (设置完成后不会有任何反应的)
netsh interface portproxy add v4tov4 listenport=445 connectaddress=公网ip connectport=44502
查看设置的转发端口:
netsh interface portproxy show v4tov4
这一步很重要,重启才能生效!
重启后,cmd连接: \\127.0.0.1
就可以访问到公网代理的 samba访问了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。