N22-第十三周作业

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

添加用户和组:

[root@localhost ~]# groupadd develop

[root@localhost ~]# useradd -G develop gentoo
[root@localhost ~]# useradd -G develop centos
[root@localhost ~]# useradd -G develop ubuntu

设置用户密码:

[root@localhost ~]# echo "gentoo" |passwd –stdin gentoo

[root@localhost ~]# echo "centos" |passwd –stdin centos

[root@localhost ~]# echo "ubuntu" |passwd –stdin ubuntu

添加samba用户:

[root@localhost samba]# smbpasswd -a gentoo
New SMB password:
Retype new SMB password:
Added user gentoo.
[root@localhost samba]# smbpasswd -a centos
New SMB password:
Retype new SMB password:
Added user centos.
[root@localhost samba]# smbpasswd -a ubuntu
New SMB password:
Retype new SMB password:
Added user ubuntu.

修改共享目录/data/的acl:

[root@localhost ~]# setfacl -m g:develop:rwx /data/

编辑samba配置文件:

[root@localhost ~]# vim /etc/samba/smb.conf

workgroup = magedu    

hosts allow = 172.16.0.0/16

[shared]
        comment = test
        pahth = /data
        browseable = yes

        guest ok = yes

        writable = no
        write list = @develop

重新加载samba服务:

[root@localhost ~]# systemctl reload smb.service

测试centos用户:

[root@localhost ~]# smbclient //192.168.1.120/shared -U centos
Enter centos's password:
Domain=[MYGROUP] OS=[Windows 6.1] Server=[Samba 4.2.10]
smb: \> put fstab
putting file fstab as \fstab (254.9 kb/s) (average 254.9 kb/s)
测试gentoo用户:

root@localhost ~]# smbclient //192.168.1.120/shared -U gentoo
Enter centos's password:
Domain=[MYGROUP] OS=[Windows 6.1] Server=[Samba 4.2.10]
smb: \> put crontab
putting file crontab as \crontab (146.8 kb/s) (average 146.8 kb/s)

测试ubuntu用户:

[root@localhost ~]# smbclient //192.168.1.120/shared -U ubuntu
Enter ubuntu's password:
Domain=[MYGROUP] OS=[Windows 6.1] Server=[Samba 4.2.10]
smb: \> get fstab
getting file \fstab of size 783 as fstab (191.2 KiloBytes/sec) (average 191.2 KiloBytes/sec)
smb: \> put hosts
NT_STATUS_ACCESS_DENIED opening remote file \hosts

2、搭建一套文件vsftp文件共享服务,共享目录为/ftproot,要求:(描述完整的过程)
1)基于虚拟用户的访问形式;

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

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

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

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

6)虚拟用户的账号存储在mysql数据库当中。
7)数据库通过NFS进行共享。
安装mariadb-server和vsftpd

[root@localhost ~]# yum install mariadb-server

[root@localhost ~]# yum install vsftpd

编译安装pam-mysql:

[root@localhost ~]#yum groupinstall "Development Tools" "Server Platform Development"

[root@localhost ~]#yum install pam-devel openssl-devel mariadb-devel

[root@localhost pam_mysql-0.7RC1]#  ./configure –prefix=/user/local/pam-mysql –with-openssl –with-mysql=/usr –with-pam=/usr –with-pam-mods-dir=/usr/lib64/security

[root@localhost pam_mysql-0.7RC1]#  make && make install

查看是否安装成功:

[root@localhost ~]# ls /lib64/security/ |grep pam_mysql
pam_mysql.la
pam_mysql.so
在mariadb数据库上创建虚拟用户:

[root@localhost pam_mysql-0.7RC1]# systemctl start mariadb.service

[root@localhost ~]# mysql
MariaDB [(none)]> create database vsftpd;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> use vsftpd
Database changed
MariaDB [vsftpd]> create table users(
    -> id int auto_increment not null primary key,
    -> name char(30) not null,
    -> password char(48) binary not null );
Query OK, 0 rows affected (0.01 sec)
MariaDB [vsftpd]> insert into users (name,password) values ('tom',password('magedu'));
Query OK, 1 row affected (0.00 sec)
MariaDB [vsftpd]> insert into users (name,password) values ('jerry',password('magedu.com'));
Query OK, 1 row affected (0.00 sec)
MariaDB [vsftpd]> grant select on vsftpd.* to vsftpd@localhost identified by 'magedu';
Query OK, 0 rows affected (0.01 sec)
MariaDB [vsftpd]> grant select on vsftpd.* to vsftpd@'127.0.0.1' identified by 'magedu';
Query OK, 0 rows affected (0.00 sec)
MariaDB [vsftpd]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [vsftpd]> exit
Bye

创建虚拟用户的映射用户:

[root@localhost ~]# useradd -s /sbin/nologin -d /ftproot vuser

[root@localhost ~]# chmod go+rx /ftproot

[root@localhost ~]# chmod -w /ftproot
编辑vsftpd配置文件:
[root@localhost ~]# vim /etc/vsftpd//vsftpd.conf

anonymous_enable=YES 

local_enable=YES
write_enable=YES
anon_upload_enable=NO

chroot_local_user=YES
max_clients=200

anon_max_rate=512000

guest_enable=YES
guest_username=vuser
pam_service_name=vsftpd.mysql
启动vsftpd服务:

[root@localhost ~]# systemctl start vsftpd.service
在另一台主机上验证:

[root@localhost ~]# ftp 192.168.1.120
Connected to 192.168.1.120 (192.168.1.120).
220 (vsFTPd 3.0.2)
Name (192.168.1.120:root): tom
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
共享数据库:

[root@localhost ~]# vim /etc/exports

/mydata/data        192.168.1.0/24(rw)

[root@localhost ~]#exportfs -r

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

(0)
heianyangguoheianyangguo
上一篇 2016-11-13
下一篇 2016-11-14

相关推荐

  • 《 Git 权威指南 》学习笔记

    这个没办法直接发博客了,篇幅太长,无法直接在 Blog 上排版了,直接发上 pdf 文档了。 接 《LNAMP Shell 部署脚本》 博文的内容,线上测试系统的 Git 环境部署。 整个 Git 环境包括了:     Git / Gitweb     Gitolite / Gerrit &nbsp…

    Linux干货 2015-10-27
  • CentOS6下的网络信息配置

    简介     我们都知道在我们互联网中,所有的通信都通过网络来完成的,有了网络当然也要有对应的地址,MAC地址是固定不变的,所以能变的只有IP的地址,那么今天来带给大家如何在CentOS6中如何配置网卡。当然一下的所有命令都是在CentOS6中进行的。 一、网卡的配置文件    1.操作网卡的命令 …

    Linux干货 2017-03-20
  • 第二周作业

    1 linux 常见的文件管理命令都有哪些?其常用的使用方法。 ls 文件列出命令   常见选项  -l 显示长文本信息          -d 显示当前目录信息          -a 显示所有文件信息     &nb…

    Linux干货 2016-09-26
  • Unix与linux的发展历程以及linux的发行版

    Unix的发展与诞生是有源头的,早期的时候,为了生产处多任务操作系统,Bell,MIT,GE这三个单位合作要制作一款多任务操作系统,也就是multitasks,这款操作系统后来是研制成功了,但是往后的目标越来越大也越来越模糊,最终这三家单位也就相继退出了这个项目。 bell实验室的Ken Thompson因为之前在multitasks运行过一款游戏,spac…

    Linux干货 2016-10-30
  • 初学Linux之快速获取帮助

    Windows操作系统和Linux操作系统的界面区别,导致了初学Linux时,我们会遇到比较大的障碍。Windows操作系统时图形这种形象化的操作界面,而Linux则不同,时以字符界面为主的。当我们遇到困难,我们可以获取系统提供的帮助信息,越过我们遇到的障碍,快速的熟悉Linux。获取帮助的方法包括:Linux手册(man),命令的帮助页,info帮助。

    2017-11-19
  • 堡垒机-麒麟开源堡垒机SSH公私钥认证配置文档

    1、进入SSH公私钥管理界面 操作步骤:进入系统,点击左侧导航资产管理,后边TAB标签导航SSH公私钥,如下图     2、批量导入SSH公私钥: SSH公私钥管理界面,点击下方”导入“,进入导入页面上传公私钥,     上传说明: 1) 讲所有的公私钥放到一个名为pvt的空文件夹中。 2) 在同样…

    Linux干货 2016-05-29

评论列表(1条)

  • luoweiro
    luoweiro 2016-11-29 22:30

    作业整体步骤完成的不错,但是缺少对原理的总结。