Samba原理和配置

个人原创,转载请注明,否则追究法律责任。

一,原理及安装

1,Samba是在Linux和UNIX系统上实现在局域网上共享文件一种通信协议,它为局域网内的不同计算机之间提供文件等资源的共享服务。

2,Samba访问控制机制:两重限制:操作系统本身的文件属性的限制和smb的访问列表的限制。

第二栏:多少档名连结到此节点(i-node) 文件的连接数

第三栏:文件(或目录)的拥有者

第四栏:文件的所属群组

第五栏:文件的容量大小(默认单位为bytes)

第六栏:最近的修改日期

3,Samba的安装及环境搭建(硬件,软件环境)

Samba运行由两个服务组成,为smb和nmb。

安装:

yum -y install samba

service smb start

chkconfig smb on

chkconfig --list |grep smb

SMB,监听139 TCP端口,SMB是Samba 的核心启动服务,主要负责建立 Linux Samba服务器与Samba客户机之间的对话,验证用户身份并提供对文件系统的访问,

NMB服务是负责解析用的,类似与DNS实现的功能,NMB可以把Linux系统共享的工作组名称与其IP对应起来,如果NMB服务没有启动,就只能通过IP来访问共享文件,监听137和138 UDP端口。

windows端可以关闭防火墙,排除影响

关闭selinux

防火墙设置:

规划:

开启tcp的长连接

开启ssh连接22端口

开启smb连接的139端口

开启ping功能的ICMP协议

查看端口:

[root@localhost ~]# service iptables status

[root@localhost ~]# service iptables start

iptables: Applying firewall rules: [ OK ]

[root@localhost ~]# iptables -L

将默认的INPUT链的规则设置成DORP

[root@localhost ~]# iptables -P INPUT DROP

[root@localhost ~]# iptables -L -n --line-number

将多余的INPUT链的规则删掉

[root@localhost ~]# iptables -D INPUT 3

[root@localhost ~]# iptables -D INPUT 3

[root@localhost ~]# iptables -D INPUT 3

[root@localhost ~]# iptables -L -n --line-number

添加22,139端口为允许端口

[root@localhost ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT

[root@localhost ~]# iptables -A INPUT -p tcp --dport 139 -j ACCEPT

[root@localhost ~]# iptables -L -n --line-number

保存防火墙规则:

[root@localhost ~]# service iptables save

iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]

检验:

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

[root@localhost ~]# yum -y install httpd

[root@localhost ~]# service httpd start

Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain for ServerName

[ OK ]

其他机器验证:

[root@shiyan tomcat1]# ping 192.168.115.81

[root@shiyan tomcat1]# ssh 192.168.115.81

[root@shiyan tomcat1]# nc -v -w 2 192.168.115.81 -z 139

-bash: nc: command not found

[root@shiyan tomcat1]# yum -y install nc

[root@shiyan tomcat1]# nc -v -w 2 192.168.115.81 -z 139

[root@shiyan tomcat1]# nc -v -w 2 192.168.115.81 -z 80

nc: connect to 192.168.115.81 port 80 (tcp) timed out: Operation now in progress

[root@shiyan tomcat1]# nc -v -w 2 192.168.115.81 -z 22

Connection to 192.168.115.81 22 port [tcp/ssh] succeeded!

[root@shiyan tomcat1]#

二,配置

1,规划:

2,操作

添加用户:

useradd -s /sbin/nologin jsadmin

useradd -s /sbin/nologin kfadmin

useradd -s /sbin/nologin -g jsadmin zhangsan

useradd -s /sbin/nologin -g jsadmin lisi

useradd -s /sbin/nologin -g kfadmin wangwu

useradd -s /sbin/nologin -g kfadmin zhaoliu

新建共享目录

mkdir /data

cd /data

mkdir jishubu ulian

chmod -R 777 /data

chown -R ulian:ulian ulian

chown -R jishubu:jishubu jishubu

ll

vim /etc/samba/smb.conf

samba配置:

[技术部]

comment = this directory is used for ulian group ---------------------------- 描述

path = /data/jishubu ----------------------------------------------------------- 对应的工作目录路径

public = no ------------------------------------------------------------------ 无口令账号不允许访问共享资源

admin users = ulian ------------------------------------------------------------ 管理员账号

valid users = @ulian ------------------------------------------------------------ 成员账号

writable = yes ----------------------------------------------------------------- 是否可写

create mask = 0770 ----------------------------------------------------------- 成员创建文件的权限

directory mask = 0770 --------------------------------------------------------- 成员创建目录的权限

service smb restart

smbpasswd -a zhang

smbpasswd -a san

smbpasswd -a li

smbpasswd -a si

改进:

chmod -R 1777 /data        同组用户可以修改,不能删除

vim /etc/samba/smb.conf   ----- 用户登录后不显示自己的家目录文件夹

注释掉【home】

Samba原理和配置的更多相关文章

  1. 【CentOS】samba服务器安装与配置

    参考资料: http://www.cnblogs.com/mchina/archive/2012/12/18/2816717.html 1.简介 2.安装 3.配置 1.简介 Samba是一个能让Li ...

  2. ubuntu samba服务器多用户配置【转】

    转自:http://www.2cto.com/os/201204/127043.html ubuntu samba服务器多用户配置   在/home/下有多个用户目录A.B...,现通过samba共享 ...

  3. MySQL主从复制的原理及配置

    [http://www.jb51.net/article/50053.htm]   MySQL 数据库的高可用性架构:         集群,读写分离,主备.而后面两种都是通过复制来实现的.下面将简单 ...

  4. MySQL的复制原理及配置

    MySQL 的数据库的高可用性的架构大概有以下几种:集群,读写分离,主备.而后面两种都是通过复制来实现的.下面将简单介绍复制的原理及配置,以及一些常见的问题. 一.复制的原理 MySQL 复制基于主服 ...

  5. ubuntu samba共享安装 配置

    参考: http://www.360doc.com/content/11/0615/12/3989678_127081905.shtml 参考: http://xfshean.blog.163.com ...

  6. samba安装与配置

    1.安装软件包rpm -q samba samba-common samba-client cifs-utilsyum -y install samba samba-common samba-clie ...

  7. CentOS下Samba服务器的配置

    主要用途: 在两台计算机间共享文件.打印机 安装: yum install samba 启动服务: /etc/rc.d/init.d/smb start 添加用户  (必须是系统中真实存在的用户) s ...

  8. Mysql中主从复制的原理、配置过程以及实际案例

    Mysql中主从复制的原理.配置过程以及实际案例1.什么是主从复制?原理:主从分离,什么意思呢?我们不妨画个图看看.如图1所示: 2.准备工作:预备两台服务器,我这里使用虚拟机安装了两个Centos6 ...

  9. 【samba】samba 用户权限配置(转)

    首先要保证你的samba安装并配置好,关于安装和配置samba请参考此文章 http://blog.csdn.net/linglongwunv/archive/2010/01/19/5212875.a ...

随机推荐

  1. Sping Boot入门到实战之入门篇(四):Spring Boot自动化配置

    该篇为Sping Boot入门到实战系列入门篇的第四篇.介绍Spring Boot自动化配置的基本原理与实现.   Spring Boot之所以受开发者欢迎, 其中最重要的一个因素就是其自动化配置特性 ...

  2. Swift 之属性setter、getter方法

    Swift 之属性setter.getter方法 Swift中的属性分为两种属性,一种就是计算型属性 一种就是存储型属性,开始我虽然知道这两种属性,但是了解并不深对于他的setter和getter方法 ...

  3. java 集合框架(二)Iterable接口

    Iterable接口是java 集合框架的顶级接口,实现此接口使集合对象可以通过迭代器遍历自身元素,我们可以看下它的成员方法 修饰符和返回值 方法名 描述 Iterator<T> iter ...

  4. js将汉字转为相应的拼音

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  5. 针对特定XML的解析器XMLParser

    一.建立网页库和偏移文件 为文本搜索引擎建立网页库,首先要把所有的网页(这里是文章)格式化,并保存到指定的格式中.如以下格式:   |                                  ...

  6. HI3531编译helloworld,执行错误

    若在嵌入式系统中执行某文件出现如下错误: -/bin/sh: XXX: not found 一般是因为缺少库文件,解决方法有2: 1,文件系统的busybox编译时使用动态编译方式 2,或编译该文件的 ...

  7. FusionCharts封装-Category

    Categories.java: /** * @Title:Categories.java * @Package:com.fusionchart.model * @Description:Fusion ...

  8. 一种基于主板BIOS的身份认证方案及实现

    .分析AwardBIOSDOS工具cbrom cbrom的功能就是在BIOS文件中添加.删除与提取模块,以便满足用户自己的需求,用法如下: cbromBIOS文件名/参数模块名|RELEASE|EXT ...

  9. 【原】Java学习笔记030 - 异常

    package cn.temptation; public class Sample01 { public static void main(String[] args) { /* * 异常:Java ...

  10. web开发中对缓存的使用

    很久没有发表随笔了,最近工作不是太忙,抽点时间 给大家谈谈缓存吧 ; 在我从事web开发的几年实践中  接触了缓存技术 也是比较多的,在最初的 项目当中 我们用到 hibernate 的 一二级缓存, ...