细说ftp服务器的搭建部署及权限管理
来源:互联网 发布:cf for mac版 编辑:程序博客网 时间:2024/05/21 07:09
摘要:
FTP 是File TransferProtocol(文件传输协议)的英文简称,中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。FTP是文件传输协议的英文缩写,用来上传、下载、覆盖、删除服务器上的文件。FileZilla软件就是采用FTP的原理。
实验目的:
在Linux中搭建一个ftp服务器,以供两个工作小组保管文件使用,禁用匿名。第一个小组使用ftp1账号,工作目录在:/var/ftp/ftp1;第二个小组使用ftp2账号,工作目录在:/var/ftp/ftp2。ftp1允许的登录,可以离开自己的工作目录并且可以访问其他用户的文件;ftp2不允许登录。
一、安装vsftpd
[root@rac1 ~]# yum install -y vsftpd
[root@rac1 ~]# rpm -qa | grep vsftpd
vsftpd-2.2.2-11.el6_4.1.x86_64
二、设置启动级别
[root@rac1 ~]#service vsftpd start
[root@rac1 ~]#chkconfig --level 35 vsftpd on
[root@rac1 ~]#chkconfig vsftpd --list
三、创建用户并修改密码
[root@rac1 ~]# mkdir /var/ftp/ftp1
[root@rac1 ~]# mkdir /var/ftp/ftp2
[root@rac1 ~]# chown -R ftp1:ftp1 /var/ftp/ftp1
[root@rac1 ~]# chown -R ftp2:ftp2 /var/ftp/ftp2
[root@rac1 ~]# adduser ftp1 -s /sbin/nologin -d /var/ftp/ftp1
[root@rac1 ~]# adduser ftp2 -s /sbin/nologin -d /var/ftp/ftp2 (/sbin/nologin表示用户不允许登录,通过ftp可以连接)
四、vsftpd配置
[root@rac1 ~]# vim /etc/vsftpd/vsftpd.conf
chroot_local_user=YES #设置只能访问自己的目录
chroot_list_enable=YES #启用chroot_list
chroot_list_file=/etc/vsftpd/chroot_list #chroot_list指定哪些用户可以访问工作目录之外文件
anonymous_enable=NO #禁止匿名用户登录
userlist_enable=YES #允许本地用户登录
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list #user_list指定哪些用户可以登陆ftp服务器
五、检查配置情况(粗体为修改部分)
[root@rac1 ~]# cat /etc/vsftpd/vsftpd.conf |grep -v '#'
[root@rac1 ~]# grep -v '#' /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list
六、添加不允许登陆的用户,一行一个用户名
[root@rac1 ~]# vi /etc/vsftpd/ftpusers
# Users that are not allowed to login via ftp
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
七、添加允许登陆的用户,一行一行用户名;
在这里,添加允许登录的用户,如题所说的,我们允许ftp1用户登录,那么我们就添加ftp1用户就可以了
[root@rac1 ~]# vi /etc/vsftpd/user_list
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
ftp1
八、添加可以切换到工作目录之外的用户:默认情况下,如果我们不指定此列表,那么每个用户互相不能访问其他用户的文件夹,只能限制在自己的工作目录。我们希望ftp1用户可以访问到其他用户的工作目录,那么在这里添加ftp1用户
[root@rac1 ~]# vim /etc/vsftpd/chroot_list
ftp1
两种方式的具体表现区别为:
1、如果我们没有添加的话,通过pwd命令,显示为:
ftp> pwd
257 "/"
2、如果添加了的话,显示为以下形式,如果是这个情况,那么就可以cd到上层目录,然后访问其他目录了。
ftp> pwd
257 "/var/ftp/ftp1"
九、关闭防火墙
[root@rac1 ~]# service iptables stop
[root@rac1 ~]# chkconfig iptables off
十、禁用SELinux
[root@rac1 ~]# vi /etc/selinux/config
SELINUX=disabled
[root@rac1 ~]# getenforce
Disabled
十一、以下提供三种Windows访问ftp服务器方式
方式一、Windows客户端通过添加“映射网络驱动器”:步骤如下
计算机->映射网络驱动器->连接到可用于存储文档和图片的网站->下一步->选择自定义网络位置->输入:ftp://192.168.56.101,下一步->输入用户名ftp1->键入网络位置的名称(默认)->完成->输入ftp1的密码即可;
方式二、Windows客户端通过cmd访问;
方式三、添加FTP站点;
十二、对于Linux客户端,需要安装ftp
[root@rac1 ~]# yum install -y ftp
[root@racdg ~]# ftp 192.168.56.101
Connected to 192.168.56.101 (192.168.56.101).
220 (vsFTPd 2.2.2)
Name (192.168.56.101:root): ftp1
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (192,168,56,101,38,48).
150 Here comes the directory listing.
drwxr-xr-x 2 501 501 4096 Jun 08 01:34 11
drwxr-xr-x 2 501 501 4096 Jun 09 00:00 22
-rw-r--r-- 1 501 501 11 Jun 08 00:44 aa.txt
226 Directory send OK.
ftp> pwd
257 "/var/ftp/ftp1"
Windows和Linux客户端的命令一样。
注意事项:
1、通过put和get命令,我们只能上传和下载单个文件,并不能操作整个文件夹,因此,对于文件夹的操作,我们可以先压缩,再上传和下载,下载路径为客户端当前目录,所以在登陆ftp服务器之前,先切换到合适路径。更多命令请使用help查看。
2、无论是在ftp工具还是映射网络驱动器,只能新建文件夹,而不能新建文件,但是可以文件和文件夹进行复制和粘贴操作;
3、上传所有以.txt结尾的文件:ftp> mput *.txt
下载所有以.txt结尾的文件:ftp> mget *.txt
4、对于映射网络驱动器,不能直接双击打开文本文件,一般需要下载到本地进行相关操作;
5、请确保防火墙关闭;
- 细说ftp服务器的搭建部署及权限管理
- git服务器搭建及gitolite权限管理
- git服务器搭建及gitolite权限管理
- Ubunton下搭建ftp服务器 实现虚拟用户、本地用户、匿名用户的登陆及权限
- CentOS下搭建一个可以分配权限的ftp服务器
- FTP服务器的搭建
- ftp服务器的搭建
- FTP服务器的搭建
- ftp服务器的搭建
- -【Java FTP及FTP服务器搭建】
- LINUX下FTP服务器搭建部署
- 使用Webmin管理VSFTP搭建的FTP服务器
- gitolite部署的带有权限管理的git服务器使用说明
- FTP服务器搭建与权限配置
- SVN服务器的搭建及简易管理
- linux下linux系统下修改文件夹目录权限-------及搭建FTP服务器
- nginx服务器搭建及部署
- 简单的ftp服务器搭建
- js中检测数据类型
- 压测-sysbench安装
- 带你解锁蓝牙skill(二)
- WebViewClient
- gitlab解决#<Unicorn::HttpServer:0x007f854b8b8ad0>: worker (pid: 29607) exceeds memory limit
- 细说ftp服务器的搭建部署及权限管理
- Android静默拍照(无感知拍照)
- CentOS7安装mysql
- CSS line-height与行内框
- Android 常见的几种内存泄漏
- ES6构建彩票项目
- 【OpenCV入门指南】第一篇 安装OpenCV
- 【Java并发】- volatile详解
- JAVA向oracle 发送sql执行语句