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網絡的主機訪問;
先添加用戶并創建密碼x'z
[root@Hao ~]# groupadd develop [root@Hao ~]# useradd -G develop gentoo [root@Hao ~]# useradd -G develop centos [root@Hao ~]# useradd ubuntu [root@Hao ~]# echo "gentoo" | passwd --stdin gentoo 更改用戶 gentoo 的密碼 。 passwd: 所有的身份驗證令牌已經成功更新。 [root@Hao ~]# echo "centos" | passwd --stdin centos 更改用戶 centos 的密碼 。 passwd: 所有的身份驗證令牌已經成功更新。 [root@Hao ~]# echo "ubuntu" | passwd --stdin ubuntu 更改用戶 ubuntu 的密碼 。 passwd: 所有的身份驗證令牌已經成功更新。 [root@Hao ~]# smbpasswd -a gentoo New SMB password: Retype new SMB password: Added user gentoo. [root@Hao ~]# smbpasswd -a centos New SMB password: Retype new SMB password: Added user centos. [root@Hao ~]# smbpasswd -a ubuntu New SMB password: Retype new SMB password: Added user ubuntu.
安裝samba服務
[root@Hao ~]# yum -y install samba samba-client
然后編輯/etc/samba/smb.conf
workgroup = magedu hosts allow = 192.168.1 [shared] comment = Haosmb path = /data guest = yes writable = no write list = +develop
然后使用service smb restart重啟服務
使用windows登錄,用有權限的用戶centos登錄,并創建一個文件
進入共享的/data文件夾,查看剛才在win10上創建的文件,存在,說明沒有問題
[root@Hao ~]# cd /data [root@Hao data]# ll 總用量 0 -rwxr--r--. 1 centos centos 0 8月 10 16:13 gentoo_testFile.txt
如果是使用linux訪問的話,使用命令
[root@Hao data]# smbclient //192.168.1.150/shared -U ubuntu Enter ubuntu's password: Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.6.23-35.el6_8] smb: \> put /etc/issue NT_STATUS_OBJECT_PATH_NOT_FOUND opening remote file \/etc/issue smb: \> ls . D 0 Wed Aug 10 16:14:12 2016 .. DR 0 Wed Aug 10 14:59:07 2016 gentoo_testFile.txt A 0 Wed Aug 10 16:13:53 2016 57807 blocks of size 524288. 51165 blocks available
linux上測試登錄samba的用戶是ubuntu,可以ls查看/data里的內容,但是如上述所見,使用put上傳時報錯,因為沒有題目要求ubuntu沒有上傳權限
2、搭建一套文件vsftp文件共享服務,共享目錄為/ftproot,要求:(描述完整的過程)
1)基于虛擬用戶的訪問形式;
2)匿名用戶只允許下載,不允許上傳;
3)禁錮所有的用戶于其家目錄當中;
4)限制最大并發連接數為200:;
5)匿名用戶的最大傳輸速率512KB/s
6)虛擬用戶的賬號存儲在mysql數據庫當中。
7)數據庫通過NFS進行共享。
一、安裝所需要程序 1、安裝mysql和pam_mysql # yum -y install vsftpd mysql-server mysql-devel pam_mysql 二、創建虛擬用戶賬號 1.準備數據庫及相關表 首先請確保mysql服務已經正常啟動。而后,按需要建立存儲虛擬用戶的數據庫即可,這里將其創建為vsftpd數據庫。 mysql> create database vsftpd; mysql> grant select on vsftpd.* to vsftpd@localhost identified by 'www.magedu.com'; mysql> grant select on vsftpd.* to vsftpd@127.0.0.1 identified by 'www.magedu.com'; mysql> flush privileges; mysql> use vsftpd; mysql> create table users ( -> id int AUTO_INCREMENT NOT NULL, -> name char(20) binary NOT NULL, -> password char(48) binary NOT NULL, -> primary key(id) -> ); 2、添加測試的虛擬用戶 根據需要添加所需要的用戶,需要說明的是,這里將其密碼為了安全起見應該使用PASSWORD函數加密后存儲。 mysql> insert into users(name,password) values('tom',password('magedu')); mysql> insert into users(name,password) values('jerry',password('magedu')); 三、配置vsftpd 1.建立pam認證所需文件 #vi /etc/pam.d/vsftpd.mysql 添加如下兩行 auth required /lib/security/pam_mysql.so user=vsftpd passwd=www.magedu.com host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=0 account required /lib/security/pam_mysql.so user=vsftpd passwd=www.magedu.com host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=0 注意:由于mysql的安裝方式不同,pam_mysql.so基于unix sock連接mysql服務器時可能會出問題,此時,建議授權一個可遠程連接的mysql并訪問vsftpd數據庫的用戶。 2.修改vsftpd的配置文件,使其適應mysql認證 建立虛擬用戶映射的系統用戶及對應的目錄 # useradd -s /sbin/nologin -d /var/ftproot vuser # chmod go+rx /var/ftproot 請確保/etc/vsftpd.conf中已經啟用了以下選項 anonymous_enable=YES local_enable=YES write_enable=YES anon_world_readable_only=YES anon_upload_enable=NO anon_mkdir_write_enable=NO anon_other_write_enable=NO chroot_local_user=YES chroot_local_user=YES local_root=/ftproot anon_root=/ftproot 而后添加以下選項 guest_enable=YES guest_username=vuser 并確保pam_service_name選項的值如下所示 pam_service_name=vsftpd.mysql 四、啟動vsftpd服務 # service vsftpd start # chkconfig vsftpd on 五、配置虛擬用戶具有不同的訪問權限 vsftpd可以在配置文件目錄中為每個用戶提供單獨的配置文件以定義其ftp服務訪問權限,每個虛擬用戶的配置文件名同虛擬用戶的用戶名。配置文件目錄可以是任意未使用目錄,只需要在 vsftpd.conf指定其路徑及名稱即可。 1、配置vsftpd為虛擬用戶使用配置文件目錄 # vim vsftpd.conf 添加如下選項 user_config_dir=/etc/vsftpd/vusers_config 2、創建所需要目錄,并為虛擬用戶提供配置文件 # mkdir /etc/vsftpd/vusers_config/ # cd /etc/vsftpd/vusers_config/ # touch tom jerry 3、配置虛擬用戶的訪問權限 虛擬用戶對vsftpd服務的訪問權限是通過匿名用戶的相關指令進行的。比如,如果需要讓tom用戶具沒有上傳,刪除文件的權限,可以修改/etc/vsftpd/vusers_config/tom文件, 在里面添加如下選項即可。 anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES
原創文章,作者:Net19_口香糖,如若轉載,請注明出處:http://www.www58058.com/32575
寫的很好,排版還可以在漂亮一點,加油,可以詳細解釋一下配置文件的含義