实验需求:

由于实验室纳新一帮新孩子,搭建samba主要是临时共享一些学习资源的,基本上大家用的都是windows。而且这个服务可以让他们在校园的里的个个角落都可以访问到,所以给挂了学校的公网,不过我不太清楚学校的网是什么搞的,也不知道在校外可以访问到不。

要求是给组长上传的权限,其他的组员只有下载的权限。后期的话,开发组的那边说要开发一个云盘。

搭建:

一开始给了个浪潮英信的服务器,这是一个超级老的家伙,自从2004就进学校了,而且进来的时候还不是新机子,当时担任dhcp工作,是装了aix系统。后来被黑就不用它了。所以一开始装系统就很蛋疼,不支持U盘、USB的键盘也不支持没法进BIOS,后来整个串口的键盘可以了。最后实在没办法就搭PXE网络安装它,折腾到几个小时,pxe安装系统的时候,意外的发现这老家伙太老了,cpu不支持64位的,只能又下载32位的。好一切ok装完系统,但是启动的时候,发现redhat没装在第一块硬盘上,有来回捣鼓硬盘顺序,最后指定是第四块盘,因为装系统的时候就它一直亮着。这系统装完了,但是后面又出现问题,硬盘太小了,而且有各种小问题。这时头儿见我们还没弄出来给我们一个dell 6850的。16G内存,两cpu,210G存储空间(太小了,后期头儿说给个存储3T的),不错很快搞好了。

搭建完毕后,发现访问太慢了,几百K,后来又调优啊,最后搞到2~4M这样,机房那个交换机是百兆的,所以很慢。

  1. 下载安装包yum install -y samba samba-common samba-client
  2. 配置文件
    vim /etc/samba/smb.conf ### 注 释 掉 不 需 要 的 共 享 目 录homes,printers

    [global]
    ...
    username map = /etc/samba/smbusers ##启用 samba 用户映射文件
    ###以下为优化参数,详情查看此处 http://niyunjiu.iteye.com/blog/661141 或 http://www.cubie.cc/forum.php?mod=viewthread&tid=3714
    socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=1048576
    SO_SNDBUF=1048576
    aio read size = 65536
    aio write size = 65536
    aio write behind = true
    write cache size = 2097152
    max xmit = 65536
    large readwrite = yes

    use sendfile = yes
    min receivefile size = 16384
    getwd cache = true
    follow symlinks = no
    wide links = no
    log level = 0
    [share]
    comment = infor center
    path = /data
    writable = yes
    guest ok = no

  3. 添加 samba 用户映射

  vim /etc/samba/smbusers

system = vsystem
net = vnet
deve = vdeve
common = user1 user2 user3 user4

4. 创建共享目录

mkdir /data
mkdir /data/(develop,system,network)
chown system:system /data/system
chown network:network /data/network
chown develop:develop /data/develop
usermod -aG (system,net,deve) common ##将 system, net, deve分别作为 common 的附加组加上去
useradd -M (system ,net, deve ,common) -s /sbin/nologin
smbpasswd -a (system,net,deve,common) ##添加 samba 用户信息

5.设置防火墙
iptables -F;iptables -X;iptables -Z ##清除防火墙规则
设置默认规则:
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -A INPUT -i lo -j ACCEPT
设置开启的端口
iptables -A INPUT -p tcp --dport 139 -j ACCEPT
iptables -A INPUT -p tcp --dport 445 -j ACCEPT
iptables -A INPUT -p udp --dport 137 -j ACCEPT
iptables -A INPUT -p udp --dport 138 -j ACCEPT
iptables -A INPUT -p tcp --dport xxx -j ACCEPT ##将 ssh 端口设为 xxx并开启,防止安全隐患

6. ssh设置

vim /etc/ssh/sshd_config
PORT xxx
PermitRootLogin no ###禁止 root 登陆

7. 启动服务

/etc/init.d/iptables save
/etc/init.d/iptables restart ##保存防火墙规则
/etc/init.d/smb start ###开启服务
/etc/init.d/nmb start ###开启服务

生产环境中配置的samba的更多相关文章

  1. 【原】Storm Local模式和生产环境中Topology运行配置

    Storm入门教程 1. Storm基础 Storm Storm主要特点 Storm基本概念 Storm调度器 Storm配置 Guaranteeing Message Processing(消息处理 ...

  2. 生产环境中tomcat的配置

    生产环境中要以daemon方式运行tomcat 通常在开发环境中,我们使用$CATALINA_HOME/bin/startup.sh来启动tomcat, 使用$CATALINA_HOME/bin/sh ...

  3. 一个完整配置例nginx.conf(生产环境中使用)

    一个完整的nginx配置案例,生产环境 一个完整配置例(生产环境中使用) user nobody nobody; worker_processes 4; worker_rlimit_nofile 51 ...

  4. mysql8在生产环境中的配置

    一,配置文件的位置 [root@yjweb ~]# ll /etc/my.cnf -rw-r--r-- 1 root root 935 Mar 11 16:52 /etc/my.cnf 说明:通常我们 ...

  5. 理解Docker(6):若干企业生产环境中的容器网络方案

    本系列文章将介绍 Docker的相关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  6. 生产环境中CentOS7部署NET Core应用程序

    NET Core应用程序部署至生产环境中(CentOS7) 阅读目录 环境说明 准备你的ASP.NET Core应用程序 安装CentOS7 安装.NET Core SDK for CentOS7. ...

  7. 生产环境中使用Docker Swarm的一些建议

    译者按: 实践中会发现,生产环境中使用单个Docker节点是远远不够的,搭建Docker集群势在必行.然而,面对Kubernetes, Mesos以及Swarm等众多容器集群系统,我们该如何选择呢?它 ...

  8. 分离Webpack开发环境与生产环境的配置

    这是Webpack+React系列配置过程记录的第五篇.其他内容请参考: 第一篇:使用webpack.babel.react.antdesign配置单页面应用开发环境 第二篇:使用react-rout ...

  9. [virtualenv]生产环境中使用virtualenv

    virtualenv 对于python开发和部署都是好工具,可以隔离多个python版本和第三方库的版本,这里作者总结了几个常用python服务怎么样结合virtual部署 原文链接 Python 中 ...

随机推荐

  1. gitlab merge过程

    基本步骤如下: 以我的分支为例 1.创建本地分支,命令 git checkout -b liuping_develop2.创建好分支后提交到远程 ,命令 git push origin liuping ...

  2. Bootstrap progress-bar

    1.进度条 在网页中,进度条的效果并不少见,比如一个评分系统,比如加载状态等.就如下图所示的一个评分系统,他就是一个简单的进度条效果: 进度条和其他独立组件一样,开发者可以根据自己的需要,选择对应的版 ...

  3. lc.exe 已退出 代码为 -1

    地址:http://jingyan.baidu.com/article/91f5db1bd0ace31c7f05e321.html

  4. java 监听文件或者文件夹变化的几种方式

    1.log4j的实现的文件内容变化监听 package com.jp.filemonitor; import org.apache.log4j.helpers.FileWatchdog; public ...

  5. ios 短音效的使用

    1.通用短音效ID的获取 #import <Foundation/Foundation.h> @interface MJAudioTool : NSObject /** * 播放音效 * ...

  6. Jmeter代理服务器录制请求

    1.文档前提说明 1)本文使用jmeter的版本为 apache-jmeter-2.13 及以上版本 2)java版本要求在 1.8.0 以上 注:jmeter版本一般和java相应的版本一起使用,如 ...

  7. Tomcat启动报:invalid LOC header (bad signature)的问题

    原因:这种一般是因为项目依赖的某个jar包损坏引起的, 解决办法: 1.右键项目,选择maven,更新(update maven project) 2.通过右击项目名 ->  Run as -& ...

  8. 初探linux子系统集之led子系统(三)【转】

    本文转载自:http://blog.csdn.net/eastmoon502136/article/details/37822837 世界杯结束了,德国战车夺得了大力神杯,阿根廷最终还是失败了.也许3 ...

  9. 一步一步学Silverlight 2系列(30):使用Transform实现更炫的效果(下)

    概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  10. 原:maven+springMVC+mybatis+junit详细搭建过程

    阅读目录 1.  工程目录结构整理清楚 2.  引入依赖包 3. 配置数据库连接属性 4.  配置spring配置文件 5.  java代码编写(model,dao,service层代码) 6.  m ...