samba與nfs

一、共享

Windows共享:Windows鍵+R --> services.msc --> Computer、Server(CIFS協議,實現跨平臺)、Workstation(SMB協議,實現共享)

Linux共享:Samba(CIFS、SMB)

協議:多方達成某種條款

Samba共享:smb:實現數據的共享及訪問(TCP 139、445)、nmb:實現Netbios解析(DNS)、(TCP 137、138)

Samba訪問方式:匿名、本地用戶、服務器認證、域服務器認證

二、部署Samba匿名訪問

需配置靜態IP

1.安裝Samba共享

rm -rf /etc/yum.repos.d/* //刪除系統中默認自帶官方YUM源

vim /etc/yum.repos.d/local.repo

[local] //倉庫名
name=local
baseurl=file:///mnt //軟件包存儲位置
enabled=1 //啓動該倉庫
gpgcheck=0 //不檢測公鑰信息

yum clean all && yum repolist //清除所有yum緩存,並重新新建緩存

yum -y install samba

2.編輯配置文件

vim /etc/samba/smb.conf

:% g/^$/d //刪除文本中所有空行

:% g/^;/d //刪除文本中以;開頭行

:% g/^#/d //刪除文本中以#開頭行

[global]

workgroup = WORKGROUP               //指定工作組名稱,需修改
server string = Samba Server Version %v     //服務器描述信息

# logs split per machine
log file = /var/log/samba/log.%m        //日誌文件的位置
# max 50KB per log file, then rotate
max log size = 50               //日誌文件最大值(默認爲KB)

security = share                //安全級別(share匿名訪問、user本地用戶認證、server服務器認證、domain域認證)
passdb backend = tdbsam         //密碼認證文件

# the login script name depends on the machine name
# the login script name depends on the unix user used
# disables profiles support by specifing an empty path

disable spoolss = yes           //新增,禁用打印機共享
load printers = yes             //默認共享打印機
cups options = raw              //共享打印機的選項
#obtain list of printers automatically on SystemV

[hehe] //共享名
comment = He is He //描述信息
path = /data //共享目錄
browseable = yes //是否可瀏覽
guest ok = yes //是否可讀
writable = yes //是否可寫

6)mkdir /data && chmod -R o=rwx /data/ //給予共享目錄允許其它用戶擁有完全權限

3.啓動服務

/etc/init.d/smb restart

/etc/init.d/nmb restart

chkconfig --level 35 smb on

chkconfig --level 35 nmb on

4.訪問

Windows系統

Windows+R鍵 --> 運行 --> \服務器IP

Linux系統

安裝samba-client軟件包

yum -y install samba-client

2.查看指定IP所有共享內容

smbclient -L 共享IP -U 用戶名 //如爲匿名訪問,用戶名爲anonymous、密碼爲空

3.訪問共享IP下的所有內容

smbclient -U 用戶名 -P 密碼 //共享IP/共享名

smb: \> put 文件 //將本地文件上傳到共享目錄

smb: \> get 文件 //從共享目錄下下載指定內容到本地

smb: \> exit

4.mount命令臨時掛載共享到本地目錄

mount -o username=用戶名,password=密碼 //共享IP/共享名 /掛載目錄

5.mount命令永久掛載共享到本地目錄

1)vim /etc/fstab

//共享IP/共享名 /掛載目錄 cifs defaults,username=用戶名,password=密碼 0 0

2)mount -a

3)ls /掛載目錄

三、部署本地訪問的Samba

1.安裝Samba共享

yum -y install samba

2.編輯配置文件

1)useradd -s /sbin/nologin hehe

2)pdbedit -a -u hehe //將系統用戶hehe轉換爲Samba共享用戶並設置密碼

3)vim /etc/samba/smb.conf

:% g/^$/d //刪除文本中所有空行

:% g/^;/d //刪除文本中以;開頭行

:% g/^#/d //刪除文本中以#開頭行

[global]

workgroup = WORKGROUP               //指定工作組名稱,需修改
server string = Samba Server Version %v     //服務器描述信息

# logs split per machine
log file = /var/log/samba/log.%m        //日誌文件的位置
# max 50KB per log file, then rotate
max log size = 50               //日誌文件最大值(默認爲KB)

# the login script name depends on the machine name
# the login script name depends on the unix user used
# disables profiles support by specifing an empty path

security = user                 //安全級別爲user(使用本地用戶認證)
passdb backend = tdbsam             //密碼認證文件

disable spoolss = yes           //新增,禁用打印機共享
load printers = yes             //默認共享打印機
cups options = raw              //共享打印機的選項
#obtain list of printers automatically on SystemV

[hehe] //共享名
comment = He is He //描述信息
path = /data //共享目錄
browseable = yes //是否可瀏覽
guest ok = yes //是否可讀
writable = yes //是否可寫

4)mkdir /data && chmod -R o=rwx /data/ //給予共享目錄允許其它用戶擁有完全權限

3.啓動服務

/etc/init.d/smb restart

/etc/init.d/nmb restart

chkconfig --level 35 smb on

chkconfig --level 35 nmb on

4.驗證

1)使用hehe用戶登錄可讀取並寫入

四、Samba多用戶權限控制

1.安裝Samba共享

yum -y install samba

2.編輯配置文件

1)useradd -s /sbin/nologin hehe

2)useradd -s /sbin/nologin haha

3)pdbedit -a -u hehe //將系統用戶hehe轉換爲Samba共享用戶並設置密碼

4)pdbedit -a -u haha //將系統用戶haha轉換爲Samba共享用戶並設置密碼

4)vim /etc/samba/smb.conf

:% g/^$/d //刪除文本中所有空行

:% g/^;/d //刪除文本中以;開頭行

:% g/^#/d //刪除文本中以#開頭行

[global]

workgroup = WORKGROUP               //指定工作組名稱,需修改
server string = Samba Server Version %v     //服務器描述信息

# logs split per machine
log file = /var/log/samba/log.%m        //日誌文件的位置
# max 50KB per log file, then rotate
max log size = 50               //日誌文件最大值(默認爲KB)

security = user                 //安全級別爲user(使用本地用戶認證)
passdb backend = tdbsam             //密碼認證文件

# the login script name depends on the machine name
# the login script name depends on the unix user used
# disables profiles support by specifing an empty path

disable spoolss = yes           //新增,禁用打印機共享
load printers = yes             //默認共享打印機
cups options = raw              //共享打印機的選項
#obtain list of printers automatically on SystemV

[hehe] //共享名
comment = He is He //描述信息
path = /data //共享目錄
browseable = yes //是否可瀏覽
guest ok = no //禁止所有人讀取
valid users = hehe,haha //定義允許讀取的用戶列表
writable = no //禁止所有人寫入
write list = hehe //定義允許寫入的用戶列表

4)mkdir /data && chmod -R o=rwx /data/ //給予共享目錄允許其它用戶擁有完全權限

3.啓動服務

/etc/init.d/smb restart

/etc/init.d/nmb restart

chkconfig --level 35 smb on

chkconfig --level 35 nmb on

4.驗證

1)使用hehe用戶登錄可讀取並寫入

2)使用haha用戶登錄只可讀取

關於客戶端訪問共享慢的解決方案

1.vim /etc/resolv.conf

nameserver 服務器IP

2.客戶端將DNS指定爲服務器IP

五、Samba安全控制

1.別名

1)vim /etc/samba/smbusers

hehe = a b c

用戶名 = 別名(空格分割多個別名)

2)vim /etc/samba/smb.conf

[global]

username map = /etc/samba/smbusers

3)/etc/init.d/smb restart && /etc/init.d/nmb restart

2.訪問控制

vim /etc/samba/smb.conf

[global]

hosts allow = IP(網段、域名) //只允許指定IP訪問共享,其餘主機拒絕訪問

hosts deny = IP(網段、域名) //除指定IP拒絕訪問,其餘的全部允許

注:hosts allow與hosts deny不能同時使用

3.權限

vim /etc/samba/smb.conf

[global]

create mask = 權限 //設置用戶上傳或新建文件權限(建議將x權限取消)

directory mask = 權限 //設置用戶上傳或新建目錄的權限(建議爲755)

Samba:實現Windows與Linux等之間的共享訪問

一、NFS(Network File System)網絡文件系統

1.與Samba對比

1)NFS配置簡單

2)NFS權限比較簡單

3)只能用於Linux之間訪問

4)數據明文傳輸

2.通過TCP的NFS協議實現共享

3.軟件包:nfs-utils、rpcbind(RPC,實現服務器的內容映射到本地)

二、配置NFS

1.配置IP

1)rm -rf /etc/udev/rules.d/70-persistent-net.rules //刪除存放網卡名稱的配置文件

2)reboot

3)vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.1.10
NETMASK=255.255.255.0

4)/etc/init.d/network restart

2.YUM安裝NFS軟件包

1)rm -rf /etc/yum.repos.d/* //刪除自帶YUM源配置文件

2)vim /etc/yum.repos.d/local.repo

[local]
name=local
baseurl=file:///mnt
gpgcheck=0

3)mount /dev/cdrom /mnt

4)yum -y install rpcbind nfs-utils

3.準備共享路徑

1)mkdir /data

2)touch /data/hehe

4.修改NFS文件配置

1)vim /etc/exports

共享目錄 允許訪問地址(選項)

/data *(rw,sync,no_root_squash)

選項:

rw:讀寫

ro:只讀

sync:同步寫入

no_root_squash:客戶端使用root身份訪問時保持原有權限

root_squash:客戶端使用root身份訪問時,將使用nfsnobody用戶權限

注:如有多個允許的客戶端,需寫多行配置

5.啓動服務並設置爲開機自啓

1)/etc/init.d/rpcbind start && chkconfig --level 35 rpcbind on

2)/etc/init.d/nfs start && chkconfig --level 35 nfs on

6.客戶端驗證

1)客戶端配置IP、並配置好YUM

2)yum -y install nfs-utils

3)mount 192.168.1.10:/data /media //將NFS服務器中/data目錄掛載到本地/meida

4)vim /etc/fstab

192.168.1.10:/data /media nfs defaults,_netdev 0 0

5)mount -a //讀取/etc/fstab文件並重新加載

選項:

_netdev:當有網絡時自動掛載

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章