第十三周作業

1、建立samba共享,共享目錄為/data,要求:(描述完整的過程)

  1)共享名為shared,工作組為magedu;

  2)添加組develop,添加用戶gentoo,centos和ubuntu,其中gentoo和centos以develop為附加組,ubuntu不屬于develop組;密碼均為用戶名;
  3)添加samba用戶gentoo,centos和ubuntu,密碼均為“mageedu”;
  4)此samba共享shared僅允許develop組具有寫權限,其他用戶只能以只讀方式訪問;

  5)此samba共享服務僅允許來自于172.16.0.0/16網絡的主機訪問; 

    1)安裝samba軟件包

]# yum install samba -y

    2)添加系統用戶和組

]# groupadd develop
]# useradd gentoo -G develop
]# useradd centos -G develop
]# useradd ubuntu
]# for i in gentoo centos ubuntu;do echo "$i"|passwd --stdin $i;done
Changing password for user gentoo.
passwd: all authentication tokens updated successfully.
Changing password for user centos.
passwd: all authentication tokens updated successfully.
Changing password for user ubuntu.
passwd: all authentication tokens updated successfully.

     3)添加samba用戶

]# smbpasswd -a gentoo
]# smbpasswd -a centos
]# smbpasswd -a ubuntu
]# pdbedit -L
gentoo:1000:
ubuntu:1002:
centos:1001:

     4)編輯samba配置文件,添加下面內容:

[shared]                                            #定義共享名稱
        comment = magedu share                      #注釋信息
        path = /data                                #本地的共享目錄
        browseable = yes                            #是否能夠被所有用戶看到
        read only = yes                             #是否為只讀
        write list = @develop                       #擁有寫權限的用戶或組
        hosts deny = 172.16.0.0/255.255.255.0       #拒絕指定網段的訪問

     5)重載samba服務使配置生效

]# systemctl reload smb.service

     6)測試

]# smbclient //192.168.0.111/shared -U gentoo
Enter gentoo's password: 
Domain=[SAMBA] OS=[Windows 6.1] Server=[Samba 4.4.4]
smb: \> put php.ini
putting file php.ini as \php.ini (5814.8 kb/s) (average 5814.9 kb/s)        #使用gentoo用戶能夠上傳文件
]# smbclient //192.168.0.111/shared -U ubuntu
Enter ubuntu's password: 
Domain=[SAMBA] OS=[Windows 6.1] Server=[Samba 4.4.4]
smb: \> put php.ini
NT_STATUS_ACCESS_DENIED opening remote file \php.ini                        #使用ubuntu用戶上傳文件失敗

2、搭建一套文件vsftp文件共享服務,共享目錄為/ftproot,要求:(描述完整的過程)
  1)基于虛擬用戶的訪問形式;
  2)匿名用戶只允許下載,不允許上傳;
  3)禁錮所有的用戶于其家目錄當中;
  4)限制最大并發連接數為200:;
  5)匿名用戶的最大傳輸速率512KB/s
  6)虛擬用戶的賬號存儲在mysql數據庫當中。

  7)數據庫通過NFS進行共享。

    1)安裝mysql和需要用到的依賴包

]# yum groupinstall "Server Platform" "Server Platform Development" -y
]# yum install mariadb* openssl-devel pam-devel -y

     2)編譯安裝pam_mysql

]# tar xf pam_mysql-0.7RC1.tar.gz
]# cd pam_mysql-0.7RC1
]# ./configure --with-mysql=/usr/ --with-openssl=/usr --with-pam=/usr --with-pam-mods-dir=/lib64/security/
]# make && make install

    3)在數據庫中創建庫與添加虛擬用戶

]# mysql
MariaDB [(none)]> create database vsftpd;            #創建vsftpd庫
MariaDB [(none)]> use vsftpd;
MariaDB [(none)]> create table users (               #創建虛擬用戶表
    -> id int auto_increment not null primary key,
    -> name char(30) not null,
    -> password char(48) binary not null);
MariaDB [vsftpd]> insert into users(name,password) values ('tom',password('magedu'));            #插入兩條虛擬用戶信息
MariaDB [vsftpd]> insert into users(name,password) values ('jerry',password('magedu'));
MariaDB [vsftpd]> grant select on vsftp.* to 'vsftpd'@'localhost' identified by 'magedu';        #創建vsftpd用戶并授權
MariaDB [vsftpd]> grant select on vsftp.* to 'vsftpd'@'127.0.0.1' identified by 'magedu';
MariaDB [vsftpd]> flush privileges;

     4)創建pam配置文件

]# vim /etc/pam.d/vsftpd.mysql
auto required pam_mysql.so user=vsftpd passwd=magedu host=localhost db=vsftpd table=users usercolumn=name pass
wdcolumn=password crypt=2
account required pam_mysql.so user=vsftpd passwd=magedu host=localhost db=vsftpd table=users usercolumn=name p
asswdcolumn=password crypt=2

     5)創建系統虛擬用戶和ftp上傳目錄

]# useradd -s /sbin/nologin -d /ftproot/ vuser        #創建系統虛擬用戶
]# chmod -w /ftproot                                  #取消根目錄的寫權限(根目錄下不具有寫權限)
]# cd /ftproot/
]# mkdir ftpdir                                       #創建ftp上傳目錄并修改權限
]# chown vuser.vuser ftpdir

     6)修改vsftpd配置文件

]# vim /etc/vsftpd/vsftpd.conf
chroot_local_user=YES            #限制所有用戶在其家目錄中
anonymous_enable=YES             #允許匿名用戶登錄
local_enable=YES                 #允許啟用本地用戶
write_enable=YES                 #允許本地用戶擁有寫權限
pam_service_name=vsftpd.mysql    #使用vsftpd.mysql作為pam認證文件
guest_enable=YES                 #激活虛擬用戶
guest_username=vuser             #mysql虛擬用戶在系統中對應的用戶
virtual_use_local_privs=YES      #虛擬用戶與本地用戶的權限相同
max_clients=200                  #最大并發連接數為200
anon_max_rate=512000             #匿名用戶最大傳輸速率為512Kb

      7)重啟vsftpd服務生效

]# systemctl restart vsftpd.service

    8)將ftp目錄通過nfs進行共享

]# vim /etc/exports
/ftproot/ftpdir *(rw,sync)                #將ftp目錄設置為nfs共享盤
]# systemctl restart rpcbind.service      #重啟rpcbind和nfs服務使配置生效
]# systemctl restart nfs.service
]# showmount -e 192.168.0.113             #測試與nfs服務的通信
Export list for 192.168.0.113:
/ftproot/ftpdir *

原創文章,作者:N26-西安-方老喵,如若轉載,請注明出處:http://www.www58058.com/72453

(0)
N26-西安-方老喵N26-西安-方老喵
上一篇 2017-04-04
下一篇 2017-04-04

相關推薦

  • 第四周作業2

    #### 1、 復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 首先,利用cp命令將/etc/skel目錄復制為/home/tuser1: “` [root@localhost ~]# cp -r /etc/skel /home/tuser1 “` 隨…

    Linux干貨 2018-03-24
  • Linux發展史

    Linux 操作系統是UNIX操作系統的一種克隆系統。它誕生于1991年的10月5日(這是第一次正式向外公布的時間)。以后借助于Internet網絡,并經過全世界各地計算機愛好者的共同努力下,現已成為今天世界上使用最多的一種UNIX類操作系統,并且使用人數還在迅猛增長。下文簡要介紹了Linux發展史。 1969年,美國貝爾實驗室的Ken.Thompson和D…

    Linux干貨 2016-10-17
  • 計算機的組成及其功能

    計算機現如今已經成為了我們生活中不可缺少的一部分,那么它是由什么組成的呢?簡單來說,計算機系統是由硬件系統(hardware system)和 軟件系統(software system)兩部分組成。 Mac電腦背景圖.jpg 下面我們來羅列一下計算機系統的主要組成,請看下圖 計算機系統組成.png 計算機的功能 我們知道計算機十分強大,那么它都有哪…

    Linux干貨 2017-08-23
  • Linux基本命令

    基本命令 1、用戶 1、  root  :超級用戶 2、  普通用戶(生產環境一般使用普通用戶) 2、終端terminal 1、  設備終端 :鼠標、顯示器 2、  物理終端 (/dev/console): 1.       控制臺 3、 …

    Linux干貨 2017-04-17
  • httpd 高級應用

    回顧:httpd, lamp, mysql httpd:https, mod_deflate, … httpd+php:三種結合方式     Module:         prefork:libphp5.so  &n…

    Linux干貨 2016-11-01
  • 單引號、雙引號和反引號使用方法

        首先向馬哥和馬哥團隊敬個禮,謝謝你們帶我進入Linux的世界,剛開始接觸linux時,經??吹絾我?、雙引號和反引號特殊符號,經常搞混淆和誤用,應該用雙引號,有時用到單引號。經過幾天的混亂引用,總算搞明白了一些,簡單總一下三者的使用和區別。  單引號 ‘’     單引號里的內容全部以普通字符的含義進…

    Linux干貨 2015-07-29

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-04-10 16:20

    非常的好,請繼續保持~~~加油?。?/p>

欧美性久久久久