博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Fedora16/RedHat6.4下配置samba
阅读量:4070 次
发布时间:2019-05-25

本文共 5036 字,大约阅读时间需要 16 分钟。

目录


以前每次安装samba,都要折腾一会。今天仔细研究了下,发现配置起来还是很容易的。因此记录下来,方便日后复用。

1.samba的原理

  SMB协议是建立在NetBIOS协议之上的应用协议,是基于TCP138、139两个端口的服务,NetBIOS出现之后,Microsoft就使用NetBIOS实现了一个网络文件/打印服务系统。这个系统基于NetBIOS设定了一套文件共享协议,Microsoft称之为SMB(Server Message Block)协议,这个协议被用于LanManager和Windows服务器系统中,实现不同计算机之间共享打印机和文件等。因此,为了让Windows和Unix/Linux计算机相集成,最好的办法就是在Unix/Linux计算机中安装支持SMB协议的软件。这样使用Windows的客户端不需要更改设置,就能像使用Windows NT或Windows 2000服务器一样,使用Unix/Linux计算机上的共享资源了。

2.安装samba

  1). 先把cd挂载到/mnt/cdrom目录下。

[root@localhost shltsh]# mkdir /mnt/cdrom[root@localhost shltsh]# mount -t iso9660 /dev/cdrom /mnt/cdrommount: block device /dev/sr0 is write-protected, mounting read-only

  2). 切换到安装盘的Packages目录下,安装samba。

[root@localhost shltsh]# cd /mnt/cdrom/Packages/[root@localhost Packages]# ls *samba*kdenetwork-fileshare-samba-4.7.2-2.fc16.i686.rpm samba-common-3.6.0-69rc2.fc16.1.i686.rpm system-config-samba-docs-1.0.9-2.fc15.noarch.rpmsamba-3.6.0-69rc2.fc16.1.i686.rpm samba-winbind-clients-3.6.0-69rc2.fc16.1.i686.rpmsamba-client-3.6.0-69rc2.fc16.1.i686.rpm system-config-samba-1.2.93-1.fc16.noarch.rpm[root@localhost Packages]# rpm -ivh samba-3.6.0-69rc2.fc16.1.i686.rpm warning: samba-3.6.0-69rc2.fc16.1.i686.rpm: Header V3 RSA/SHA256 Signature, key ID a82ba4b7: NOKEYerror: Failed dependencies:samba-common = 0:3.6.0-69rc2.fc16.1 is needed by samba-0:3.6.0-69rc2.fc16.1.i686[root@localhost Packages]# rpm -ivh samba-common-3.6.0-69rc2.fc16.1.i686.rpm warning: samba-common-3.6.0-69rc2.fc16.1.i686.rpm: Header V3 RSA/SHA256 Signature, key ID a82ba4b7: NOKEYPreparing... ########################################### [100%]1:samba-common ########################################### [100%][root@localhost Packages]# rpm -ivh samba-3.6.0-69rc2.fc16.1.i686.rpm warning: samba-3.6.0-69rc2.fc16.1.i686.rpm: Header V3 RSA/SHA256 Signature, key ID a82ba4b7: NOKEYPreparing... ########################################### [100%]1:samba ########################################### [100%]

3.配置samba

  samba的配置在/etc/samba/smb.conf目录下。本文的目的是将文件共享在局域网中,并使得共享目录有访问以及读写权限。

[root@localhost Packages]# vi /etc/samba/smb.conf

  设置下面的各项

workgroup = MYGROUP                     //设置工作组  server string = Samba Server Version %v //共享文件(夹)的描述信息  netbios name = MYSERVER                 //NetBIOS名字。Fedora16默认没有启动  log file = /var/log/samba/log.%m        //日志文件的保存路径,%m代表windows主机名  max log size = 50                       //日志的最大容量  security = user                         //安全级别。user需要用户名以及密码,share不需要

  接下来设置具体的需要共享的文件的信息。

[samba]                 //建立一个名字为samba的共享文件  comment = share folder  //描述信息  path = /home/samba      //需要共享的文件(夹)路径  public = no             //是否允许guest用户访问(相当于guest ok = yes/no)  writable = yes          //是否可写  printable = no          //指定打印能否启动。取值为no时,则无打印权限  write list = @users     //可写用户的列表(@代表用户组)

  配置信息准备好之后,接下来设置共享文件(夹)的信息

[root@localhost ~]# mkdir /home/samba            //创建共享文件的目录  [root@localhost ~]# chown -R nobody /home/samba/ //设置目录的拥有者为nobody  [root@localhost ~]# chmod 777 /home/samba/       //设置目录属性(权限)为777,即任意读写以及执行权

  在进行到服务端的连接之前,需要预先对用于登录Samba的用户进行设置。这里我们以标准的Samba用户数据库管理工具“smbpasswd”为例,创建用于登录Samba的用户数据。这里需要注意的一点:用smbpasswd创建用户的前提是,系统用户中存在该用户--在基于系统用户之上,才可以创建该用户在Samba用户数据库中的信息。

[root@localhost samba]# smbpasswd -a samba  New SMB password:                       //输入密码  Retype new SMB password:                //再次确认输入密码  Added user samba.

4.防火墙的设置

  在启用samba服务之前,需要进行防火墙的设置。开放samba执行时所需要的端口。

[root@localhost ~]# vi /etc/sysconfig/iptables

  //打开后的内容如下:

# Firewall configuration written by system-config-firewall  # Manual customization of this file is not recommended.  *filter  :INPUT ACCEPT [0:0]  :FORWARD ACCEPT [0:0]  :OUTPUT ACCEPT [0:0]  -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT  -A INPUT -p icmp -j ACCEPT  -A INPUT -i lo -j ACCEPT  -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT  -A INPUT -j REJECT --reject-with icmp-host-prohibited  -A FORWARD -j REJECT --reject-with icmp-host-prohibited  COMMIT

  在这一行(*****tcp --dport 22 -j ACCEPT)后面加入下面的几行:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT  -A INPUT -m state --state NEW -m TCP -p tcp --dport 445 -j ACCEPT  -A INPUT -p udp -m udp --dport 137 -j ACCEPT  -A INPUT -p udp -m udp --dport 138 -j ACCEPT

  重启启动iptables,使规则生效

[root@localhost ~]#/etc/rc.d/init.d/iptables restart  restartFlushing firewall rules: [ OK ]  Setting chains to policy ACCEPT: filter [ OK ]  Unloading iptables modules: [ OK ]  Applying iptables firewall rules: [ OK ]

5.启动samba服务

  其中,samba的服务中包含两个守护进程(后台进程), 即smb以及nmb.

[root@localhost ~]# chkconfig smb on             //设置samba自启动  [root@localhost ~]# chkconfig --list smb         //确认samba的启动标签,其中2-5应该为on状态  smb 0:off 1:off 2:on 3:on 4:on 5:on 6:off  [root@localhost ~]# chkconfig nmb on             //设置nmb自启动  [root@localhost ~]# chkconfig --list nmb         //确认nmb的启动标签,其中2-5应该为on状态  nmb 0:off 1:off 2:on 3:on 4:on 5:on 6:off  [root@localhost ~]# /etc/rc.d/init.d/smb restart //启动samba服务  Restarting smb (via systemctl): [ OK ]  [root@localhost ~]# /etc/rc.d/init.d/nmb restart //启动nmb服务  Restarting nmb (via systemctl): [ OK ]

转载地址:http://qleji.baihongyu.com/

你可能感兴趣的文章
星环后台研发实习面经
查看>>
大数相乘不能用自带大数类型
查看>>
字节跳动后端开发一面
查看>>
CentOS Tensorflow 基础环境配置
查看>>
centOS7安装FTP
查看>>
FTP的命令
查看>>
CentOS操作系统下安装yum的方法
查看>>
ping 报name or service not known
查看>>
FTP 常见问题
查看>>
zookeeper单机集群安装
查看>>
do_generic_file_read()函数
查看>>
Python学习笔记之数据类型
查看>>
Python学习笔记之特点
查看>>
Python学习笔记之安装
查看>>
shell 快捷键
查看>>
VIM滚屏操作
查看>>
EMC 2014存储布局及十大新技术要点
查看>>
linux内核内存管理(zone_dma zone_normal zone_highmem)
查看>>
将file文件内容转成字符串
查看>>
循环队列---数据结构和算法
查看>>