Centos7.6 部署与使用samba

安装

 yum -y install samba  #安装samba服务端就可以 
systemctl start smb  #启动
systemctl enable smb  #开机自启

查看samba服务进程

[root@localhost ~]# ps -ef | grep 'smb'
root 11273 1 0 09:06 ? 00:00:00 /usr/sbin/smbd --foreground --no-process-group
root 11275 11273 0 09:06 ? 00:00:00 /usr/sbin/smbd --foreground --no-process-group
root 11276 11273 0 09:06 ? 00:00:00 /usr/sbin/smbd --foreground --no-process-group
root 11277 11273 0 09:06 ? 00:00:00 /usr/sbin/smbd --foreground --no-process-group
root 11279 11273 0 09:06 ? 00:00:00 /usr/sbin/smbd --foreground --no-process-group
root 11488 9445 0 15:09 pts/0 00:00:00 grep --color=auto smb

查看samba服务端口

[root@localhost ~]# netstat -anput | grep smbd

tcp        0      0 0.0.0.0:139             0.0.0.0:*               LISTEN      11273/smbd          
tcp        0      0 0.0.0.0:445             0.0.0.0:*               LISTEN      11273/smbd          
tcp        0      0 10.192.27.100:445       10.192.27.98:49396      ESTABLISHED 11279/smbd          
tcp6       0      0 :::139                  :::*                    LISTEN      11273/smbd          
tcp6       0      0 :::445                  :::*                    LISTEN      11273/smbd   

 

修改samba配置文件
vim /etc/samba/smb.conf

[zdxt]
        comment = zdxt zzz
        path = /home/zdxt
        public = no
        admin users = zdxt
        valid users = zdxt
        create mask = 0777
        directory mask = 0777
        browseable = yes
        writable = yes
        force directory mode = 0777
        force create mode = 0777

[zdzd]
        comment = zdzd zzz
        path = /home/zdzd
        public = no
        admin users = zdzd
        valid users = zdzd
        create mask = 0777
        directory mask = 0777
        browseable = yes
        writable = yes
        force directory mode = 0777
        force create mode = 0777
配置文件中增加两个共享模块

 

添加samba用户

这里使用pdbedit (就不需要添先加系统用户:添加用户 useradd -M -s /sbin/nologin zdxt)

 pdbedit -a zdxt  

 pdbedit -a zdzd

[root@localhost ~]# pdbedit -L
zdxt:1000:
zdzd:1001:

 

创建两个共享目录

[root@localhost ~]# mkdir -p /home/zdxt

[root@localhost ~]# mkdir -p /home/zdzd

 

关闭防火墙

 systemctl status firewalld
 systemctl stop firewalld
 systemctl disable firewalld
 vim /etc/selinux/config    #disabled

重启服务

systemctl restart smb

访问

\\IP\共享目录名    账号密码

 

 删除以前windows客户端的访问记录

‍1、如何清除Windows共享登录的用户名密码记录

  在Windows XP系统下,每次用户以共享(samba)方式访问远程主机后,会在本地Windows系统中记录下访问登录时的用户名和密码(如果用户选择了记住用户名 和密码),下次用户访问该主机时,就无需再输入用户名和密码了。通常情况下,这样做能省去用户需要频繁输入用户名和密码的麻烦,但是,如果用户访问同一主机时,使用不同的帐号,一旦记录下密码,就无法再次更换用户了!

  在Windows XP系统下,可以用如下dos命令,清除登录的账户信息:

  【查看已记录的登录信息】

  C:/net use

  【清除记录】

  C:/net use //hostname/IPC$ /delete

  譬如:c:/>net use //192.168.0.1/IPC$ /DELETE

2、在WINDOWS XP中,互访的时候,有个用户登录和密码记录。那么,如何清除这个密码记录的方法?

  点击“开始”菜单->运行->输入 “control userpasswords2”-弹出“用户帐户”对话框,

      再切换到“高级”选项卡->点击"管理密码"->就可以看到网络设置记录的密码都保存在这个弹出来的"存储用户名和密码"的对话框里

      最后选择想要删除的记录点“删除”->再注销/重启电脑就能生效了。

    或者
      开始-设置-控制面板-用户帐号

      点击“”Administrator-在左侧选择“管理我的网络密码”

      在弹出对话框中,找到相关的网络地址,选中,删除即可。

 

 

常见错误

1、xp win2003电脑无法连接samba共享目录

从samba 4.5开始,ntlm auth参数默认值由“yes”变为“no”。导致默认情况下使用NTLM级别LAN Manager身份验证的客户端不允许登录Samba服务器,受影响的客户端包括Windows XP、Windows2003等。

[root@localhost ~]# smbd -V
Version 4.9.1
[root@localhost ~]# 

解决方法(任选一种都可解决):
1. Samba服务器端smb.conf配置文件中添加“ntlm auth = yes”后重启smb服务。
2. Windows XP客户端修改本地安全设置、安全选项、“网络安全:LAN Manager身份验证级别”的值为“仅发送 NTLMv2响应”。

 

 2、(samba启动失败)smb.service: main process exited, code=exited, status=1/FAILURE

按照指示,前往:journalctl -xe 没什么发现,搜的时候有人说也可以查看 journalctl -r 打出来之后我也看不出什么门道来

又看到有人说 smb 方面可以看看 testparm 我打印了一下,结果报以下warning:

复制代码
[root@192 samba]# 
[root@192 samba]# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
WARNING: Ignoring invalid value 'share' for parameter 'security'
Error loading services.
[root@192 samba]# 
复制代码

 

这就好说了,我查看了一下自己SMB的配置文件:

cat /etc/samba/smb.conf

里面显示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[root@192 samba]# cat smb.conf
 
[global]
        workgroup = WORKGROUP
        server string = Ted Samba Server %v
        netbios name = TedSamba
        #security = user
    security = share
        map to guest = Bad User
        passdb backend = tdbsam
 
[FileShare]
        comment = share some files
    path = /home/clj/share
        public = yes
        writeable = yes
        create mask = 0644
        directory mask = 0755
 
[WebDev]
        comment = project development directory
        path = /home/wwwroot/default/
        valid users = ted
        write list = ted
    write list = @www
    validusers = @www
        printable = no
        create mask = 0644
        directory mask = 0755

 

就是里面的 [global] 下面的 security 那里出问题了,我把上面内容调换了一下:

1
2
security = user
#security = share

 这再启动SMB服务器就OK了:

1
systemctl start smb
posted @ 2019-10-15 15:21  冥想心灵  阅读(792)  评论(0编辑  收藏  举报