在運維大環境下Openstack、docker和虛擬化盛行的年代,對於基礎運維環境的搭建,特別是日常辦公工作中,建立適當的共享機制進行辦公內部資源共享,針對這樣的情況,我們詳解以下3種常用基本共享的方式
1.Windows文件共享
2.samba文件共享
3.nfs網絡文件系統共享
4.以SVN爲基礎進行C/S模式的文件共享
1.Windows文件共享
進入計算機管理——》共享文件夾——》共享——》新建共享
下一步略過,重點講述權限部分
此處需要在共享權限以及安全兩個選項中都需要添加上需要的用戶
2.samba文件共享
RHEL
yum install samba samba-common
Ubuntu
apt-get install samba samba-common samba配置文件在/etc/samba/smb.conf
配置文件中常用
hosts allow = 192.168.3.4 #hosts deny = 192.168.3.5
[share] comment = share's share directory browseable = yes path = /home/share writable = yes valid users = share,abc create mode = 777 directory mode = 777 write list = qwe, root
以上配置爲只允許192.168.3.4訪問(如果將註釋寫在上面一行,則爲不允許192.168.3.5訪問)
創建share目錄共享,允許qwe進行創建目錄,寫入權限爲777;允許share及abc讀取
用戶只能寫文件,不能進行刪除配置
設置共享文件夾屬性:
chmod 1777 /home/share
配置共享屬性
writable = yes
valid users = share,abc
create mode = 1444
directory mode = 1555
創建samba用戶密碼方法:
smbpasswd -a share
修改samba用戶密碼:
smbpasswd share
查看已經添加的samba用戶列表:
pdbedit -L
3.nfs網絡文件系統共享
NFS
服務端
RHEL 5
yum install nfs-utils yum install portmap #用於支持安全NFS RPC服務的連接
RHEL 6
yum install nfs-utils yum install rpcbind
Ubuntu
安裝nfs組件
# apt-get install nfs-kernel-server -y # vi /etc/exports /home/nfs_share 192.168.3.2(rw,sync,no_root_squash) /home/nfs_share 192.168.3.0/24(ro,sync,no_root_squash)
注意:配置文件的說明在 man 5 exports
# chmod 777 /home/nfs/ service nfs-kernel-server restart service portmap restart
首先測試本機 mount.nfs 127.0.0.1:/home/nfs /mnt
iptables開啓狀態下開放以下端口
vi /etc/services nfs 2049/tcp # Network File System nfs 2049/udp # Network File System sunrpc 111/tcp portmapper # RPC 4.0 portmapper sunrpc 111/udp portmapper rpc2portmap 369/tcp rpc2portmap 369/udp # Coda portmapper
linux客戶端
安裝nfs組件
apt-get install -y nfs-common libgssglue1 rpcbind
掛載磁盤
mount -t nfs 192.168.3.1:/home/nfs /mnt mount.nfs 192.168.3.1:/home/nfs /mnt
開機即掛載
vi /etc/fstab 192.168.3.1:/home/nfs /mnt nfs defaults 0 0
新增主機需求請先配置
服務端:
修改 /etc/exports
重啓服務生效 service nfs-kernel-server restart
客戶端:
修改 /etc/fstab
掛載磁盤或者reboot實現生效服務
windows客戶端
2008 server版 服務器管理——》添加角色——》文件服務——》下一步——》網絡文件系統服務,安裝完成後
在cmd執行命令 mount 192.168.3.1:/home/nfs X:
應用場景分析
1.只有192.168.3.3的IP能對磁盤進行寫操作,其他IP只能讀
在/etc/exports中
/home/nfs_share 192.168.3.3(rw,sync,no_root_squash)
/home/nfs_share 192.168.3.0/24(sync,no_root_squash)
非192.168.3.3主機能夠正常查看文件,但是編輯後無法對磁盤進行寫操作,報錯信息如下:
Linux報錯信息
$ touch aa
touch: cannot touch `aa': Read-only file system
window報錯信息
4.以SVN爲基礎進行C/S模式的文件共享
SVN與上述3種區別在於
增加了鎖機制,使得管理員併發佔用的問題得到了解決;
不依賴於網絡共享的方式,更新後可保存在本地;
對於目錄的可見性也做出了改變,用戶進行checkout的目錄只能到定義過的目錄;
可以藉助客戶端以及web頁面登錄對文件進行下載;
權限及數據安全問題
window共享基於本機用戶的方式
samba共享IP和用戶賬戶的方式,賬戶也必須是服務器存在的,否則得使用虛擬賬戶
nfs共享基於IP的方式開啓只讀模式
只讀的模式避免了數據被刪除,
SVN共享基於用戶賬戶屬性,目錄訪問受到權限的影響,但是無法避免數據被員工離職對帶有權限的文件夾進行拷貝的問題
上述共享無法避免數據被員工離職全盤拷貝的問題,針對拷貝,只能上專業的DLP系統將共享服務通過加密網關進行加密的保障,另外一種將共享文件放在web,並帶有日誌記錄,下載數量的限制。
用戶修改密碼問題
SVN的Server端,採用數據庫的方式搭建,因此可以使用自行編碼的網頁對MySQL所使用的SVN表的字段進行修改,Collabnet SVN Edge架設SVN服務器的話,登錄自帶的WEB版控制檯就可以修改密碼;
闡述結束後,畢竟是運維的基礎架構,搭建完成後,我們不再因爲Critix Xen Center安裝操作系統需要自建CIFS ISO Library的困難發愁了,同時VMware EXSI,KVM,ansilble自動化部署等也不再爲基礎設施的搭建困擾。