天道酬勤,学无止境

设置***和SAMBA服务器共享总结

一、需求:子公司可以***到总公司访问samba内网服务器

 

二、设备:D-link 7100普通路由器当pptp服务端,浪潮2U服务器

 

三、设置服务器管理口报警,8块2T SATA硬盘配置两组raid5和全局热备


四、设置:d-link 7100路由器wan口地址为电信ip,路由器修改网关地址为192.168.10.1,设置端口为7908


 0.配置7100路由器wan口地址,启动为nat模式,设置ip、掩码、网关、dns和线路带宽。

 

  1. 修改路由器网关地址为192.168.10.1,子网掩码为255.255.255.0

     

  2. 关闭路由器dhcp服务

4.设置pptp服务,启动pptp服务,pptp客户端地址为192.168.10.100-192.168.10.200

 

5.添加pptp用户和密码类型为主机模式

 

6.设置远程管理地址端口为7908,内网管理口就是http://192.168.10.1:7908 公网地址就是http://wan:7908

 

7.windows客户端创建***,填写好公网地址,直接拨号即可,如果慢就选择pptp类型。

 

 8.设置服务器管理口地址第一次DEL设置进入浪潮bios设置专用管理口ip,设置之后就可以web管理了,默认用户名admin密码为admin.

浪潮物理磁盘信息8块2t SATA 硬盘

逻辑盘如下所示:两个raid5加一个全局热备。

 

9.设置浪潮BMC选择专用口设置管理ip和dns,保证专用口能上网才能邮件报警。

 

10.smtp服务器点勾设置启动,smtp地址为邮件服务器IP地址,设置发件人邮箱,设置用户名和密码。

 

11.用户设置可以添加也可以用默认的用户名admin密码admin进入,也可以设置其它账户,最主要是设置接收邮箱地址填写正确才能发送硬件报警邮件。

 

 

12.告警策略设置点勾,选择LAN通道为专用管理口,告警类型Email或者snmp,告警目标就是我们创建的用户,点击保存测试,如果要设置web端口就在服务设置选项中设置。

 

13.samba服务器配置:centos6.8 64位操作系统,创建用户1001-1010读和执行的权限加入rxgroup中 ,2001-2010用户为特殊权限rwt权限,root用户为超级管理员账户可以删除任何人创建的数据,统一密码为123456,安装samba,httpd、gcc软件,利用changepassword.cgi web形式修改个人samba密码,由于fdisk支持不了超过2T硬盘,所以分区用parted来分区,分别挂载到/data和/backup目录,利用系统crontab -e编辑计划任务   10 1 * * *  /usr/bin/rsync  -a   /data/* /backup/ & 每天凌晨1点10分备份/data下所有数据到/backup目录保留所有权限。

 

[root@localhost changepassword-0.9]# yum -y install samba httpd gcc //安装软件包

 

[root@localhost changepassword-0.9]# chkconfig smb on //设置开机启动


[root@localhost changepassword-0.9]# chkconfig httpd on //设置开机启动

 

[root@localhost changepassword-0.9]# cat /etc/httpd/conf/httpd.conf //httpd.conf配置文件如下所示:


ServerTokens OS

ServerRoot "/etc/httpd"

PidFile run/httpd.pid

Timeout 60

KeepAlive Off

MaxKeepAliveRequests 100

KeepAliveTimeout 15


<IfModule prefork.c>
StartServers       8
MinSpareServers    5
MaxSpareServers   20
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000
</IfModule>

<IfModule worker.c>
StartServers         4
MaxClients         300
MinSpareThreads     25
MaxSpareThreads     75
ThreadsPerChild     25
MaxRequestsPerChild  0
</IfModule>

Listen 80

LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_alias_module modules/mod_authn_alias.so
LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule expires_module modules/mod_expires.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule mime_module modules/mod_mime.so
LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule info_module modules/mod_info.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule substitute_module modules/mod_substitute.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule cache_module modules/mod_cache.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule version_module modules/mod_version.so


Include conf.d/*.conf


User apache
Group apache


ServerAdmin root@localhost


UseCanonicalName Off

DocumentRoot "/var/www/html"

<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>


<Directory "/var/www/html">

    Options Indexes FollowSymLinks

    AllowOverride None

    Order allow,deny
    Allow from all

</Directory>

<IfModule mod_userdir.c>
    UserDir disabled


</IfModule>


DirectoryIndex index.html index.html.var

AccessFileName .htaccess

<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy All
</Files>

TypesConfig /etc/mime.types

DefaultType text/plain

<IfModule mod_mime_magic.c>
    MIMEMagicFile conf/magic
</IfModule>

HostnameLookups Off

 

ErrorLog logs/error_log

LogLevel warn

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

 


CustomLog logs/access_log combined

ServerSignature On

Alias /icons/ "/var/www/icons/"

<Directory "/var/www/icons">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

<IfModule mod_dav_fs.c>
    DAVLockDB /var/lib/dav/lockdb
</IfModule>

ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

 

IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable Charset=UTF-8

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/p_w_picpath2.gif) p_w_picpath/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^

DefaultIcon /icons/unknown.gif


ReadmeName README.html
HeaderName HEADER.html


AddLanguage ca .ca
AddLanguage cs .cz .cs
AddLanguage da .dk
AddLanguage de .de
AddLanguage el .el
AddLanguage en .en
AddLanguage eo .eo
AddLanguage es .es
AddLanguage et .et
AddLanguage fr .fr
AddLanguage he .he
AddLanguage hr .hr
AddLanguage it .it
AddLanguage ja .ja
AddLanguage ko .ko
AddLanguage ltz .ltz
AddLanguage nl .nl
AddLanguage nn .nn
AddLanguage no .no
AddLanguage pl .po
AddLanguage pt .pt
AddLanguage pt-BR .pt-br
AddLanguage ru .ru
AddLanguage sv .sv
AddLanguage zh-CN .zh-cn
AddLanguage zh-TW .zh-tw

LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW

ForceLanguagePriority Prefer Fallback

AddDefaultCharset GB2312 //添加编码字符集为GB2312不然changepassword会乱码

 

AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz

AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl    .crl

 

AddHandler type-map var

AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

 


Alias /error/ "/var/www/error/"

<IfModule mod_negotiation.c>
<IfModule mod_include.c>
    <Directory "/var/www/error">
        AllowOverride None
        Options IncludesNoExec
        AddOutputFilter Includes html
        AddHandler type-map var
        Order allow,deny
        Allow from all
        LanguagePriority en es de fr
        ForceLanguagePriority Prefer Fallback
    </Directory>


</IfModule>
</IfModule>

BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0

BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "MS FrontPage" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
BrowserMatch "^gnome-vfs/1.0" redirect-carefully
BrowserMatch "^XML Spy" redirect-carefully
BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully

 

14.[root@localhost changepassword-0.9]# cat /etc/samba/smb.conf //samba配置文件如下红色为添加部分
[global]
   workgroup = WORKGROUP
   netbios name = file-server02
   server string = file-server02
   unix charset = gb2312
   dos charset = gb2312
   client code page=936

   load printers = no
   printing = bsd
   printcap name = /dev/null
   disable spoolss = yes
 
   #log file = /var/log/samba/%m.log
   log file = /var/log/samba/%I.log
   max log size = 0

   pam password change = no
   passwd chat = **NEW*UNIX*password* %nn *Retype*new*UNIX*password* %nn *successfully*
   passwd program = LANG=en_US /usr/bin/passwd %u
   unix password sync = yes

   security = user
   passdb backend = smbpasswd
   encrypt passwords = yes
   smb passwd file = /etc/samba/smbpasswd

   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
   local master = no
   dns proxy = no

 

   [测试]
   comment = test
   path = /data/test
   read only = no
   public = no

15. 下载编译changepassword软件包

[root@localhost~] # wget http://prdownloads.sourceforge.net/changepassword/changepassword-0.9.tar.gz


[root@localhost~] #  tar -zxvf changepassword-0.9.tar.gz


[root@localhost~] #  cd changepassword-0.9

 

[root@localhost changepassword-0.9]# cd smbencrypt/ 


[root@localhost smbencrypt]# tar -zxvf libdes-4.04b.tar.gz

 

[root@localhost smbencrypt]# cd des


[root@localhost des]# make

 

[root@localhost des]# cp libdes.a ../
cp:是否覆盖"../libdes.a"? y


[root@localhost des]# cd ../..

 

[root@localhost changepassword-0.9]# ./configure  --enable-cgidir=/var/www/cgi-bin/  --enable-language=Chinese  --enable-smbpasswd=/etc/samba/smbpasswd --disable-squidpasswd  --enable-logo=logo.jpg  //配置参数logo.jpg要放在/var/www/html,不然会找不到图片就会有一个小红叉。

 

注:-enable-cgidir=...                     # 自定义apache根目录路径
   -enable-language=Chinese                # 设置页面为简体中文
   -enable-smbpasswd=/etc/samba/smbpasswd  # 自定义samba密码的库文件
   (这里smbpasswd并非修改smb用户密码的系统命令,请注意不要混淆)
   -disable-squidpasswd                    # 禁用squid
   -enable-logo= # 设置web根目录logo文件,此处的相对路径对应的是apache根目录

 

这里创建samba账户时必须设置系统账户密码,以及smb账户密码
因为changepassword更改密码的机制是,先修改系统账户密码,然后将系统账户密码同步到 /etc/samba/smbpasswd SMB密码库文件下。 

checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for main in -lcrypt... yes
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for unistd.h... (cached) yes
checking for sys/types.h... (cached) yes
checking stdio.h usability... yes
checking stdio.h presence... yes
checking for stdio.h... yes
checking for string.h... (cached) yes
checking for stdlib.h... (cached) yes
checking pwd.h usability... yes
checking pwd.h presence... yes
checking for pwd.h... yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking shadow.h usability... yes
checking shadow.h presence... yes
checking for shadow.h... yes
checking time.h usability... yes
checking time.h presence... yes
checking for time.h... yes
checking for crypt in -lcrypt... yes


changepassword 0.9 Configuration
--------------------------------

Samba password file: /etc/samba/smbpasswd
Squid password file: no
Logo p_w_picpath         : /var/www/cgi-bin/logo.jpg
Using Language file: languages/Chinese.h
Apache cgi-bin dir : /var/www/cgi-bin/

configure: creating ./config.status
config.status: creating Makefile


Don't forgot to copy /var/www/cgi-bin/logo.jpg to your website root htdocs //别忘了拷贝logo.jpg  207x46

Now, type "make" and "make install"

 

[root@localhost changepassword-0.9]# make&&make install  //安装changepassword软件


gcc -c -o smbencrypt/SMBPasswdGen.o  smbencrypt/SMBPasswdGen.c
gcc -c -o smbencrypt/encrypt.o       smbencrypt/encrypt.c
gcc -c -o smbencrypt/md4.o           smbencrypt/md4.c
gcc -c -o smbencrypt/smbencrypt.o    smbencrypt/smbencrypt.c
gcc changepassword.c -o changepassword.cgi smbencrypt/SMBPasswdGen.o smbencrypt/md4.o smbencrypt/smbencrypt.o smbencrypt/encrypt.o -lcrypt -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DHAVE_LIBCRYPT=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_STDIO_H=1 -DHAVE_STRING_H=1 -DHAVE_STDLIB_H=1 -DHAVE_PWD_H=1 -DHAVE_ERRNO_H=1 -DHAVE_SIGNAL_H=1 -DHAVE_SHADOW_H=1 -DHAVE_TIME_H=1  -DChinese -DSMBPASSWD=\"/etc/samba/smbpasswd\" -DSQUIDPASSWD=\"no\" -DLOGO=\"/var/www/cgi-bin/logo.jpg\" -L./smbencrypt -ldes
cp changepassword.cgi /var/www/cgi-bin//changepassword.cgi
chmod 4755 /var/www/cgi-bin//changepassword.cgi

 

16.测试changepassword软件,要使用changepassword程序实现客户端更改密码,必须设置系统密码和samba密码同步,访问地址为http://ip/cgi-bin/changepassword.cgi


 17.创建1001-1010 加入rxgroup组中,创建2001-2010用户,samba初始密码为123456,创建超级管理员账号为root密码为123456

 

[root@localhost changepassword-0.9]# groupadd rxgroup //创建rxgroup组

 

[root@localhost ~]# cat useradd.sh  //添加1001-1010账户到rxgroup组中


#!/bin/sh

PASSWD="123456"
for i in {1001..1010}
do
        useradd -G rxgroup -s /sbin/nologin $i
        echo $PASSWD | passwd --stdin $i
done

 

[root@localhost ~]# sh useradd.sh
更改用户 1001 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 1002 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 1003 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 1004 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 1005 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 1006 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 1007 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 1008 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 1009 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 1010 的密码 。
passwd: 所有的身份验证令牌已经成功更新。

 

[root@localhost ~]# cat useradd.sh //添加2001到2010用户
#!/bin/sh

PASSWD="123456"
for i in {2001..2010}
do
        useradd -s /sbin/nologin  $i


        echo $PASSWD | passwd --stdin $i
done

 

[root@localhost ~]# sh useradd.sh
更改用户 2001 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 2002 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 2003 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 2004 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 2005 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 2006 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 2007 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 2008 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 2009 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 2010 的密码 。
passwd: 所有的身份验证令牌已经成功更新。

 

18.[root@localhost ~]# mkdir -p /data/test //创建/data和test目录

 [root@localhost data]# chown -R root.rxgroup test  //修改主为root,组为rxgroup


[root@localhost data]# chmod 757 -R test //修改权限


[root@localhost data]# chmod o+t -R test//修改特殊权限


[root@localhost data]# ll //查看test权限
总用量 4
drwxr-xrwt 2 root rxgroup 4096 5月   6 10:14 test

 

19.[root@localhost ~]# sh smbpasswd.sh  //添加samba用户1001-1010和123456密码

 

Added user 1001.
Added user 1002.
Added user 1003.
Added user 1004.
Added user 1005.
Added user 1006.
Added user 1007.
Added user 1008.
Added user 1009.
Added user 1010.


#!/bin/sh

PASSWD="123456"
for i in {1001..1010}
do

        echo -e "$PASSWD\n123456" |smbpasswd -s -a  $i
done

 

20.[root@localhost ~]# sh smbpasswd.sh  //添加samba用户2001-2010和123456密码
Added user 2001.
Added user 2002.
Added user 2003.
Added user 2004.
Added user 2005.
Added user 2006.
Added user 2007.
Added user 2008.
Added user 2009.
Added user 2010.

#!/bin/sh

PASSWD="123456"
for i in {2001..2010}
do

        echo -e "$PASSWD\n123456" |smbpasswd -s -a  $i
done

 

21.[root@localhost data]# smbpasswd -a root //创建超级管理员账号可以删除所有samba文件,这个密码一定不要和系统一样。


New SMB password:
Retype new SMB password:
Added user root.


22.测试samba权限和changepassword修改密码

 

 创建2001目录

切换用户到1001

 1001进入不能删除2001文件,也不能创建文件。

 

 修改1001账户旧密码为123456,这里旧口令就是passwd出来的密码,而不是smbpasswd出来的密码。直接smbpasswd -a 修改密码,虽然可以登录samba服务器,但是旧密码还是123456。

修改成功提示

 

 

 遇到的问题:

1.由于logo.jpg显示不了,原因是写了绝对路径。

2.由于浪潮服务器smtp测试提示身份类型不支持,暂时发不了报警邮件。

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • Samba配置文件常用参数详解
    文中有不对或者有不清楚的地方,请大家告诉我,谢谢! Samba配置文件常用参数详解 Samba的主配置文件叫smb.conf,默认在/etc/samba/目录下。 smb.conf含有多个段,每个段由段名开始,直到下个段名。每个段名放在方括号中间。每段的参数的格式是:名称=指。配置文件中一行一个段名和参数,段名和参数名不分大小写。 除了[global]段外,所有的段都可以看作是一个共享资源。段名是该共享资源的名字,段里的参数是该共享资源的属性。 Samba安装好后,使用testparm命令可以测试smb.conf配置是否正确。使用testparm –v命令可以详细的列出smb.conf支持的配置参数。 全局参数: ==================Global Settings =================== [global] config file = /usr/local/samba/lib/smb.conf.%m 说明:config file可以让你使用另一个配置文件来覆盖缺省的配置文件。如果文件 不存在,则该项无效。这个参数很有用,可以使得samba配置更灵活,可以让一台samba服务器模拟多台不同配置的服务器。比如,你想让PC1(主机名)这台电脑在访问Samba Server时使用它自己的配置文件,那么先在/etc/samba/host
  • Samba服务器的配置
    Samba服务器的配置 实验步骤: 1、安装有关Samba的RPM包(samba、samba-common、samba-client) 2、创建Samba用户 3、修改配置文件 4、重启samba服务 5、设置目录访问权限 6、测试 具体步骤如下: 1、安装RPM包(缺省情况下RHEL5安装了samba的相关软件包,可以用如下命令查看) [root@localhost ~]#rpm -qa | grep samba samba -----samba服务器程序的所有文件 samba-common -----提供了Samba服务器和客户机中都必须使用的公共文件 samba-client -----提供了Samba客户机的所有文件 samba-swat -----以Web界面的形式提供了对Samba服务器的管理功能 2、创建samba用户 [root@localhost ~]#smbpasswd -a user1 (“-a”是创建samba用户,“-x”是删 [root@localhost ~]#smbpasswd -a user2 除samba用户,“-d”是禁用samba用 [root@localhost ~]#smbpasswd -a user3 户帐号,“-e”是启用samba用户帐号) 3、修改配置文件 samba配置文件的位置:/etc/samba/smb.conf
  • samba文件共享以及用法(访问控制)- 精华
    转载于: https://blog.csdn.net/weixin_43275140/article/details/84577175 Samba Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,有服务端和客户端程序构成。随着Linux的普及,如何共享Linux下的文件成为用户关心的问题。其实,几乎所有的Linux发行套件都提供了一个很好的工具Samba——通过它可以轻松实现文件共享。 一、SMB文件共享 通用lnternet文件系统(CIFS)也称为服务器信息块(SMB),是适用于MicrosoftWindows服务器和客户端的标准文件和打印机共享系统。 Samba服务可用于将Linux文件系统作为CIFS/SMB网络文件共享进行共享,并将Linux打印机作为CIFS/SMB打印机共享进行共享。 [root@shareserver ~]# ———————服务端 ip:172.25.254.227 [root@client ~]# ——————客户端 ip:172.25.254.127 1、安装以及启动服务 在服务端: [root@shareserver ~]# yum install samba samba-client samba-common -y #samba —— 提供samba服务的主命令; #samba-client —— 提供测试服务
  • RHEL5企业级Linux服务全攻略
    最新,最详实的RHEL5服务攻略指南索引,所有配置都经本人测试成功。 现计划如下12季内容,各季RHEL5企业级内容将陆续首发,敬请期待~~~ 本专题RHEL5企业级Linux服务攻略主要讲解企业级服务,关于linux基础内容可以参考【51CTO_RHCE讲座】RHCE课程笔记 第1季 Linux服务器的搭建与测试 2008-12-5更新 1 Red Hat Enterprise Linux 5的安装 1.1 Red Hat Enterprise Linux 5光盘安装 1.2 Red Hat Enterprise Linux 5硬盘安装 1.3 Red Hat Enterprise Linux 5 NFS安装 1.4 Red Hat Enterprise Linux 5 FTP安装 1.5 Red Hat Enterprise Linux 5 HTTP安装2 常规网络配置 2.1 配置主机名 2.2 使用ifconfig配置IP地址及辅助IP地址 2.3 禁用和启用网卡 2.4 更改网卡MAC地址 2.5 route命令设置网关 2.6 网卡配置文件 2.7 setup命令 2.8 修改resolv.conf设置DNS 3 网络环境测试 3.1 ping命令检测网络状况 3.2 netstat命令 3.3 nslookup测试域名解析 第2季 Samba服务全攻略 2008-12
  • Samba通过ad域进行认证并限制空间大小
    本文实现了samba服务被访问的时候通过windows域服务器进行用户名和密码验证;认证通过的用户可以自动分配500M的共享空间;在用户通过windows域登陆系统的时候可以自动把这块空间映射成一块硬盘。 环境说明: 文件服务器用的Centos5.3,域控用的Win2k3 sp2,Domain是rainbird.net。 Centos5.3: Name:Filesrv IP:192.168.1.245 Dns:192.168.1.241 Samba:3.0.33-3.7.el5 Win2k3: Name:ad1 Ip:192.168.1.241 Dns:192.168.1.241 Ok,let’s move! 因为是服务器配置,所以本文的操作都是在字符界面下直接编辑文件。当然为了提高工作效率其中一部分配置是可以在图形界面下配的。前提是你必须是redhat/centos系统。如果是的话,可以参考我上一篇文章<<linux加入 windows域之完美方案 >>来做J 1.samba服务器软件需求 krb5-workstation-1.2.7-19 pam_krb5-1.70-1 krb5-devel-1.2.7-19 krb5-libs-1.2.7-19 samba-3.0.5-2 [root@filesrv CentOS]# rpm -qa|grep krb5 krb5-auth
  • [Jetbot] JetBot软件之环境搭建(Docker)
    文章目录 前言一、烧录系统镜像1. 下载JetPack4.42. 烧录3.链接显示器启动系统4. 配置Samba服务器5. 通过Samba共享文件 二、安装Jetbot1.克隆代码库2. 配置操作系统3. 构建docker容器4. 启动容器5. 禁用容器6. 相机问题解决 总结 前言 目前,JetBot的官方环境有两种安装方式 SD卡镜像安装Docker安装 由于官方镜像存放在谷歌云盘,国内无法下载,所以顺利成章的选择Docker安装。 参考资料:  官方文档地址:jetbot.org/v0.4.3/index.html  官方代码库:https://github.com/NVIDIA-AI-IOT/jetbot 一、烧录系统镜像 1. 下载JetPack4.4 鉴于目前Docker安装方式仅支持JetPack4.4 因此下载以下版本 https://developer.nvidia.com/jetpack-sdk-44-archive 如果遇到网络不好的情况,可以移步到我的网盘下载: 链接:https://pan.baidu.com/s/1_mT8Q1w-29Ehv1ZTzYzCYA 提取码:sm5p 2. 烧录 使用balenaEtcher烧录SD卡镜像 3.链接显示器启动系统 需要一些简单的配置、语言、用户名、密码等 更新系统安装源 sudo apt-get update
  • 随笔18_tww
    1、实现基于MYSQL验证的vsftpd虚拟用户访问 准备两台CentOS主机,一台作为FTP服务器,一台作为数据库服务器 # 1.数据库服务器[IP:192.168.47.101] [root@centos7_2 ~]# yum install mariadb-server -y [root@centos7_2 ~]# systemctl start mariadb ## 1.1创建数据库 [root@centos7_2 ~]# mysql MariaDB [(none)]> create database vsftpd; ## 1.2创建表 MariaDB [(none)]> use vsftpd CREATE TABLE users ( id INT AUTO_INCREMENT NOT NULL PRIMARY KEY, name CHAR(50) BINARY NOT NULL, password CHAR(48) BINARY NOT NULL ); ### 插入虚拟用户数据 INSERT INTO users(name,password) values('user1',password('pass1')); INSERT INTO users(name,password) values('user2',password('pass2')); ## 1.3创建用户
  • DAVINCI DM365-DM368开发攻略——开发环境搭建(DVSDK4.02)
    第一节、 技术开发环境中的社会环境 这篇文章迟迟没有写出来奉献给一些爱好音频视频开发的网友,是有很多原因的,TI在短时间内,针对高清音视频方案DM365/368,连续发布DVSDK3.0,DVSDK4.00,DVSDK4.01和DVSDK4.02,这点让我们很不适应。虽然我们的DM365/368核心板早已经出来,但是需要做开发板,并调试开发板,还有就是帮三个客户批量生产DM6446产品和产品维护的原因,这是主要原因。但还有三个严重影响士气的原因,让本人管理公司倍感压力,就是这个夏天不好过,全国处处都流行市区里看海,严重影响公司员工的工作专注性,这是其一;全国各地人民近一年连续性和惯性地“喜迎物价上涨”,这个严重影响员工的积极性,更让我们物料采购和生产压力逐步加大,这是其二;其三就是我们血液流淌的民族良心、热心和爱心被无情欺骗、玩弄、践踏,而且这些事情还要继续掩盖和描黑下去,我想大家都知道的。压力很大,再大也要坚持下去;再忙,也还得坚持把博客写好。话说得好:从来没有救世主,全靠我们自己。这句话一点也不言重,以后会明白的。 针对技术开发环境,我们分六部分进行描述: DM365/368介绍; 下载相关软件包; Ubuntu 10.04 LTS环境搭建; Ubuntu网络环境静态IP的设置和SMABA的设置; 交叉编译环境搭建; DVSDK4_02_00_06软件开发包的安装; 第二节、
  • Freeradius+Cisco2960S+windows AD实现有线802.1x认证
    概述 feeradius是一个免费开源的 AAA服务器,更能强大,很多功能不输商业化软件。曾经试过很多类似的软件,如Cisco的ACS,微软的NAP等,思科的不错就是太贵,微软的感觉不好用。本例主要实现freeradius3版本通过windows AD 及证书验证,实现在Cisco系列交换机上基于端口的802.1x认证,只有加入域的计算机和用户并且开启了认证才可以联网,否则交换机端口将其划入guest Vlan进行隔离修补。这里借鉴了官方文档的部分图片和内容,但官网有些方面说的还是不够完整,有些步骤省略了,因此本人结合自己的工作环境重新写了以下。拓扑如下: 环境准备1. CentOS7.2 【radius 服务器】2. Windows 2012 【AD服务区和CA机构,域名为test.com.cn】3. Windows 7 SP1 【客户端】4. FreeRadius 3.05. Samba 3.06. Openssl7. Cisco 2960S交换机【这里需要提前把Windows域控制器准备好,并安装好CA证书颁发机构,建立一个用户jack用于测试】linux server安装配置1. 安装配置samba,安装组件,【关门闭防火墙和selinux】yuminstall samba samba-client samba-winbind krb5-server配置/etc/samba
  • RHCE7 中模拟题samba服务
    在RHCE7模拟题有道samba服务,最后挂载一直不成功,考虑了一周,一直想不出来。最后排查原来是system1服务器中的smb文件path一个小小路径错误导致的。samba-2 1. 共享本机system1的/multishare目录 2. 共享/multishare 目录需要在system2 主机中被挂载到/mnt/multishare 目录下 3. system2 中的用户可以使用ldapuserX 的身份来获得对/mnt/multishare的只读权 4. system2 中的用户可以使用smbuserX 的身份来获得对/mnt/multishare的读写权 5. smbuserX 的登录口令是redhat 6. ldapuserX 的登录口令是redhat 7. smbuserX 的samba 访问口令是123 8. ldapuserX 的samba 访问口令是1239. 保证 system2 重启后仍能访问此共享 步骤1:[root@system1 ~]# mkdir /multishare[root@system1 ~]# chcon -t samba_share_t /multishare/[root@system1 ~]# setfacl -m u:ldapuser1:rx /multishare/[root@system1 ~]# setfacl -m u
  • 从零构建HarmonyOs开发环境
    序 鸿蒙开发环境主要是两点:1、需要一个linux环境:用来拉取代码、修改提交、以及编译构建2、需要一个Windows环境:用来运行鸿蒙的IDE(DevCo),它用来编辑代码,烧写调试所以笔者建议的方式是,在Windows上虚拟一个linux。本文将介绍如何基于Windows10主机,通过VirtualBox虚拟一个Linux系统(ubuntu):  ~Win10上运行IDE,虚拟机运行Ubuntu,Win10通过ssh连接虚拟机获得shell端口;  ~同时Win10可通过samba访问虚拟机文件目录,使得IDE可以打开虚拟机中的代码,实现IDE和shell共同操作同一套代码。 VirtualBox安装 官网下载安装:https://www.virtualbox.org/wiki/Downloads这个比较简单,不再赘述,笔者安装的本版是:6.1.14 r140239 (Qt5.6.2)PS:官网比较慢,如果着急,也可以通过360软件管家安装 创建Ubuntu虚拟机 1、打开VirtuaBox点击新建2、如图指定参数,名称您随意,文件夹路径用来存放该虚拟机数据,类型选Linux,版本选Ubuntu64-bit,然后点击“下一步”3、进入内存设置页面,建议设置为主机真实内存1/4到1/2,本例设置为2G(主机有8G内存)4、选择创建一个新的虚拟硬盘,然后点击“下一步
  • 从零构建HarmonyOs开发环境
    序 鸿蒙开发环境主要是两点:1、需要一个linux环境:用来拉取代码、修改提交、以及编译构建2、需要一个Windows环境:用来运行鸿蒙的IDE(DevCo),它用来编辑代码,烧写调试所以笔者建议的方式是,在Windows上虚拟一个linux。本文将介绍如何基于Windows10主机,通过VirtualBox虚拟一个Linux系统(ubuntu):  ~Win10上运行IDE,虚拟机运行Ubuntu,Win10通过ssh连接虚拟机获得shell端口;  ~同时Win10可通过samba访问虚拟机文件目录,使得IDE可以打开虚拟机中的代码,实现IDE和shell共同操作同一套代码。 VirtualBox安装 官网下载安装:https://www.virtualbox.org/wiki/Downloads这个比较简单,不再赘述,笔者安装的本版是:6.1.14 r140239 (Qt5.6.2)PS:官网比较慢,如果着急,也可以通过360软件管家安装 创建Ubuntu虚拟机 1、打开VirtuaBox点击新建2、如图指定参数,名称您随意,文件夹路径用来存放该虚拟机数据,类型选Linux,版本选Ubuntu64-bit,然后点击“下一步”3、进入内存设置页面,建议设置为主机真实内存1/4到1/2,本例设置为2G(主机有8G内存)4、选择创建一个新的虚拟硬盘,然后点击“下一步
  • 树莓派在局域网中创建文件夹
    树莓派和局域网中的电脑文件共享 安装samba sudo apt-get install samba samba-common-bin 2.打开samba sudo nano /etc/samba/smb.conf 3.配置共享文件夹 [public] comment = public storage path = /home/public/wenjian valid users = pi read only = no create mask = 0777 directory mask = 0777 guest ok = no browseable = yes 保存——保存到文件smb.conf——退出 4.把pi设置为有效账户 sudo smbpasswd -a pi 5.重启samba sudo samba restart 6.设置文件权限 sudo chmod -R 777 /home/public/wenjian 附:电脑 win+R 运行\192.168.1.1\public 192.168.1.1根据具体Pi的局域网地址填写 查看方法:打开路由器的连接查看就行 来源:https://blog.csdn.net/weixin_42835447/article/details/115258841
  • 使用kerberos实现windowsAD账户和linuxsamba服务的结合
    使用Active Directory来进行身份认证,主要是通过linux下的kerberos服务器来认证windows下的用户,达到windows AD域用户在linux下的使用,实现windows域控下的账户在linux各种服务上认证,同一管理账号,方便samba、postfix、FTP等。如使用AD域下的aa账户登录linux下的samba(aa的samba目录)或ftp,或发送邮件等。首先要把linux主机也加入到windows域中。 主机名 系统 ip地址 用途 aa-kk windows server2003 AD 192.168.40.199 AD域控制器,用于账号管理 nn centos 或RHEL 5.5 192.168.40.175 搭建各个服务,如samba、postfix、FTP等 qq xp 192.168.40.20 客户端,用于测试samba、postfix等,实现windows域控制的账户和linux服务之间的结合。 环境如下: aa-kk是域名为ASK.COM的域控制器,dns指向自己。linux下的dns也指向改域控制器的ip地址,且linux下可以ping通aa-kk.ask.com的出来的ip地址是192.168.40.199.也就是说解析正反向地址成功。还有最重要的是时间同步。 先来理解几个概念: PDC:主域控制器,一般用来做验证 BDC
  • Harmony OS 开发指南——DevEco Device Tool 安装配置
    Harmony OS 开发指南——DevEco Device Tool 安装配置 本文介绍如何在Windows主机上安装DevEco Device Tool工具。 坑点总结: 国内部分网络环境下,安装npm包可能会很慢或者超时,推荐使用国内npm源(如淘宝源、华为源等); serialport这个npm包安装的过程中需要编译源码,需要先安装windows-build-tools再安装这个包才会成功; DevEco Device Tool中打包了预编译的.exe文件,只能在Windows版的VSCode中使用(暂不支持Linux和Mac OS); 准备环境 本节介绍下载、编译鸿蒙源码需要的软硬件环境。 硬件环境 其中,Linux主机用于源码下载和编译,Windows主机用于烧写程序到单板以及源码编辑。 软件环境 硬件 说明 Linux主机 推荐实际物理机器,Ubuntu16.04及以上64位系统,Shell使用bash,安装有samba、vim等常用软件,需要做适当适配以支持linux文件共享,(Samba配置需要注意,除了修改配置文件,还需要使用 smbpasswd 命令创建密码);使用虚拟机也可以,但需要配置正确虚拟网络,这里不做详细介绍。 Windows主机 Windows XP/Windows7/Windows10 系统 USB转UART芯片驱动
  • 与树莓派共享目录 —— Windows自带NFS客户端?
    很多树莓玩家都在用 Winscp 等软件在 Windows 和树莓派之间来回传文件。虽然也能用,但总不像Windows网上邻居的共享那么方便。如果只跟Windows共享,用Samba倒也可以。但有没有更简单的方法让Windows和Linux都能挂载树莓派上的共享区域呢?其实很多朋友不知道,为了方便跟 Unix/Linux 交互,微软早就在Windows系统里准备了NFS客户端,找到“打开或关闭Windows功能”,将相关工具开启即可使用。Windows 7及后续版本都支持,不管是服务器版还是桌面版。步骤如下:首先在远程树莓派上设置好NFS。我的设置和共享目录如图所示。然后在本地Windows进控制面板,打开“Windows 功能”选项卡,选择相关组件。功能开启成功后可以对 NFS 客户端进行设置,比如选择TCP协议还是UDP协议。一般我共享视频播放的时候,会选择UDP协议。具体怎么设置请自己考虑。软挂载和硬挂载的区别:对硬挂载文件系统来说,如果因为某种原因远程系统的响应失败,比如NFS服务端挂掉等,则NFS客户端将会持续地尝试建立连接,这样可能导致执行df等命令出现挂死的现象。而对软挂载文件系统来说,同样情况下,在指定的时间间隔后NFS客户端将会放弃尝试建立连接而发送一个错误消息。默认采用硬挂载文件系统,系统硬挂载尝试失败时,对用户输入的响应也会停止。正是因为这样
  • PXE BOOT DIY自己的网络启动工具集合之二
    上一篇说了PXE BOOT的原理,当计算机这边看到菜单的时候,PXE BOOT的部分已经结束了,接下来就由pxelinu.0处理了。对于linux而言。接下来需要向TFTP SERVER服务器请求kernel和文件系统intrd.gz.然后就能顺利启动操作系统了。上一篇通过PXE BOOT安装linux正是这样一个原理。那么能否也用同样的办法来安装windows呢,是可以的。微软的windows系列也有同样的办法。 先转载一段某论坛看到的关于windows网络安装的原理: Windows网络安装表示从局域网内部引导Windows安装,核心技术基于微软的RIS(Remote Installation Services)。 实现Windows网络安装需要四个服务:BOOTP,TFTP,BINL,Windows Share. 其中BOOTP和TFTP是实现PXE启动的基础,关于PXE启动的详细信息,可以参考[url]http://bbs.znpc.net/viewthread.php?tid=3662&extra=page%3D1[/url] BINL服务,微软称之为启动信息协商层(Boot Information Negotiation Layer),其作用是网卡查询、身份验证、启动镜像选择等功能。实现Windows网络安装只需要其中一项功能,即网卡查询
  • nfs服务的使用指南
    NFS网络文件系统(网络共享文件服务) 01. 什么是NFS NFS是Network File System的缩写,中文意思是网络文件系统, 它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录 互联网中小型网站集群机构后端常用NFS进行数据共享, 如果大型网站,那么有可能还会用到更复杂的分布式文件系统,例如:Moosefs(mfs)、GlusterFS、FastDFS 后面会发不关于分布式存储的文章(从0基础学习分布式存储) 说明:NFS服务只能应用在linux系统上,FTP samba服务均都支持linux和windows 02. NFS服务应用 NFS是一个共享存储服务,为什么要有共享存储? 实现数据信息的共享(数据库内容) 实现数据信息的一致 (网站代码、展示内容) 03. 共享存储方式 硬件实现共享存储 IBM oracle EMC == 去除IOE 软件实现共享存储 NFS FTP samba 04. NFS共享系统原理 在NFS服务端创建共享目录 通过mount网络挂载,将NFS客户端本地目录挂载到NFS服务端共享目录上 NFS客户端挂载目录上创建、删除、查看数据操作,等价于在服务端进行的创建 删除 查看操作 05. 什么是RPC(Remote Procedure Call) RPC服务相当于中介,NFS相当于房源,NFS客户端相当于租客 06
  • FreeRADIUS 测试环境搭建
    Freeradius测试环境搭建 AAA服务器和RADIUS协议 AAA(Authentication,Authorization,Accounting)验证,授权,记账。AAA服务器主要功能是:哪些用户具有访问权限,具有访问权限的用户 又可以访问哪些服务,对用户正在使用的网络资源进行计账。 RADIUS(Remote Authentication Dial In User Service)协议是唯一的AAA标准。RADIUS协议是基于UDP的一种客户机/服务器协议。RADIUS客户机是网络访问服务器,它通常是一个路由器,交换机或者无线访问点。RADIUS服务器通常是运行在linux或Windows服务器上的一个监护程序。 RADIUS协议的认证端口是1812,记账端口是1813。 RADIUS协议的特点: 1. Client/Server模式 RADIUS协议是C/S结构协议,客户端是把用户信息传递给RADIUS服务器,并负责执行返回的响应。 RADIUS服务器负责接受用户的请求,对用户身份进行认证,并为客户端返回所有为用户提供服务所必须的配置信息。RADIUS服务器可以为其他的RADIUS Server担当代理。 2. 网络安全 客户端和RADIUS服务器之间的交互经过共享密钥认证,另外避免有人在网络上监听获取用户密码,客户端和服务器之前的任何的通信都是经过加密后传输的。 3
  • PHP-无法打开流:没有这样的文件或目录(PHP - Failed to open stream : No such file or directory)
    问题 在PHP脚本中,无论是调用include() , require() , fopen()还是它们的派生类,例如include_once , require_once ,甚至move_uploaded_file() ,都会经常出现错误或警告: 无法打开流:没有这样的文件或目录。 有什么好的方法可以快速找到问题的根本原因? 回答1 有很多原因可能会导致此错误,因此,首先要检查的内容的良好清单很有帮助。 让我们考虑对以下行进行故障排除: require "/path/to/file" 检查清单 1.检查文件路径是否有错别字 手动检查(通过目视检查路径) 或将require*或include*所调用的内容移到其自己的变量中,对其进行回显,复制并尝试从终端进行访问: $path = "/path/to/file"; echo "Path : $path"; require "$path"; 然后,在终端中: cat <file path pasted> 2.关于相对路径和绝对路径注意事项,检查文件路径是否正确 如果它以正斜杠“ /”开头,则它不是指网站文件夹的根目录(文档根目录),而是服务器的根目录。 例如,您网站的目录可能是/users/tony/htdocs 如果它不是以正斜杠开头,那么它要么依赖于include路径(参见下文),要么是相对路径。 如果是相对的