Samba 1.0服务部署
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。
SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。
上面是一些官方的解释,那对我而言,会怎么用呢,比如不用通过ftp软件把window的文件上传到linux服务器了,在linux服务器部署samba服务后,只要在window本地映射一个盘,以后如果想向服务器那里上传东西,就可以往这个盘里移动东西即可
下面展示是以linux centos7.2做为samba服务器,win10做为客户端
- 安装samba服务包
yum -y install samba
rpm -q samba 是否安装成功
netstat -anp |grep 445 查看445端口
- 编辑smb配置文件
vi /etc/samba/smb.conf
[global] workgroup = SAMBA server string = Samba Server Version %v netbios name = Linux-Server log file = /var/log/samba/%m.log max log size = 10240 security = user # share passdb backend = tdbsam hosts allow = 192.168.56.1 192.168.1.102 # 允许客户端访问的ip [homes] comment = Home Directories valid users = %S, %D%w%S browseable = No read only = No inherit acls = Yes [printers] comment = All Printers path = /var/tmp printable = Yes create mask = 0600 browseable = No [print$] comment = Printer Drivers path = /var/lib/samba/drivers write list = @printadmin root force group = @printadmin create mask = 0664 directory mask = 0775 [shares] # 共享文件目录 path = /smbtest/shares # 是否允许guest访问 public = no # 可访问的用户组、用户 valid user = smbusr # 是否浏览权限 browseable = yes # 是否可写权限 writable = yes
- 添加测试用户
useradd smbusr -d /smbtest/shares -s /bin/false 设置家目录,false只能访问共享目录 chown smbusr:smbusr /smbtest/shares -R 给目录赋给用户和用户组 smbpasswd -a smbusr
- 重新启动smb服务
先用这条命令查看启动状态 systemctl status smb 如果未启动 systemctl start smb 如果已启动 systemctl restart smb
- 防火墙放行smb端口
开启防火墙端口 udp137 138 tcp 139 445 有时是vi /etc/sysconfig/iptables systemctl start firewalld firewall-cmd --zone=public --add-port=80/tcp --permanent systemctl restart firewalld firewall-cmd --zone=public --list-ports
- 关闭selinux
vi /etc/selinux/config 或 setenforce 0 getenforce 查看 #SELINUX=enforcing #注释 # SELINUXTYPE= can take one of three values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. #SELINUXTYPE=targeted #注释 SELINUX=DISABLED # 加这行
另外如果你想设置服务器设置为静态ip,你可以
vi /etc/sysconfig/network-scriptsifcfg-enp0s3 systemctl restart network TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="static" #关注点 DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" NAME="enp0s3" UUID="e2b9d22b-0a5a-44cc-abf8-75d7f9458829" DEVICE="enp0s3" ONBOOT="yes" #关注点 #添加下面这几行 IPADDR=192.168.1.103 NETMASK=255.255.255.0 GATEWAY=192.168.1.254
加入开机自启动项
chkconfig smb on 设置开启自启动 reboot 让开机自动启动项
客户端验证
其中访问 ip就是服务端ip,按照下列步骤,映射后进行文件常用操作,对比客户端和服务端
如果只要用v1服务可以参照下面的