FTP实验报告
ftp实验报告
制作人:全心全意
准备工作:
linux1:192.168.100.4
关闭防火墙、selinux机制
配置yum源
匿名访问
1.安装vsftpd服务和客户端
[root@localhost ~]# yum -y install vsftpd
----------------------------------------------------
2.创建ftp目录
[root@localhost ~]# mkdir /var/ftp/test{1..3}
[root@localhost ~]# ls /var/ftp/
pub test1 test2 test3
-----------------------------------------------------
3.ftp目录755权限,属主ftp
[root@localhost ~]# chown ftp /var/ftp/test1
[root@localhost ~]# chmod 755 /var/ftp/test1
-----------------------------------------------------------
4.配置匿名访问配置文件
[root@localhost ~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
[root@localhost ~]# cat /etc/vsftpd/vsftpd.conf.bak | grep -v "^#" > /etc/vsftpd/vsftpd.conf
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
1 #匿名用户
2 anonymous_enable=yes
3 anon_umask=022
4 anon_root=/var/ftp
5 anon_upload_enable=yes
6 anon_mkdir_write_enable=yes
7 anon_other_write_enable=yes
8 anon_max_rate=0
9 #本地用户
10 local_enable=no
11 #全局配置
12 listen=yes
13 listen_address=192.168.100.4
14 listen_port=21
15 write_enable=yes
16 download_enable=yes
17 dirmessage_enable=yes
18 xferlog_enable=yes
19 xferlog_std_format=yes
20 connect_from_port_20=yes
21 pasv_enable=yes
22 pasv_max_port=24600
23 pasv_min_port=24500
24 pam_service_name=vsftpd
25 userlist_enable=yes
26 userlist_deny=yes
27 max_clients=0
28 max_per_ip=0
29 tcp_wrappers=yes
----------------------------------------------------------
4.启动vsftpd服务
[root@localhost ~]#/etc/rc.d/init.d/vsftpd start
为vsftpd 启动vsftpd: [确定]
----------------------------------------------------------
5.测试匿名访问
[root@localhost ~]# ftp 192.168.100.4
name (192.168.100.4:root):ftp
password:
ftp> cd test1
ftp> mkdir 11
ftp> dir
drwxr-xr-x 2 14 50 4096 aug 25 06:51 11
ftp> rename 11 22
ftp> dir
drwxr-xr-x 2 14 50 4096 aug 25 06:51 22
ftp> rmdir 22
ftp> dir
ftp> exit
==============================================
本地用户访问
1.修改为本地用户访问配置文件
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
1 #匿名用户
2 anonymous_enable=no
3 anon_umask=022
4 anon_root=/var/ftp
5 anon_upload_enable=yes
6 anon_mkdir_write_enable=yes
7 anon_other_write_enable=yes
8 anon_max_rate=0
9
10 #本地用户
11 local_enable=yes
12 local_umask=077
13 chroot_local_user=yes
14
15 #全局配置
16listen=yes
17 listen_address=192.168.100.4
18 listen_port=21
19 write_enable=yes
20 download_enable=no
21 dirmessage_enable=yes
22 xferlog_enable=yes
23 xferlog_std_format=yes
24 connect_from_port_20=yes
25 pasv_enable=yes
26 pasv_max_port=24600
27 pasv_min_port=24500
28 pam_service_name=vsftpd
29 userlist_enable=yes
30 userlist_deny=yes
31 max_clients=0
32 max_per_ip=0
33 tcp_wrappers=yes
---------------------------------------------------------
2.创建用户和密码
[root@localhost ~]# useradd kaixin -s /sbin/nologin
[root@localhost ~]# passwd kaixin
更改用户kaixin 的密码。
新的密码:
无效的密码:way 过短
无效的密码:过于简单
重新输入新的密码:
passwd:所有的身份验证令牌已经成功更新。
-----------------------------------------------------------
3.重启vsftpd服务
[root@localhost ~]# service vsftpd restart
关闭vsftpd: [确定]
为vsftpd 启动vsftpd: [确定]
------------------------------------------------------
4.测试
[root@localhost ~]# ftp 192.168.100.4
name (192.168.100.4:root):kaixin
password:
ftp> ls
ftp> mkdir 111
ftp> dir
drwx------ 2 500 500 4096 aug 25 09:45 111
ftp> put install.log.syslog
ftp> dir
drwx------ 2 500 500 4096 aug 25 09:45 111
-rw------- 1 500 500 10033 aug 25 09:45install.log.syslog
ftp> exit
[root@localhost ~]# cd ~kaixin
[root@localhost kaixin]# ls
111 install.log.syslog
======================================
虚拟用户访问
1.安装db4-utils
[root@localhost ~]# yum -y install db4-utils
--------------------------------------------
2.创建文本格式的用户名、密码列表
[root@localhost ~]# vi /etc/vsftpd/vusers.list
aaa
123
bbb
123
----------------------------------------------
3.创建berkeley db格式的数据库文件
[root@localhost ~]# cd /etc/vsftpd/
[root@localhost vsftpd]#db_load -t -t hash -f vusers.list vusers.db
[root@localhost vsftpd]# file vusers.db
vusers.db: berkeley db (hash,version 9, native byte-order)
[root@localhost vsftpd]# cd
(-f:指定数据源文件,-t:允许非berkeley db的应用程序使用从文本格式转换的db数据文件,-t hash:指定读取数据文件的基本方法)
----------------------------------------------------
4.添加虚拟用户的映射账号、创建ftp根目录
[root@localhost ~]# useradd -d /var/ftproot -s /sbin/nologin virtual
[root@localhost ~]# chmod 755 /var/ftproot/
-----------------------------------------------------
5.为虚拟用户建立pam认证文件
[root@localhost ~]# vi /etc/pam.d/vsftpd.vu
#%pam-1.0
auth required pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers
-----------------------------------------------------
6.修改vsftpd配置,添加虚拟用户支持,注释匿名访问权限
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
1 #匿名用户
2 anonymous_enable=no
3 anon_umask=022
4 anon_root=/var/ftp
5 #anon_upload_enable=yes
6 #anon_mkdir_write_enable=yes
7 #anon_other_write_enable=yes
8 #anon_max_rate=0
9
10 #本地用户
11 local_enable=yes
12 local_umask=077
13 chroot_local_user=yes
14
15 #全局配置
16 listen=yes
17 listen_address=192.168.100.4
18 listen_port=21
19 write_enable=yes
20 download_enable=yes
21 dirmessage_enable=yes
22 xferlog_enable=yes
23 xferlog_std_format=yes
24 connect_from_port_20=yes
25 pasv_enable=yes
26 pasv_max_port=24600
27 pasv_min_port=24500
28 pam_service_name=vsftpd.vu
29 userlist_enable=yes
30 userlist_deny=yes
31 max_clients=0
32 max_per_ip=0
33 tcp_wrappers=yes
34
35 #虚拟用户
36 guest_enable=yes
37 guest_username=virtual
-------------------------------------------------------
7.为不同的虚拟用户建立独立的配置文件
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
38 user_config_dir=/etc/vsftpd/vusers_dir //添加本行
[root@localhost ~]# mkdir /etc/vsftpd/vusers_dir
[root@localhost ~]# cd /etc/vsftpd/vusers_dir/
[root@localhost vusers_dir]#vi aaa
anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_other_write_enable=yes
[root@localhost vusers_dir]#touch bbb
----------------------------------------------------------
8.重载vsftpd服务
[root@localhost vusers_dir]#service vsftpd reload
关闭vsftpd: [确定]
为vsftpd 启动vsftpd: [确定]
--------------------------------------------------------
9.测试
[root@localhost ~]# ftp 192.168.100.4
name (192.168.100.4:root):aaa
password:
ftp> mkdir 111
ftp> dir
drwxr-xr-x 2 501 501 4096 aug 25 10:26 111
ftp> cd 111
ftp> put install.log.syslog
ftp> renameinstall.log.syslog install.log
ftp> dir
-rw-r--r-- 1 501 501 10033 aug 25 10:27install.log
ftp> get install.log
10033 bytes received in3.2e-05 secs (313531.26 kbytes/sec)
ftp> exit
221 goodbye.
[root@localhost ~]# ftp192.168.100.4
name (192.168.100.4:root):bbb
password:
ftp> dir
drwxr-xr-x 2 501 501 4096 aug 25 10:27 111
ftp> cd 111
ftp> dir
-rw-r--r-- 1 501 501 10033 aug 25 10:27install.log
ftp> put install.log
550 permission denied.
ftp> rename install.log 22
550 permission denied.
ftp> get install.log
10033 bytes received in5.2e-05 secs (192942.30 kbytes/sec)
ftp> exit
221 goodbye.
[root@localhost ~]# ftp 192.168.100.4
name (192.168.100.4:root):kaixin
password:
530 login incorrect.
测试结果:
aaa:可登陆,能正常浏览,可上传、下载、修改文件
bbb:可登陆,能正常浏览,可下载,不可上传、修改文件
系统用户:不可登陆
上一篇: Mysql锁表的问题解决
下一篇: sql相关查询语句分析