samba

1、常用文件

/etc/samba/smb.conf    #配置文件
/etc/samba/lmhosts   #对应NetBOIS名与主机的IP的文件,一般samba会自动搜索(只对本机生效)

/etc/samba/smbpasswd   #samba密码保存文件,默认不存在
/etc/samba/smbusers   #用户别名,用于适用不同操作系统中用户名习惯。需要配置文件中“username map"选项支持
比如 /etc/samba/smbusers里面的
root = administrator
nobody = guest pcguest smbguest

2、常用命令

testparm    #检测配置文件是否正确
[root@localhost samba]#cat smb.conf | grep -v "^#" | grep -v "^;" | grep -v "#" | uniq    # 过滤查看配置文件


1、配置文件结构

Global Settings
      -[global]:全局设置
      workgroup: 所在工作组名称
      server string: 服务器描述信息
      log file: 日志文件位置
      max log size : 日志文件的最大容量

Share Definitions
      -[homes]: 用户目录共享设置
      -Iprinters]:打印机共享设置
      -[myshare]:自定义名称的共享目录设置

2、Global Settings

workgroup:所在工作组名称
server string:服务器描述信息
log file:日志文件位置
max log size :日志文件的最大容量

3、常见的变量

%V: samba的版本号   
%S: 任意用户可以登陆
%m: client端的NetBIOS主机名
%L: 服务器端的NetBIOS主机名
%u: 当前登陆的用户名
%g: 当前登陆的用户组名

security :安全级别,可用值如下

share: 不需要密码可以访问
user: 使用系统用户,samba密码登陆
server: 由其他服务器提供认证
domain: 由域控制器提供认证

2、Share Definitions

comment: 描述信息
path: 共享的路径
guest ok:允许所有人访问,等同于public
read only:  所有人只读
writable: 所有人可写    # writable 和 read only 同时为yes时,这两个权限有会冲突,谁写在最后谁生效,只写一个就行了
write list:  拥有写权限的用户列表
browseable:是否浏览可见,在网上邻居里可看,一般为yes
valid users:指定可以访问的用户

例如: Share Definitions

[movie]  # 在远程连接成功的文件夹名称
comment= study material  # 备注
path= /study
browseable = yes
writable = yes
guest ok = yes

建立共享目录

mkdir/study   #建立共享目录
chown nobody /study/   #赋予用户访问权限

配置文件修改

[global]
workgroup=MYGROUP
server string= Samba Server Lamp
log file =/var/log/samba/log.%m
max log size = 50
security = share 
passdb backend = tdbsam

访问方式

window的地址栏中输入要访问的ip

每次更改配置服务都要重启samba

vim /etc/samba/smb.conf
service smb restart
service nmb restart

例子

[电影]
comment=stu
path = / stu
browseable =yes
guest ok=yes
writable = yes

Linux客户端访问

smbclient -L  192.168.44.4     #查看主机的共享资源
smbclient  //192.168.44.4/movie      #访问共享目录
[root@localhost ~]# smbclient //192.168.44.3/电影  -U user用户名       首先要在window或者linux上面设置共享文件才行
[root@localhost ~]# smbclient //192.168.44.1/22 -Uxdl

登入之后的样子 get 1.txt 下载 put 1.txt 上传

配置文件修改

[global]
workgroup=MYGROUP
server string = Samba Server Lamp
log file =/var/log/samba/log.%m
max log size = 50
security = user
passdb backend = tdbsam

添加Samba用户

smbpasswd -a系统用户名#注意,要给用户添加samba密码, 该用户必须已经是系统用户
FTP:使用系统用户,系统密码登陆
Samba:使用系统用户,samba登陆

# 将 user1用户加入到root组
[root@localhost ~]#gpasswd -a user1  root       
Adding user user1 to group root

# 修改/public/ 的权限
root@localhost ~]chmod 775  /public/ 
[root@localhost ~]#ll-d/public/
rwxrwxr-x 2 sc root 4096 329 18:27/public/

pdbedit -a -u系统用户   新版的方法
或smbpasswd -a系统用户名       旧版的方法

删除samba用户
pdbedit  -x -u  系统用户名  或
smbpasswd -x    系统用户  

查看samba用户
pdbedit  -L  

把linux做客户端,在linux上连接远程
smbclient //192.168.44.3/jiaoxue -U  jx


vsftpd 是一个可以监控用户输入内容的软件,

1、客户端挂载到本地使

mount -t cifs -o username=用户  原路径  目标路径
mount t cifs -o username=user1  //192.168.44.3/pub   /test

# 自动挂载
vi /etc/fstab
//192.168.44.3/pub/test  cifs
defaults,username=user1,password=45612

查看挂载输入命令: mount
取消挂载输入命令: unmount /test/  

别名文件

vi /etc/samba/smbusers  
user1 = lamp1           原名=别名(多个别名空格隔开)

总结:

Samba  内网使用
      服务器:W  L
      客户端:W  L
      用户:  系统用户,samba密码
      缺点:  只能在内网使用




Vsftp:
      内网外网    服务器:WL
      客户端:WL
      用户:  系统用户,系统密码
      缺点:不能直接在服务器上修改文件


netstat -tunlp # 查看端口
posted @   ty1539  阅读(158)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示