Homework Week-13 samba、vsftp文件共享

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网络的主机访问;

vim /etc/samba/smb.conf
    全局配置
          workgroup=magedu
          hosts allow=172.16.0.0/16
     [shared]
          path=/data
          read only=yes
          write list=@develop
          browseable=yes
groupadd develop
useradd gentoo
useradd centos
useradd ubuntu
echo gentoo | passwd --stdin gentoo
echo centos  | passwd --stdin centos
echo ubuntu | passwd --stdin ubuntu
usermod -aG develop gentoo 
usermod -aG develop centos
smbpasswd -a centos     #添加samba用户并设置密码
smbpasswd -a gentoo
smbpasswd -a ubuntu
setfacl -m g:develop:rwx /data/
testparm
systemctl start smb.service

2、搭建一套文件vsftp文件共享服务,共享目录为/ftproot,要求:(描述完整的过程)

  1)基于虚拟用户的访问形式;

  2)匿名用户只允许下载,不允许上传;

  3)禁锢所有的用户于其家目录当中;

  4)限制最大并发连接数为200:;

  5)匿名用户的最大传输速率512KB/s

  6)虚拟用户的账号存储在mysql数据库当中。

  7)数据库通过NFS进行共享。

yum -y groupinstall "Development Tools" "Server Platform Development"     #安装开发环境
yum -y install mariadb_server mariadb-devel openssl-devel pam-devel
systemctl start mariadb.service
mysql
>SHOW DATABASE;
>exit;
systemctl enable mariadb.service
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
systemctl stop vsftpd.service
cd /etc/vsftpd/
mv vsftpd.conf{,.test}
cp vsftpd.conf.bak vsftpd.conf
mysql
>CREATE DATABASE vsftpd;
>use vsftpd;
>CREATE TABLE users(
->id int AUTO_INCREMENT NOT NULL PRIMARY KEY,
->name char(30) NOT NULL,
->password char(48) binary NOT NULL);
>INSERT INTO users(name,password) VALUES('tom',password('123'));
>INSERT INTO users(name,password) VALUES('jerry',password('123'));
>SELECT * FROM users;
>GRANT select ON vsftpd.* TO vsftpd@localhost IDENTIFIED BY '123';
>GRANT select ON vsftpd.* TO vsftpd@'127.0.0.1' IDENTIFIED BY '123';
>FLUSH PRIVILEGES;
>exit;
vim vsftpd.conf
     pam_service_name=vsftpd
vim vsftpd.mysql     #在/etc/pam.d/下创建配置文件
     auth required pam_mysql.so usr=vsftpd passwd=123 host=localhost db=vsftpd 
     table=users usercolumn=name passwdcolumn=password crypt=2
     
     account required pam_mysql.so usr=vsftpd passwd=123 host=localhost db=vsftpd 
     table=users usercolumn=name passwdcolumn=password crypt=2
useradd -s /sbin/nologin -d /ftproot vuser
chmod go+rx /ftproot/
vim /etc/vsftpd/vsftpd.conf
     pam_service_name=vsftpd.mysql
     guest_enable=YES
     guest_username=vuser
     chroot_local_user=YES
systemctl start vsftpd.service

原创文章,作者:N22_Elephant,如若转载,请注明出处:http://www.178linux.com/54526

赞 (0)
N22_ElephantN22_Elephant
上一篇 2016-12-05 17:03
下一篇 2016-12-05 17:03

相关推荐

  • 第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@UncleZ ~]# who | cut -d' ' -f1 | uniq -c 2、取出最后登录到当前系统的用户的相关信息。 [roo…

    Linux干货 2016-12-17
  • 自动化系统安装之DHCP服务实现

    DHCP服务实现 dhcp的工作过程是基于UDP协议的,其中用到了UDP的67(服务器),68(客户端)端口 使用场景 自动化安装系统 解决IPV4资源不足的问题 同网段多dhcp服务 dhcp服务必须基于本地 先到先得 跨网段 RFC 1542 dhcpclient客户端向dhcpsercer服务器请求续约时,中间相隔多网段时,如果路由器是 RFC1542…

    2018-01-29
  • 马哥教育网络班20期+第2周课程练习

    1、Linux上的文件管理类命令有:cp复制, mv剪切, rm移除 使用方法: cp复制  cp [OPTION]… [-T] SOURCE DEST  常用选项: -i:交互式 -r: 递归复制目录及内部的所有内容 -a: 归档 演示: SRC是文件,会将/etc/fstab 中内容覆盖到/bin/po…

    Linux干货 2016-06-23
  • 初学Linux

       已经学习了Linux一周了,从原来的设计网页、动画影视制作、3D模型到现在的黑白界面虚拟世界,从原来吃睡由我到现在重回高三生活,说实话,一开始还是不太能适应的,尤其是眼睛,酸胀痛。不过,越努力越幸运,也觉得linux其实很有意思。。以下是我第一篇微博的内容,也是我学习linux一周所总结的知识。 首先,学习一门知识就要先了解他的历史…

    Linux干货 2017-07-15
  • 文本处理工具之sed

                         文本处理工具之sed 一 、sed的简介    1、Stream EDitor…

    2017-05-01
  • Linux中的文件和目录的权限管理

    Linux系统通过完善的权限管理来限制每一个用户对于系统中文档和目录的访问。在Linux系统中,文件和目录的权限是有些差异的。一、权限介绍:如上所示,通过ll命令列出目录下文件的时候同时也会列出文件的权限,从第二位开始,一直到第九位,即rw-r–r–就是文件的权限描述:其中3位为一组:第一组:rw-:代表文件的属主(user)对文件的…

    Linux干货 2017-04-01