Linux第十三周

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、创建用户及组 

[[email protected] ~]# groupadd develop

[[email protected] ~]# useradd -G develop gentoo

[[email protected] ~]# useradd -G develop centos

[[email protected] ~]# useradd ubuntu

[[email protected] ~]# for i in gentoo centos ubuntu;do echo $i:$i | chpasswd;done

2、安装Samba,并修改配置文件

[[email protected] ~]# yum -y install samba

[[email protected] ~]# cd /etc/samba/

[[email protected] samba]# cp smb.conf{,.bak}

[[email protected] samba]# vim smb.conf

修改

workgroup = MYGROUP

workgroup = magedu

修改

passdb backend = tdbsam

    passdb backend = smbpasswd

    smb passwd file = /etc/samba/smbpasswd

添加 

hosts allow = 172.16.0.0/16

末尾添加

[shared]

comment = Magedu.com

path = /data

guest = yes 

writable = no

write list = +develop

3、创建Samba用户并启动服务

[[email protected] samba]# smbpasswd -a gentoo

New SMB password:

Retype new SMB password:

Added user gentoo.

[[email protected] samba]# smbpasswd -a centos

New SMB password:

Retype new SMB password:

Added user centos.

[[email protected] samba]# smbpasswd -a ubuntu

New SMB password:

Retype new SMB password:

Added user ubuntu.

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

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

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

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

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

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

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

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

 配置环境:

 nfs服务器:192.168.1.61

 vsftp、mysql服务器:192.168.1.64

一、通过NFS服务器共享数据库

1、在192.168.1.61服务器上启动nfs服务,设置共享目录为/data

[[email protected] ~]# mkdir /data

[[email protected] ~]# groupadd -g 27 mysql

[[email protected] ~]# useradd -g mysql -u 27 -s /sbin/nologin -M mysql 

[[email protected] ~]# chown -R mysql.mysql /data/

[[email protected] ~]# vim /etc/exports 

/data   192.168.1.64(rw,no_root_squash)

[[email protected] ~]# service  nfs start

2、在192.168.1.64服务器上安装mysql,创建目录/mydata 用来挂载nfs共享目录。

[[email protected] ~]# yum -y install mysql mysql-server mysql-devel

[[email protected] ~]# mkdir /mydata

[[email protected] ~]# chown -R mysql.mysql /mydata/

[[email protected] ~]# mount 192.168.1.61:/data /mydata/

[[email protected] ~]# vim /etc/my.cnf 

修改

datadir=/var/lib/mysql

datadir=/mydata

#初始化mysql

[[email protected] ~]# mysql_install_db --datadir=/mydata/

[[email protected] ~]# service mysqld start

二、基于虚拟用户的vsftp

1、在192.168.1.64服务器上创建数据库

mysql> create database vsftpd;

#创建数据库用户,授权对vsftpd数据库有查询权限

grant select on vsftpd.* to [email protected] identified by ‘123456‘;

mysql> grant select on vsftpd.* to [email protected] identified by ‘123456‘;

mysql> flush privileges;

#在vsftpd数据库中创建表users

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) );

#插入虚拟用户

mysql> insert into users (name,password) values (‘zhangsan‘,password(‘123456‘));

mysql> insert into users (name,password) values (‘lisi‘,password(‘123456‘));

2、在192.168.1.64服务器上安装vsftpd服务及pam_mysql认证

#安装epel源

[[email protected] ~]# rpm -ivh epel-release-latest-6.noarch.rpm

#安装vsftpd服务及pam_mysql认证

[[email protected] ~]# yum -y install vsftpd pam_mysql

3、建立pam认证需要的文件

[[email protected] ~]# vim /etc/pam.d/vsftpd.mysql

auth required pam_mysql.so user=vsftpd passwd=123456 host=192.168.1.64 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2

account required pam_mysql.so user=vsftpd passwd=123456 host=192.168.1.64 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2

4、添加虚拟用户对应的系统用户,使其适用mysql认证

[[email protected] ~]# useradd -s /sbin//nologin -d /ftproot vuser

[[email protected] ~]# chmod +rx /ftproot/

5、配置vsftp服务

[[email protected] ~]# cd /etc/vsftpd/

[[email protected] vsftpd]# cp vsftpd.conf{,.bak}

请确保/etc/vsftpd.conf中已经启用了以下选项

anonymous_enable=NO

local_enable=YES

write_enable=NO

anon_upload_enable=NO

anon_mkdir_write_enable=NO

anon_other_write_enable=NO

chroot_local_user=YES #将用户禁锢在自己的家目录中

guest_enable=YES

guest_username=vuser #指明虚拟用户映射到的系统用户

pam_service_name=vsftpd.mysql #指明使用/etc/pam.d/vsftpd.mysql来认证

user_config_dir=/etc/vsftpd/vusers_config #指明虚拟用户的配置文件

6、创建所需要目录,并有虚拟用户提供配置文件

[[email protected] vsftpd]# mkdir /etc/vsftpd/vusers_config

[[email protected] vsftpd]# cd /etc/vsftpd/vusers_config

[[email protected] vusers_config]# touch zhangsan lisi

7、配置虚拟用户的权限

虚拟用户对vsftpd服务的访问权限是通过匿名用户的相关指令进行的。比如,如果需要让zhangsan用户具有上传文件的权限,可以修改/etc/vsftpd/vusers_config/zhangsan文件,在里面添加如下选项即可。

[[email protected] vusers_config]#cat /etc/vsftpd/vusers_config/zhangsan

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

[[email protected] vsftpd]# service vsftpd start

三、基于匿名用户的vsftp

[[email protected] vsftpd]# grep -v ^# vsftpd.conf

anonymous_enable=YES

local_enable=NO

write_enable=NO

local_umask=022

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_std_format=YES

download_enable=YES #允许下载

max_clients=200 #允许并发客户端数目

anon_max_rate=512k #最大下载速度

listen=YES

pam_service_name=vsftpd

userlist_enable=YES #针对系统用户访问的控制策略

tcp_wrappers=YES

[[email protected] vsftpd]# service vsftpd restart

时间: 2024-10-09 20:45:45

Linux第十三周的相关文章

2017-2018-1 20155302 第十三周作业

2017-2018-1 20155302 第十三周作业 重新精学第八章异常控制流以及系统级I/O相关知识 数据流:只能以事先规定好的顺序被读取一次的数据的一个序列. 控制流:控制转移序列叫做处理器的控制流. 异常控制流:现代系统通过使控制流发生突变做出反应的突变. 教材内容精学及回顾 8.1异常 异常是异常控制流的一种形式,它一部分由硬件实现,一部分由操作系统实现. 异常就是控制流中的突变,用来响应处理器状态中的某些变化. 系统中可能的每种类型的异常都分配了一个唯一的非负整数的异常号,其中一些号

2017-2018-1 20155310 《信息安全系统设计基础》第十三周学习总结

2017-2018-1 20155310 <信息安全系统设计基础>第十三周学习总结 教材学习内容总结 8.2进程 进程是计算机科学中最深刻最成功的概念之一.系统中的每个程序都是运行在某个进程的上下文中的.(上下文是由程序正确运行所需的状态组成的) ?一个独立的逻辑控制流 ?一个逻辑流的执行在时间上与另一个流重叠,称为并发流. ?多个流并发地执行的一般现象称为冰法. ?多任务也叫作时间分片:一个进程和其他进程轮流运行的概念称为多任务. ?并行流是并发流的一个真子集. ?私有地址空间 ?上下文切换

20155317 《信息安全系统设计基础》第十三周周学习总结

20155317 <信息安全系统设计基础>第十三周周学习总结 一.UNIX I/O 在UNIX系统中有一个说法,一切皆文件.所有的I/O设备,如网络.磁盘都被模型化为文件,而所有的输入和输出都被当做对相应文件的读和写来执行.这种将设备映射为文件的方式,允许UNIX内核引出一个简单.低级的应用接口,称为UNIX I/O,这使得所有的输入和输出都能以一种统一且一致的方式来执行. 打开文件 打开文件操作完成以后才能对文件进行一些列的操作,打开完成过以后会返回一个文件描述符,它在后续对此文件的所有操作

2017-2018-1 20155232 《信息安全系统设计基础》第十三周学习总结

2017-2018-1 20155232 <信息安全系统设计基础>第十三周学习总结 找出全书你认为最重要的一章,深入重新学习一下,要求(期末占10分): 完成这一章所有习题 详细总结本章要点 给你的结对学习搭档讲解你的总结并获取反馈 我选择课本的第十二章,因为第12章主要讲了程序的并发编程,一个并发编程是由在时间上重叠的一组逻辑流组成的.这章主要学习了三种不同的并发机制:进程,I/O多路复用和线程.无论哪种并发机制,同步对共享数据的并发访问都是一个困难性问题,提出对信号量的p,v操作去解决这个

2017-2018-1 20155324 《信息安全系统设计基础》第十三周学习总结

2017-2018-1 20155324 <信息安全系统设计基础>第十三周学习总结 找出全书你认为最重要的一章,深入重新学习一下 完成这一章所有习题 详细总结本章要点 给你的结对学习搭档讲解你的总结并获取反馈 重温第八章 教材学习内容详细总结 8.1异常 异常就是控制流中的突变,用来响应处理器状态中的某些变化 8.1.1 异常处理 系统中可能的每种类型的异常都分配了一个唯一的非负整数的异常号. 处理器:被零除.缺页.存储器访问违例.断点以及算术溢出 操作系统:系统调用和来自外部I/O设备的信号

20175306《信息安全系统设计基础》第十三周学习总结

20175306<信息安全系统设计基础>第十三周学习总结 找出全书你认为最重要的一章,深入重新学习一下,要求(期末占10分): 完成这一章所有习题 详细总结本章要点 给你的结对学习搭档讲解你的总结并获取反馈 参考上面的学习总结模板,把学习过程通过博客(随笔)发表,博客标题"学号 <信息安全系统设计基础>第十三周学习总结",博客(随笔)要通过作业提交,截至时间本周日 23:59. 第十二章:并发编程 学习总结 如果逻辑控制流在时间上重叠,那么他们就是并发的.并发出

第十三周学习进度条

第十三周 所花时间(包括上课) 11 代码量(行) 100 博客量(篇) 3       了解到的知识点 通过这周学习到了: 1.这周老师讲到了软件工程质量,了解到了CMMI的概念,企业的发展与实力与其密切相关:软件的发布管理了解到即使优秀的团队也会发布有已知缺陷的软件,在发布后要有会诊小组针对具体bug进行修复.老师留下了一个论坛找小水王的编程题目,提到了减少时间复杂度来寻找,采用了计数器,编写并学习其中的思想 2.在团队开发中,这周有一门考试所以进展并不是那么大,仍旧在进行亮屏后直接进行拍照

学习进度第十三周

  第十三周 所花时间(包括上课) 16h(4h上课,12课下) 代码量(行) 460 博客量(篇) 4 了解到的知识点 1.这个星期主要进行了一次小水王的编程,回想起来很简单,但当初真的把它想得太复杂了. 明白了用最简单的方法解决问题,哪怕重复部分太多,代码量太多,也是一种好方法,比如这次小水王就是 一连串的if else 就解决了问题. 2.开始了软件工程团队开发的第二阶段的冲刺,明白了蓝牙权限和蓝牙数据传输的方法. 3.在java EE 的实验编程中,学习了MVC 框架,Struts 框架

学习进度条 第十三周

  第十三周 所花时间(H) 周一上课2小时 周四上课2小时 平均每天编程时间2小时 合计18小时 代码量(行) 1000 博客量(篇) 2 了解到的知识点 字符串头文件的各种函数(比如查找函数find()) 安卓透明提示层的创建等