马哥教育网络21期+第十三周练习博客
1、建立samba共享,共享目录为/data,要求:(描述完整的过程) 1)共享名为shared,工作组为magedu; 在服务器上安装samba ]# yum install samba 创建共享目录/data 启动samba的nmb和smb的服务 ]# service nmb start; service smb start 这里我使用了单独的磁盘分区进行samba的文件存储 将区分好的磁盘空间挂载至data这个目录下 2)添加组develop,添加用户gentoo,centos和ubuntu,其中gentoo和centos以develop为附加组,ubuntu不属于develop组;密码均为用户名; 增加用户 useradd -s /sbin/nologin -G develop gentoo echo "gentoo" | passwd --stdin gentoo useradd -s /sbin/nologin -G develop centos echo "centos" | passwd --stdin centos useradd -s /sbin/nologin ubuntu echo "ubuntu" | passwd --stdin ubuntu 创建develop组编辑/etc/group配置文件将gentoo和centos加入到develop组组中 [root@ns2 samba]# id gentoo uid=501(gentoo) gid=501(gentoo) groups=501(gentoo),504(develop) [root@ns2 samba]# id centos uid=502(centos) gid=502(centos) groups=502(centos),504(develop) 3)添加samba用户gentoo,centos和ubuntu,密码均为“mageedu”; [root@ns2 samba]# smbpasswd -a gentoo New SMB password: Retype new SMB password: Added user gentoo. [root@ns2 samba]# smbpasswd -a centos New SMB password: Retype new SMB password: Added user centos. [root@ns2 samba]# smbpasswd -a ubuntu New SMB password: Retype new SMB password: Added user ubuntu. 这里先进行测试查看在另外一台服务器上是否可以使用以上的三个用户进行访问 [root@localhost ~]# smbclient -L 172.16.0.122 -U centos Enter centos's password: Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.23-36.el6_8] Sharename Type Comment --------- ---- ------- IPC$ IPC IPC Service (Samba Server Version 3.6.23-36.el6_8) centos Disk Home Directories Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.23-36.el6_8] Server Comment --------- ------- NS2 Samba Server Version 3.6.23-36.el6_8 WIN-21CF1KE3RK9 ADMIN Workgroup Master --------- ------- WORKGROUP WIN-21CF1KE3RK9 4)此samba共享shared仅允许develop组具有写权限,其他用户只能以只读方式访问; 编写/etc/smb.conf配置文件 [shared] commnet = WHK work path = /data valid users = gentoo,centos,ubuntu,@develop read list = ubuntu write list = @develop writable = yes printable = no 这里尝试登录 [root@localhost ~]# smbclient //172.16.0.122/data -U centos Enter centos's password: Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.23-36.el6_8] tree connect failed: NT_STATUS_BAD_NETWORK_NAME [root@localhost ~]# smbclient //172.16.0.122/shared -U centos Enter centos's password: Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.23-36.el6_8] smb: \> smb: \> smb: \> ls . D 0 Sat Sep 24 19:56:02 2016 .. DR 0 Sat Sep 24 19:22:08 2016 lost+found D 0 Sat Sep 24 19:56:02 2016 40330 blocks of size 524288. 37938 blocks available 这里出现了一个问题在使用develop组中的用户想写入文件发现没有权限,这里需要提醒此服务当中使用的交集模式,默认使用权限最小的方式进行修改文件问属性 [root@localhost ~]# smbclient //172.16.0.122/shared -U centos Enter centos's password: Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.23-36.el6_8] smb: \> smb: \> smb: \> smb: \> smb: \> mkdir wanghongkai smb: \> smb: \> smb: \> ls . D 0 Sat Sep 24 20:41:55 2016 .. DR 0 Sat Sep 24 19:22:07 2016 lost+found D 0 Sat Sep 24 19:56:02 2016 wanghongkai D 0 Sat Sep 24 20:41:55 2016 40330 blocks of size 524288. 37938 blocks available 5)此samba共享服务仅允许来自于172.16.0.0/16网络的主机访问; 这里samba的共享服务仅允许来自于特定的网段进行主机访问,那么就需要在全局配置中进行定义[glob] workgroup = WORKGROUP server string = Samba Server Version %v netbios name = MYSERVER ; interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24 hosts allow = 172.16.0.0/16 2、搭建一套文件vsftp文件共享服务,共享目录为/ftproot,要求:(描述完整的过程) 安装所需要的软件 ]# yum -y install mysql-server mysql-devel pam_mysql 1)基于虚拟用户的访问形式; 2)匿名用户只允许下载,不允许上传; 3)禁锢所有的用户于其家目录当中; chroot_local_user=YES 4)限制最大并发连接数为200:; 5)匿名用户的最大传输速率512KB/s 6)虚拟用户的账号存储在mysql数据库当中。 7)数据库通过NFS进行共享。 在服务器上启动nfs服务 ]# service nfs start Starting NFS services: [ OK ] Starting NFS quotas: [ OK ] Starting NFS mountd: [ OK ] Stopping RPC idmapd: [ OK ] Starting RPC idmapd: [ OK ] Starting NFS daemon: [ OK ] 为共享数据库的提供特定的文件路径 在/etc/exports上共享nfs服务器端共享的文件系统 ]# cat /etc/exports /mydata/data 172.16.0.136(rw) 将NFS的文件系统挂载至mnt目录上 ]# mount -t nfs 172.16.0.136:/mydata/data/ /mnt 修改数据库的配置文件 [mysqld] datadir=/mydata/data socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid 编写vsftp的数据用户列表 mysql> CREATE DATABASE vsftpd;-->创建数据库 mysql> grant select on vsftpd.* to vsftpd@'172.16.%.%' identified by 'www.magedu.com';-->允许172.16段的所有地址访问数据库 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) ); 添加虚拟用户 mysql> insert into users(name,password) values('magedu1',password('magedu')); Query OK, 1 row affected (0.00 sec) mysql> insert into users(name,password) values('magedu2',password('magedu')); Query OK, 1 row affected (0.00 sec) mysql> insert into users(name,password) values('wostop',password('password01!')); Query OK, 1 row affected (0.00 sec) 建立pam认证所需要的文件 ]# cat /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=2 account required /lib/security/pam_mysql.so user=vsftpd passwd=www.magedu.com host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2 为虚拟用户建立系统用户 ]# useradd -s /sbin/nologin -d /ftproot/ vuser 并修改权限 ]#chmod go+rx /var/ftproot 编写/etc/vsftpd/vsftpd.conf 加入如下: guest_enable=YES guest_username=vuser pam_service_name=vsftpd.mysql-->启用mysql认证 max_clients=200 anon_max_rate=512 使用其他服务器进行测试: [root@ns1 htdocs]]# ftp 172.16.0.122 Connected to 172.16.0.122 (172.16.0.122). 220 (vsFTPd 2.2.2) Name (172.16.0.122:root): magedu1 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ls 227 Entering Passive Mode (172,16,0,122,114,1). 150 Here comes the directory listing. drwx------ 2 500 500 4096 Sep 16 15:45 cd 226 Directory send OK. ftp> mkdir wanghongkai 257 "/wanghongkai" created ftp> exit 221 Goodbye.
原创文章,作者:wostop,如若转载,请注明出处:http://www.178linux.com/56340
评论列表(1条)
赞,版风独特~~总结的也不错,加油~