生产环境中配置的samba

实验需求:

由于实验室纳新一帮新孩子,搭建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 ###开启服务

原文地址:https://www.cnblogs.com/wxl-dede/p/5042454.html