samba

安装配置samba:

准备工作:

173/udp(NetBIOS)

138/udp

139/tcp

445/tcp

这些端口已经启动。

然后确定selinux已经关闭(#getenforce)。

一般我们装好系统之后samba都会安装的:yum list all samba*

这里我选用的是samba3x.i386  3.5.10-0.107.el5 版本

而一般系统默认为 samba.i386     3.0.33-3.37.el5  版本(卸载:rpm -e samba-client samba-common)

然后安装  samba3x.i386  3.5.10-0.107.el5 版本(yum -y install samba3x samba3x-client samba3x-common)

这种方法只局限于笔者所采用的环境,嘿嘿,其实这些简单安装你懂得。。。

当samba安装好之后它会启动两个进程:nmbd(提供NetBIOS)和smbd(提供文件共享)

samba的服务脚本:/etc/rc.d/init.d/smb

samba的配置文件:/etc/samba/所有文件,主配置文件是:smb.conf

打开主配置文件:vim smb.conf

解析:所有#开头的都是注释

      所有;开头的也是注释但是这个注释为可以启用的参数或指令或选项

  #======================= Global Settings ==================全局配置(定义),对所有共享都有效。

  #======================= Share Definitions ================家目录设置,共享定义。

 其中:

 [printers]                                                   共享名称

        comment = All Printers

        path = /var/spool/samba                                      共享路径

        browseable = no

        guest ok = no

        writable = no

        printable = yes

 # ----------------------- Netwrok Related Options -------------------------

#

# workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH

#

# server string is the equivalent of the NT Description field

#

# netbios name can be used to specify a server name not tied to the hostname

#

# Interfaces lets you configure Samba to use multiple interfaces

# If you have multiple network interfaces then you can list the ones

# you want to listen on (never omit localhost)

#

# Hosts Allow/Hosts Deny lets you restrict who can connect, and you can

# specifiy it as a per share option as well

#

        workgroup = MYGROUP                             工作组

        server string = Samba Server Version %v          描述信息 %V为宏(类似常量一次定义永久有效)


;       netbios name = MYSERVER                         当前这台主机的netbios名称,没有启用就默认为当前主机的主机名的第一段


;       interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24 

;       hosts allow = 127. 192.168.12. 192.168.13.

 # --------------------------- Logging Options --------------------------关于日志的选项

#

# Log File let you specify where to put logs and how to split them up.

#

# Max Log Size let you specify the max size log files should reach


        # logs split per machine                     每个客户端来访问时使用独立的日志文件

        log file = /var/log/samba/log.%m             客户端主机自己的IP地址或名字

        # max 50KB per log file, then rotate

        max log size = 50                            日志文件最大为50KB


 # ----------------------- Standalone Server Options ----------------------独立守护进程

#

# Scurity can be set to user, share(deprecated) or server(deprecated)

#

# Backend to store user information in. New installations should 

# use either tdbsam or ldapsam. smbpasswd is available for backwards 

# compatibility. tdbsam requires no further configuration.


        security = user                      一种级别

        passdb backend = tdbsam              用户的账号和密码所存放的格式


 # ----------------------- Browser Control Options ------------------------浏览时的控制信息

#

# set local master to no if you don't want Samba to become a master

# browser on your network. Otherwise the normal election rules apply

#

# OS Level determines the precedence of this server in master browser

# elections. The default value should be reasonable

#

# Preferred Master causes Samba to force a local browser election on startup

# and gives it a slightly higher chance of winning the election

;       local master = no

;       os level = 33

;       preferred master = yes


 #============================ Share Definitions ==========================共享定义


[homes]                             它是定义一个用户是否可以通过samba访问自己的家目录的,对于不同的用户来讲它显示不同结果的

        comment = Home Directories          注释,说明信息

        browseable = no                     是否被其他用户看到浏览到

        writable = yes                      是否具有写权限

;       valid users = %S

;       valid users = MYDOMAIN\%S


[printers]                                   打印机

        comment = All Printers               所有打印机

        path = /var/spool/samba              路径

        browseable = no                      是否被其他用户看到浏览到

        guest ok = no                        是否允许来宾账号访问

        writable = no                        是否具有写权限

        printable = yes                      是否允许打印


此外常用的还有:

public = 表示是否具有读权限

read only = 表示是否是只读的 决不允许与writable = yes 同时存在

write list = 定义可写用户列表 

             @group  表示定义可写用户组名或+group

valid users = 只允许哪些用户访问(白名单)

invalid users = 不允许哪些用户访问(黑名单)

[shared_name]   共享名称

windows访问linux共享:

下面来定义一个共享

首先:mkdir -pv /share/test

然后: vim smb.conf 在最后添加:

再然后 命令#testparm 测试是不是有语法问题,再按回车键可以查看所有定义的有效信息

启动服务完成。

创建一个用户账号(采用的是hive)然后利用命令#smbpasswd -a hive 添加用户到smb用户中(密码设置尽量不要与系统密码一致)

使用windows打开查看:


在家目录中创建一个新文本

在进入系统查看结果:

由此可见家目录写入权限是可以的

而在tools中无法执行写入权限:

原因:

 

其他用户无权限,使用命令:#setfacl -m u:hive:rwx /share/test/更改权限 

 

这样就可以了。

linux访问windows共享:

1,熟悉一个命令:

smbclient

    -L NetBIOS_Name 或者直接输入IP地址       表示我们要访问哪台主机

-U username        实现认证的

-P 密码

2,在windows上创建一个共享文件

3,利用smbclient -L IP地址  进行连接 利用的是来宾账户进行连接的

4,若要利用用户名进行连接

首先,在windows上创建一个用户设置好密码

然后,smbclient -L IP地址 -U 用户名


5,利用smbclient //172.16.11.1/tools -U hive 可以查看内容上传内容下载内容(下载前要查看自己本地所在目录:!pwd ,切换本地目录用!cd)退出用exit

 

 

基于IP的访问控制

1,利用iptables

2,利用samba

   在配置文件中有一个hosts allow = IP地址      这是一个白名单,若要有多个IP地址使用空格隔开

3,使用samba-swat

    (1)安装与版本匹配的samba-swat

(2)启动xinetd(service xinetd start)

(3)启动swat(chkconfig swat on)

(4)重启xinetd

4,非独立进程都有一个单独的配置文件(/etc/xinetd.d/下)对应的都是进程的名称


5,打开/etc/xinetd.d/swat文件

 only_from       = 172.16.0.0/16            改为当前网段

6,用浏览器打开IP地址就可以了(记得要加上端口号:901)

 

关于samba安装配置使用已基本结束,若感觉不太习惯可使用ftp等。。。

 

 

本文转自 z永 51CTO博客,原文链接:http://blog.51cto.com/pangge/1052522



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/256857.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(1)dotnet开源电商系统-brnshopbrnMall 和老外开发的nopCommerce(dotnet两套电商来PK--第一篇)...

一直想做电商软件,但是实在不想学PHP了,所以前后关注了这两个开源电商系统。一个是国人出品的,一个据说是俄罗斯人写得(不知道对不对)。目前两个开源软件都在学习了解中,以下的博文可能会涉及到这两套系统&…

hdoj 2022 海选女主角

Problem Descriptionpotato老师虽然很喜欢教书,但是迫于生活压力,不得不想办法在业余时间挣点外快以养家糊口。“做什么比较挣钱呢?筛沙子没力气,看大门又不够帅...”potato老师很是无奈。“张艺谋比你还难看,现在多有…

linux 下的gettimeofday 函数在windows上的替换方案

方案一&#xff1a; #include <time.h> #ifdef WIN32 # include <windows.h> #else # include <sys/time.h> #endif #ifdef WIN32 int gettimeofday(struct timeval *tp, void *tzp) { time_t clock; struct tm tm; SYSTEMTIME wtm; Ge…

学习笔记(45):Python实战编程-键盘事件

立即学习:https://edu.csdn.net/course/play/19711/343107?utm_sourceblogtoedu 1.键盘事件&#xff1a;按键松开或者按下触发事件的执行&#xff0c;一般组件要绑定键盘事件都是同时绑定按键松开&#xff08;“”<KeyRelease>&#xff09;和按键按下&#xff08;“<…

JSDoc那些事

几天工作上需要文档化一些Javascript东西&#xff0c;所以在找一些JS文档化工具&#xff0c;以下分析几种工具。 1.JSDoc-toolkit 一开始还想用这个工具&#xff0c;但后来在解析生成文档时候&#xff0c;出现了很严重的错误&#xff0c;还存在其他问题。 问题1&#xff1a;闭包…

onBlur事件与onfocus事件(js)

onFocus事件就是当光标落在文本框中时发生的事件。 onBlur事件是光标失去焦点时发生的事件。 可以编如下例子 1.html <HTML> <HEAD> <TITLE>使用onBlur事件处理程序</TITLE> </HEAD> <BODY BGCOLOR"lavender"> <FORM name&qu…

谈论Java原子变量和同步的效率 -- 颠覆你的生活

我们认为&#xff0c;由于思维定式原子变量总是比同步运行的速度更快&#xff0c;我想是这样也已经&#xff0c;直到实现了ID在第一次测试过程生成器不具有在这样一个迷迷糊糊的东西。测试代码&#xff1a; import java.util.ArrayList; import java.util.List; import java.ut…

总结从linux - windows 上(GCC与MSVC 2015) 移植C或者C++代码时候遇到的编译和链接问题

解决办法和修改办法的总体思想 1、在代码的语义和功能不变的情况下&#xff0c;进行c->c的转变&#xff0c;消除编译器的跨平台编译报错问题&#xff1b; 2、遇到编译问题&#xff0c;先看编译器提示信息&#xff0c;然后逐个排查和定位&#xff0c;去解决问题。 1、当遇到…

1 week110的zookeeper的安装 + zookeeper提供少量数据的存储

下面是在weekend110上的zookeeper的安装 在此之前&#xff0c;先进行快照备份。 在这里&#xff0c;为了后续的zookeeper配置需要&#xff0c;在/home/hadoop/下&#xff0c;新建data目录&#xff0c;再新建zookeeper-3.4.6目录&#xff0c;再新建zkdata目录。 默认情况下&…

学习笔记(46):Python实战编程-protocol

立即学习:https://edu.csdn.net/course/play/19711/343108?utm_sourceblogtoedu 1.protocol协议&#xff1a;主要用于窗体关闭监听&#xff0c;通过这个协议可以在窗体关闭前提示是否真的要关闭&#xff0c;这样可以防止用户误触导致数据的丢失 2.关键代码 #----------------…

linux yum命令详解

yum&#xff08;全称为 Yellow dog Updater, Modified&#xff09;是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理&#xff0c;能够从指定的服务器自动下载RPM包并且安装&#xff0c;可以自动处理依赖性关系&#xff0c;并且一次安装所有依赖的软体包…

linux配置Java环境变量(详细)

一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录&#xff0c; 执行命令 ./jdk-6u14-linux-i586.bin 这时会出现一段协议&#xff0c;连继敲回车&#xff0c;当询问是否同意的时候&#xff0c;输入yes&#xff0c;回车。之后会在当前目录下生成一个jdk1.…

在c++代码中关闭和启动另外一个pid进程号,共享内存数据使用

char * of_program_name "./AB"; 1、 pid getPidFromName(of_program_name); if (pid > 0) { ERROR("AB process still exispid %d\n", pid); if (kill(pid, SIGKILL)) //杀死进程 { fprintf(std…

提速XP操作系统

1、加速网上邻居 在Windows XP中访问网上邻居是相当恼人的&#xff0c;系统会搜索自己的共享目录和可作为网络共享的打印机以及计划任务中和网络相关的计划任务&#xff0c;然后才显示出来&#xff0c;显然这样速度就会比Windows 9x中慢很多。其实这些功能我们并没有使用上&…

学习笔记(47):Python实战编程-pack布局

立即学习:https://edu.csdn.net/course/play/19711/343109?utm_sourceblogtoedu pack布局&#xff1a; 1&#xff09;最常用的布局&#xff0c;顺序排列布局方法 2&#xff09;完成了简单的组件位置码放&#xff0c;但如果内部布局处理机制跟不上的话&#xff0c;也可能会达…

ASP.NET Web API 应用教程(一) ——数据流使用

相信已经有很多文章来介绍ASP.Net Web API 技术&#xff0c;本系列文章主要介绍如何使用数据流&#xff0c;HTTPS&#xff0c;以及可扩展的Web API 方面的技术&#xff0c;系列文章主要有三篇内容。 主要内容如下&#xff1a; I 数据流 II 使用HTTPS III 可扩展的Web API 文档…

JAVA类的构造方法

1,构造方法没有返回类型, 定义: []public] 方法名() {} 2,一个构造方法如果想调用同一类中的另一个构造方法,只能调用一个,并且要放在构造方法第一行 3,用this调用,如 1 public person(int i, int j) { 2 this(); //调用另一个构造方法,且放在第一行 3 } 转载于:https://www…

将字符串和数字合并动态写入

sprintf(tmpTime, "/media/AIlog/%02d_%02d_%.txt",100,200);

windows安装64位Pygame方法

因为官方网站http://www.pygame.org/download.shtml并没有提供64位的pygame&#xff0c;所以要找其他网站制作的64位安装文件。 如果你已经在你的64位开发环境中安装了32位的pygame&#xff0c; 那么在导入pygame包的时候&#xff0c; 会有提示&#xff1a; ImportError: DLL l…

学习笔记(48):Python实战编程-grid布局

立即学习:https://edu.csdn.net/course/play/19711/343110?utm_sourceblogtoedu grid布局&#xff1a;根据表结构进行的布局&#xff0c;索引为0行0列开始&#xff0c;最具代表性的即使电脑计算器的数字和符号按键布局 组件.grid(row 行索引号 &#xff0c; column 列索引号…