资源大亨 发表于 2021-8-7 00:38:36

京峰JF2112-DAY09--11课程笔记


京峰JF2112-DAY09课程笔记
JF2112班DAY-09课程笔记1.1使用xfs文件系统superblock实验1. 创建一个XFS文件系统
# mkfs.xfs -f /dev/sdb1
meta-data=/dev/sdb1            isize=256    agcount=4, agsize=1966102 blks
         =                     sectsz=512   attr=2, projid32bit=0
data   =                     bsize=4096   blocks=7864408, imaxpct=25
         =                     sunit=0      swidth=0 blks
naming   =version 2            bsize=4096   ascii-ci=0
log      =internal log         bsize=4096   blocks=3840, version=2
         =                     sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

# cat /etc/fstab |grep sdsb1
/dev/sdb1   /test   xfs   defaults   0 0

# mount -a

# df -h
/dev/sdb1                         30G610M   30G   2% /test
2. 卸载文件系统/test, 并且破坏superblock
# umount /test
# dd if=/dev/zero of=/dev/sdb1 bs=512 count=1
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.00251096 s, 204 kB/s

3. 再次挂载报错
# mount -a
mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tailor so

# dmesg
XFS (sdb1): bad magic number
XFS (sdb1): SB validate failed
4. 恢复superblockxfs_repair 此为XFS系统恢复和修改文件系统工具 (ext系列工具为fsck)
# xfs_repair /dev/sdb1
Phase 1 - find and verify superblock...
bad primary superblock - bad magic number !!!

attempting to find secondary superblock...
.........found candidate secondary superblock...
verified secondary superblock...
writing modified primary superblock
sb realtime bitmap inode 18446744073709551615 (NULLFSINO) inconsistent with calculated value 129
resetting superblock realtime bitmap ino pointer to 129
sb realtime summary inode 18446744073709551615 (NULLFSINO) inconsistent with calculated value 130
resetting superblock realtime summary ino pointer to 130
Phase 2 - using internal log
      - zero log...
      - scan filesystem freespace and inode maps...
sb_icount 0, counted 64
sb_ifree 0, counted 60
sb_fdblocks 7860552, counted 7712768
      - found root inode chunk
Phase 3 - for each AG...
      - scan and clear agi unlinked lists...
      - process known inodes and perform inode discovery...
      - agno = 0
      - agno = 1
      - agno = 2
      - agno = 3
      - process newly discovered inodes...
Phase 4 - check for duplicate blocks...
      - setting up duplicate extent list...
      - check for inodes claiming duplicate blocks...
      - agno = 0
      - agno = 1
      - agno = 2
      - agno = 3
Phase 5 - rebuild AG headers and trees...
      - reset superblock...
Phase 6 - check inode connectivity...
      - resetting contents of realtime bitmap and summary inodes
      - traversing filesystem ...
      - traversal finished ...
      - moving disconnected inodes to lost+found ...
Phase 7 - verify and correct link counts...
Note - stripe unit (0) and width (0) fields have been reset.
Please set with mount -o sunit=<value>,swidth=<value>
done

5. 确认是否已经恢复
# mount -a
# df -h
/dev/sdb1                         30G610M   30G   2% /test 1.2修复ext4分区superblock 问题# df -h Filesystem               SizeUsed Avail Use% Mounted on/dev/mapper/centos-root   17G1.7G   16G10% /devtmpfs               478M   0478M   0% /devtmpfs                  489M   0489M   0% /dev/shmtmpfs                  489M6.7M482M   2% /runtmpfs                  489M   0489M   0% /sys/fs/cgroup/dev/sda1               1014M127M888M13% /boottmpfs                     98M   0   98M   0% /run/user/0/dev/sdb                  20G   33M   20G   1% /test/dev/sdc1               20G   44M   19G   1% /test1# umount /test1 # !dddd if=/dev/zero of=/dev/sdc1bs=100M count=1010+0 records in10+0 records out1048576000 bytes (1.0 GB) copied, 1.72432 s, 608 MB/s # mount -a mount: wrong fs type, bad option, bad superblock on /dev/sdc1,       missing codepage or helper program, or other error        In some cases useful info is found in syslog - try       dmesg | tail or so. # fsck -t ext4 /dev/sdc1fsck from util-linux 2.23.2e2fsck 1.42.9 (28-Dec-2013)ext2fs_open2: Bad magic number in super-blockfsck.ext4: Superblock invalid, trying backup blocks...fsck.ext4: Bad magic number in super-block while trying to open /dev/sdc1 The superblock could not be read or does not describe a correct ext2filesystem.If the device is valid and it really contains an ext2filesystem (and not swap or ufs or something else), then the superblockis corrupt, and you might try running e2fsck with an alternate superblock:    e2fsck -b 8193 <device> # mke2fs-S /dev/sdc1-S 仅写入superblock与group descriptorsmke2fs 1.42.9 (28-Dec-2013)Filesystem label=OS type: LinuxBlock size=4096 (log=2)Fragment size=4096 (log=2)Stride=0 blocks, Stripe width=0 blocks1310720 inodes, 5242631 blocks262131 blocks (5.00%) reserved for the super userFirst data block=0Maximum filesystem blocks=4294967296160 block groups32768 blocks per group, 32768 fragments per group8192 inodes per groupSuperblock backups stored on blocks:         32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,         4096000 Allocating group tables: done                            Writing superblocks and filesystem accounting information: done    # mount /dev/sdc1mount: mount /dev/sdc1 on /test1 failed: Stale file handle## fsck -t ext4 -y /dev/sdc1检查特定类型的文件系统(ext4),-y检测完成之后并自动修复fsck from util-linux 2.23.2e2fsck 1.42.9 (28-Dec-2013)/dev/sdc1 contains a file system with errors, check forced.Resize inode not valid.Recreate? yesPass 1: Checking inodes, blocks, and sizesRoot inode is not a directory.Clear? yesPass 2: Checking directory structurePass 3: Checking directory connectivityRoot inode not allocated.Allocate? ye/lost+found not found.Create? yesPass 4: Checking reference countsPass 5: Checking group summary informationBlock bitmap differences:+(0--1539) +(32768--34306) +(65536--66049) +(98304--99842) +(131072--131585) +(163840--165378) +(196608--197121) +(229376--230914)Fix? yesFree blocks count wrong for group #0 (31227, counted=31226).Fix? yesFree blocks count wrong (5149114, counted=5149113).Fix? yesInode bitmap differences:+1 +(3--10)Fix? yesFree inodes count wrong for group #0 (8191, counted=8181).Fix? yesDirectories count wrong for group #0 (1, counted=2).Fix? yesFree inodes count wrong (1310719, counted=1310709).Fix? yes/dev/sdc1: ***** FILE SYSTEM WAS MODIFIED *****/dev/sdc1: 11/1310720 files (0.0% non-contiguous), 93518/5242631 block# df -h Filesystem               SizeUsed Avail Use% Mounted on/dev/mapper/centos-root   17G1.7G   16G10% /devtmpfs               478M   0478M   0% /devtmpfs                  489M   0489M   0% /dev/shmtmpfs                  489M6.7M482M   2% /runtmpfs                  489M   0489M   0% /sys/fs/cgroup/dev/sda1               1014M127M888M13% /boottmpfs                     98M   0   98M   0% /run/user/0/dev/sdb                  20G   33M   20G   1% /test/dev/sdc1               20G   44M   19G   1% /test1# 1.3Vsftpd服务实战讲解FTP(文件传输协议),基于客户端/服务端模式(c/s),默认使用20,21端口,20端口(数据端口)进行数据传输,21端口(控制端口)用于ftp控制链接命令执行,ftp服务器普遍部署在内网,支持文件传输和共享。FTP服务基于tcp协议运行。FTP的主流软件:VSFTPD,server-Uftp,FZ,wuftpd。Vsftpd(very secure ftp doemon)非常安全的ftp服务。Vsftpd基于GPL开源协议,可以实现匿名用户,系统用户,虚拟用户三种用户模式。        匿名用户是最不安全的一种用户模式,任何人都可以无需通过验证来访问匿名用户ftp服务器。        本地用户模式,比匿名用户更安全些,本地用户模式开启之后必须在本地存在此用户。        虚拟用户模式,虚拟用户就是没有真实的用户存在,通过映射一个ftp认可的本地用户及设置相应的权限来完成验证,真实用户是不能登录Linux系统的,比以上两种用户更加可靠。Vsftpd服务器端安装有两种方法,一是基于YUM方式安装,而是基于源码编译安装,最终实现效果完全一致,本文采用YUM安装Vsftpd,yum install vsftpd*-yfile:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps222.jpg file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps223.jpg file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps224.jpg file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps225.jpg Yum install 安装的服务默认都会在/var/log,生成一个log日志file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps226.jpg file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps227.jpg 以上三个参数代表匿名用户的上传和创建目录、写入权限file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps228.jpg 系统用户模式file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps229.jpg file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps230.jpg file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps231.jpg

京峰JF2112-DAY10课程笔记
JF2112班DAY-10课程笔记1.1vsftpd虚拟用户虚拟用户原理:1) 生成N个用户,N个用户无需存在Linux系统,N个用户都可以登录,保证Linux系统的安全。2) 那么N个用户怎么登录到Linux中,来访问vsftpd服务器,仅需要创建一个系统用户(不允许登录系统),其他的虚拟用户访问Linux系统请求映射到系统上的vsftpd文件服务器。3) 虚拟用户登录主要查找/etc/pam.d/vsftpd模块实现权限的访问,所以说创建虚拟用户的临时文件(ftpusers.txt的账号、密码),并且需要是db_load命令来生成db数据库,因为pam.d模块需要读取虚拟用户的数据库。pam_service_name=vsftpd4) 通过这个参数,vsftpd服务器才能访问db数据库中的账号和密码,ftp将访问的请求转到实际存在的系统用户上,系统用户读取虚拟用户的配置文件,提取相应的目录和权限,完成虚拟用户的请求访问。1.2Vsftpd虚拟用户的部署1) 安装vsftpd(yum部署)2) 创建虚拟用户的用户名和密码文件Vim/etc/vsftpd/ftpusers.txtjingfeng1123jingfeng2123#用户名密码文件必须是单行账号,双行密码格式3) 创建pam模块需要的db数据库文件file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps232.jpg db_load –T :开启数据库加密算法                        -t :指定算法为hash                        -f :指定生成数据库的配置文件 4) 创建系统用户登录Linuxuseradd -s /sbin/nologin ftpuser5) 创建pam模块认证文件file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps233.jpg auth:认证、授权(检查用户的名字、密码正确与否);account:检查用户的帐户是否到期、禁用等。required:必须通过此认证,否则不再往下认证下去,直接退出;pam_userdb.so   设定独立用户帐号数据库认证db=指定的vsftpd_login文件用户名和密码数据库文件 6) 修改主配置文件#config virtual user FTPpam_service_name=vsftpd                  虚拟用户启用pam认证;guest_enable=YES                                                        启用虚拟用户;guest_username=ftpuser                                                映射虚拟用户至系统用户ftpuser;user_config_dir=/etc/vsftpd/vsftpd_user_conf         设置虚拟用户配置文件所在的目录;virtual_use_local_privs=YES                                        虚拟用户使用与本地用户相同的权限。allow_writeable_chroot=YES禁锢虚拟用户的主目录,同时禁止访问除主目录之外的目录(1) 如下分别为虚拟用户jingfeng1、jingfeng2用户创建配置文件:vim /etc/vsftpd/vsftpd_user_conf/jingfeng1,同时创建私有的虚拟目录,代码如下:
local_root=/home/ftpuser/jingfeng1write_enable=YESanon_world_readable_only=YESanon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YES
vim /etc/vsftpd/vsftpd_user_conf/jingfeng2,同时创建私有的虚拟目录,代码如下:
local_root=/home/ftpuser/jingfeng2write_enable=YESanon_world_readable_only=YESanon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YES
虚拟用户配置文件内容详解:
local_root=/home/ftpuser/jingfeng2                jingfeng2虚拟用户配置文件路径;write_enable=YES                                                允许登陆用户有写权限;                anon_world_readable_only=YES                        允许匿名用户下载,然后读取文件;anon_upload_enable=YES                                允许匿名用户上传文件权限,只有在write_enable=YES时该参数才生效;anon_mkdir_write_enable=YES                   允许匿名用户创建目录,只有在write_enable=YES时该参数才生效;anon_other_write_enable=YES              允许匿名用户其他权限,例如删除、重命名等。
权限设定mkdir -p /home/ftpuser/jingfeng{1..2};chown -R ftpuser:ftpuser /home/ftpuser/chmod 755 /home/ftpuserfile:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps234.jpg 1.3主动和被动模式 主动模式:ftp服务器主动向客户端发起链接请求被动模式:ftp服务器等待客户端发起链接请求(默认模式)选择模式的原则:1) 客户端没有防火墙,选用主动模式2) 服务端没有防火墙,选用被动模式3) 双方都有防火墙,vsftpd可以设置端口范围,服务端打开端口范围,客户端选用被动模式链接 配置服务器端开启被动模式修改/etc/vsftpd/vsftpd.conf参数为以下file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps235.jpg Pasv_enable=YES:开启被动模式Pasv_min_port=5010Pasv_max_port=5015设定被动模式数据端口范围Connect_from_port_20=NO关闭20数据传输端口开启防火墙进行测试,在客户端连接上后创建文件测试file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps236.jpg 测试结果如下file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps237.jpg 开启主动模式配置修改配置文件/etc/vsftpd/vsftpd.confPasv_enable=NO:关闭被动模式,自动开启主动模式Connect_from_port_20=YES关闭20数据传输端口使用客户端创建文件进行测试,结果如下file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps238.jpg 开启21 20端口防火墙file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps239.jpg 附Vsftpd参数详解1.默认配置:1>允许匿名用户和本地用户登陆。   anonymous_enable=YES   local_enable=YES2>匿名用户使用的登陆名为ftp或anonymous,口令为空;匿名用户不能离开匿名用户家目录/var/ftp,且只能下载不能上传。3>本地用户的登录名为本地用户名,口令为此本地用户的口令;本地用户可以在自己家目录中进行读写操作;本地用户可以离开自家目录切换至有权限访问的其他目录,并在权限允许的情况下进行上传/下载。    write_enable=YES4>写在文件/etc/vsftpd.ftpusers中的本地用户禁止登陆。            2.配置文件格式:vsftpd.conf 的内容非常单纯,每一行即为一项设定。若是空白行或是开头为#的一行,将会被忽略。内容的格式只有一种,如下所示option=value要注意的是,等号两边不能加空白。 3.匿名用户(anonymous)设置anonymous_enable=YES/NO(YES)控制是否允许匿名用户登入,YES 为允许匿名登入,NO 为不允许。默认值为YES。write_enable=YES/NO(YES)是否允许登陆用户有写权限。属于全局设置,默认值为YES。no_anon_password=YES/NO(NO)若是启动这项功能,则使用匿名登入时,不会询问密码。默认值为NO。ftp_username=ftp定义匿名登入的使用者名称。默认值为ftp。anon_root=/var/ftp使用匿名登入时,所登入的目录。默认值为/var/ftp。注意ftp目录不能是777的权限属性,即匿名用户的家目录不能有777的权限。anon_upload_enable=YES/NO(NO)如果设为YES,则允许匿名登入者有上传文件(非目录)的权限,只有在write_enable=YES时,此项才有效。当然,匿名用户必须要有对上层目录的写入权。默认值为NO。anon_world_readable_only=YES/NO(YES)如果设为YES,则允许匿名登入者下载可阅读的档案(可以下载到本机阅读,不能直接在FTP服务器中打开阅读)。默认值为YES。anon_mkdir_write_enable=YES/NO(NO)如果设为YES,则允许匿名登入者有新增目录的权限,只有在write_enable=YES时,此项才有效。当然,匿名用户必须要有对上层目录的写入权。默认值为NO。anon_other_write_enable=YES/NO(NO)如果设为YES,则允许匿名登入者更多于上传或者建立目录之外的权限,譬如删除或者重命名。(如果anon_upload_enable=NO,则匿名用户不能上传文件,但可以删除或者重命名已经存在的文件;如果anon_mkdir_write_enable=NO,则匿名用户不能上传或者新建文件夹,但可以删除或者重命名已经存在的文件夹。)默认值为NO。chown_uploads=YES/NO(NO)设置是否改变匿名用户上传文件(非目录)的属主。默认值为NO。chown_username=username设置匿名用户上传文件(非目录)的属主名。建议不要设置为root。anon_umask=077设置匿名登入者新增或上传档案时的umask 值。默认值为077,则新建档案的对应权限为700。deny_email_enable=YES/NO(NO)若是启动这项功能,则必须提供一个档案/etc/vsftpd/banner_emails,内容为email address。若是使用匿名登入,则会要求输入email address,若输入的email address 在此档案内,则不允许进入。默认值为NO。banned_email_file=/etc/vsftpd/banner_emails此文件用来输入email address,只有在deny_email_enable=YES时,才会使用到此档案。若是使用匿名登入,则会要求输入email address,若输入的email address 在此档案内,则不允许进入。 4.本地用户设置local_enable=YES/NO(YES)控制是否允许本地用户登入,YES 为允许本地用户登入,NO为不允许。默认值为YES。local_root=/home/username当本地用户登入时,将被更换到定义的目录下。默认值为各用户的家目录。write_enable=YES/NO(YES)是否允许登陆用户有写权限。属于全局设置,默认值为YES。local_umask=022本地用户新增档案时的umask 值。默认值为077。file_open_mode=0755本地用户上传档案后的档案权限,与chmod 所使用的数值相同。默认值为0666。 5.欢迎语设置dirmessage_enable=YES/NO(YES)如果启动这个选项,那么使用者第一次进入一个目录时,会检查该目录下是否有.message这个档案,如果有,则会出现此档案的内容,通常这个档案会放置欢迎话语,或是对该目录的说明。默认值为开启。message_file=.message设置目录消息文件,可将要显示的信息写入该文件。默认值为.message。banner_file=/etc/vsftpd/banner当使用者登入时,会显示此设定所在的档案内容,通常为欢迎话语或是说明。默认值为无。如果欢迎信息较多,则使用该配置项。ftpd_banner=Welcome to BOB's FTP server这里用来定义欢迎话语的字符串,banner_file是档案的形式,而ftpd_banner 则是字符串的形式。预设为无。 6.控制用户是否允许切换到上级目录在默认配置下,本地用户登入FTP后可以使用cd命令切换到其他目录,这样会对系统带来安全隐患。可以通过以下三条配置文件来控制用户切换目录。chroot_list_enable=YES/NO(NO)设置是否启用chroot_list_file配置项指定的用户列表文件。默认值为NO。chroot_list_file=/etc/vsftpd.chroot_list用于指定用户列表文件,该文件用于控制哪些用户可以切换到用户家目录的上级目录。chroot_local_user=YES/NO(NO)用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。通过搭配能实现以下几种效果:①当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。②当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。③当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。④当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。 7.数据传输模式设置FTP在传输数据时,可以使用二进制方式,也可以使用ASCII模式来上传或下载数据。ascii_upload_enable=YES/NO(NO)设置是否启用ASCII 模式上传数据。默认值为NO。ascii_download_enable=YES/NO(NO)设置是否启用ASCII 模式下载数据。默认值为NO。 8.访问控制设置两种控制方式:一种控制主机访问,另一种控制用户访问。①控制主机访问:tcp_wrappers=YES/NO(YES)设置vsftpd是否与tcp wrapper相结合来进行主机的访问控制。默认值为YES。如果启用,则vsftpd服务器会检查/etc/hosts.allow 和/etc/hosts.deny 中的设置,来决定请求连接的主机,是否允许访问该FTP服务器。这两个文件可以起到简易的防火墙功能。比如:若要仅允许192.168.0.1—192.168.0.254的用户可以连接FTP服务器,则在/etc/hosts.allow文件中添加以下内容:vsftpd:192.168.0. :allowall:all :deny②控制用户访问:对于用户的访问控制可以通过/etc目录下的vsftpd.user_list和ftpusers文件来实现。userlist_file=/etc/vsftpd.user_list控制用户访问FTP的文件,里面写着用户名称。一个用户名称一行。userlist_enable=YES/NO(NO)是否启用vsftpd.user_list文件。userlist_deny=YES/NO(YES)决定vsftpd.user_list文件中的用户是否能够访问FTP服务器。若设置为YES,则vsftpd.user_list文件中的用户不允许访问FTP,若设置为NO,则只有vsftpd.user_list文件中的用户才能访问FTP。/etc/vsftpd/ftpusers文件专门用于定义不允许访问FTP服务器的用户列表(注意:如果userlist_enable=YES,userlist_deny=NO,此时如果在vsftpd.user_list和ftpusers中都有某个用户时,那么这个用户是不能够访问FTP的,即ftpusers的优先级要高)。默认情况下vsftpd.user_list和ftpusers,这两个文件已经预设置了一些不允许访问FTP服务器的系统内部账户。如果系统没有这两个文件,那么新建这两个文件,将用户添加进去即可。 9.访问速率设置anon_max_rate=0设置匿名登入者使用的最大传输速度,单位为B/s,0 表示不限制速度。默认值为0。local_max_rate=0本地用户使用的最大传输速度,单位为B/s,0 表示不限制速度。预设值为0。 10.超时时间设置accept_timeout=60设置建立FTP连接的超时时间,单位为秒。默认值为60。connect_timeout=60PORT 方式下建立数据连接的超时时间,单位为秒。默认值为60。data_connection_timeout=120设置建立FTP数据连接的超时时间,单位为秒。默认值为120。idle_session_timeout=300设置多长时间不对FTP服务器进行任何操作,则断开该FTP连接,单位为秒。默认值为300 。 11.日志文件设置xferlog_enable= YES/NO(YES)是否启用上传/下载日志记录。如果启用,则上传与下载的信息将被完整纪录在xferlog_file 所定义的档案中。预设为开启。xferlog_file=/var/log/vsftpd.log设置日志文件名和路径,默认值为/var/log/vsftpd.log。xferlog_std_format=YES/NO(NO)如果启用,则日志文件将会写成xferlog的标准格式,如同wu-ftpd 一般。默认值为关闭。log_ftp_protocol=YES|NO(NO)
如果启用此选项,所有的FTP请求和响应都会被记录到日志中,默认日志文件在/var/log/vsftpd.log。启用此选项时,xferlog_std_format不能被激活。这个选项有助于调试。默认值为NO。 12.定义用户配置文件在vsftpd中,可以通过定义用户配置文件来实现不同的用户使用不同的配置。user_config_dir=/etc/vsftpd/userconf设置用户配置文件所在的目录。当设置了该配置项后,用户登陆服务器后,系统就会到/etc/vsftpd/userconf目录下,读取与当前用户名相同的文件,并根据文件中的配置命令,对当前用户进行更进一步的配置。例如:定义user_config_dir=/etc/vsftpd/userconf,且主机上有使用者 test1,test2,那么我们就在user_config_dir 的目录新增文件名为test1和test2两个文件。若是test1 登入,则会读取user_config_dir 下的test1 这个档案内的设定。默认值为无。利用用户配置文件,可以实现对不同用户进行访问速度的控制,在各用户配置文件中定义local_max_rate=XX,即可。 13.FTP的工作方式与端口设置FTP有两种工作方式:PORT FTP(主动模式)和PASV FTP(被动模式)listen_port=21设置FTP服务器建立连接所监听的端口,默认值为21。connect_from_port_20=YES/NO指定FTP使用20端口进行数据传输,默认值为YES。ftp_data_port=20设置在PORT方式下,FTP数据连接使用的端口,默认值为20。pasv_enable=YES/NO(YES)若设置为YES,则使用PASV工作模式;若设置为NO,则使用PORT模式。默认值为YES,即使用PASV工作模式。pasv_max_port=0在PASV工作模式下,数据连接可以使用的端口范围的最大端口,0 表示任意端口。默认值为0。pasv_min_port=0在PASV工作模式下,数据连接可以使用的端口范围的最小端口,0 表示任意端口。默认值为0。 14.与连接相关的设置listen=YES/NO(YES)设置vsftpd服务器是否以standalone模式运行。以standalone模式运行是一种较好的方式,此时listen必须设置为YES,此为默认值。建议不要更改,有很多与服务器运行相关的配置命令,需要在此模式下才有效。若设置为NO,则vsftpd不是以独立的服务运行,要受到xinetd服务的管控,功能上会受到限制。max_clients=0设置vsftpd允许的最大连接数,默认值为0,表示不受限制。若设置为100时,则同时允许有100个连接,超出的将被拒绝。只有在standalone模式运行才有效。max_per_ip=0设置每个IP允许与FTP服务器同时建立连接的数目。默认值为0,表示不受限制。只有在standalone模式运行才有效。listen_address=IP地址设置FTP服务器在指定的IP地址上侦听用户的FTP请求。若不设置,则对服务器绑定的所有IP地址进行侦听。只有在standalone模式运行才有效。setproctitle_enable=YES/NO(NO)设置每个与FTP服务器的连接,是否以不同的进程表现出来。默认值为NO,此时使用ps aux |grep ftp只会有一个vsftpd的进程。若设置为YES,则每个连接都会有一个vsftpd的进程。 15.虚拟用户设置虚拟用户使用PAM认证方式。pam_service_name=vsftpd设置PAM使用的名称,默认值为/etc/pam.d/vsftpd。guest_enable= YES/NO(NO)启用虚拟用户。默认值为NO。guest_username=ftp这里用来映射虚拟用户。默认值为ftp。virtual_use_local_privs=YES/NO(NO)当该参数激活(YES)时,虚拟用户使用与本地用户相同的权限。当此参数关闭(NO)时,虚拟用户使用与匿名用户相同的权限。默认情况下此参数是关闭的(NO)。 16.其他设置text_userdb_names= YES/NO(NO)设置在执行ls –la之类的命令时,是显示UID、GID还是显示出具体的用户名和组名。默认值为NO,即以UID和GID方式显示。若希望显示用户名和组名,则设置为YES。ls_recurse_enable=YES/NO(NO)若是启用此功能,则允许登入者使用ls –R(可以查看当前目录下子目录中的文件)这个指令。默认值为NO。hide_ids=YES/NO(NO)如果启用此功能,所有档案的拥有者与群组都为ftp,也就是使用者登入使用ls -al之类的指令,所看到的档案拥有者跟群组均为ftp。默认值为关闭。download_enable=YES/NO(YES)如果设置为NO,所有的文件都不能下载到本地,文件夹不受影响。默认值为YES。

京峰JF2112-DAY11课程笔记
JF2112班DAY-11课程笔记1.1Apache入门简介1.1.1进程和线程概念 1. 进程是操作系统分配资源的基本单位,进程是程序的实体,程序软件是静止的,而进程是将程序运行起来,进程是活动的。2. 线程和进程区别?线程是进程的基本单位,范围比进程要小,一个进程中包含一个线程或者多个线程,所有的线程共享该进程的内存空间,如果进程挂掉,所有线程崩溃,如果一个线程异常退出,连同其他的线程或者进程会崩溃,多线程的好处是提高访问效率、并发高网站采用多进程-多线程工作。l 目前主流的WEB服务器软件包括:Apache、Nginx、Lighttpd、IIS、Resin、Tomcat、WebLogic、Jetty等。l Apache是一个古老的web服务器软件,基于apache基金会的开发的,该服务器默认只能发布静态网页(跟数据库没有发生交互的);l Apache web服务器是一种多模块式的软件,模块丰富,每个模块都能完成不同功能。l Apache web服务器像一辆汽车,必须要有运动引擎(发动机),运动引擎称为工作模式,处理访问请求,通常有三种模式:prefork,worker,event。l Apache 默认引擎为prefork,其特点启动startservers个工作的进程,每一个工作进程在特定的时间只能处理一个请求,支持预派生模式,好处就是方便请求到来时不用临时生成请求,提升web服务器的性能,多进程方式,比较消耗内存和系统资源。l Worker MPM模式:使用多个进程,每个子进程包含多个线程,每个线程在某个确定的时间只能维持一个连接,内存占用量比较小,适合大并发、高流量的WEB服务器。Worker MPM缺点是一个线程崩溃,整个进程就会连同其任何线程一起挂掉。 1.2源码包安装httpdWgethttp://mirrors.hust.edu.cn/apache/httpd/httpd-2.4.29.tar.bz2 file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps240.jpg 1)./configure 检测系统环境是否能够达到编译的请求2)make 根据生成的makefile文件来执行对应的编译3)make install 安装软件配置文件
wget http://archive.apache.org/dist/httpd/httpd-2.4.29.tar.gz
Apache WEB服务器安装步骤如下:tar-xjvfhttpd-2.4.29.tar.bz2                        tar工具解压httpd包;cd httpd-2.4.29/                                                        进入解压后目录;yum install apr apr-devel apr-util apr-util-devel -y                安装APR相关优化模块;APR(Apache portable Run-time libraries,Apache可移植运行库)的目的如其名称一样,主要为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库。./configure --prefix=/usr/local/apache2/ --enable-rewrite --enable-so   预编译Apache,启用rewrite规则、启用动态加载库;编译的时候可以通过configure的参数来指定--with-mpm=prefork|worker|event()也可以编译为三种都支持,通过修改配置来更换。--enable-mpms-shared=allmake                                                编译make install                                        安装Apache2.4.29安装完毕,如图10-1所示:file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps241.jpg 图10-1 Apache2.2.32安装图解 启动Apache服务,临时关闭selinux、firewalld防火墙:
/usr/local/apache2/bin/apachectl startsetenforce 0systemctlstop   firewalld.service
查看Apache服务进程,通过客户端浏览器访问http://192.168.111.131/,如图10-2(a)、10-2(b)所示:file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps242.jpg图10-2(a) Apache启动及查看进程file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml27184\wps243.jpg 图10-2(b) 浏览器访问Apache WEB服务器
京峰教育Python第七期VIP视频全套培训课程下载

(出处: 黑锐吧资源网)
京峰教育Linux云计算架构师经典全套视频【6.x系列】
https://www.heirui8.com/thread-21183-1-1.html
(出处: 黑锐吧资源网)



annie1987 发表于 2021-10-20 08:26:13

今天又来白嫖课程啦,哈哈哈
页: [1]
查看完整版本: 京峰JF2112-DAY09--11课程笔记