这篇“Ubuntu怎么搭建Ftp服务器”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Ubuntu怎么搭建Ftp服务器”文章吧。
成都创新互联公司专注于龙潭企业网站建设,自适应网站建设,成都做商城网站。龙潭网站建设公司,为龙潭等地区提供建站服务。全流程定制网站建设,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
详细步骤如下:
(1)首先打开终端进入root模式下(在终端中输入:sudo su 回车 提示输入密码 输入密码即可);
(2)安装vsftpd软件(首先要联网,或者通过新立德软件安装!卸载软件命令:sudo apt-get remove vsftpd
)
命令:sudo apt-get install vsftpd
(3)安装成功之后,默认的会在 文件系统下的srv 目录下创建一个ftp文件(和home在同一级目录下的),这里就是ftp服务器的默认文件夹!
(4)在有一些文档上说的是在ftp服务器自动创建的目录是在home目录下的ftp文件夹,但是我始终没有找到(一般home目录下是用户的目录),自己创建的在访问ftp的时候也是没有找到!
(5)向服务器目录添加文件夹和文件,首先在srv/ftp/下创建一个文件夹test(手动无法创建,只能通过命令实现!)
命令:mkdir /srv/ftp/test
得到创建好的文件夹:
多创建几个目录仅用于测试!
(6)在test文件夹中创建一个文件:touch /srv/ftp/test/1.txt 文件
(7)编辑该1.txt文件:(由于权限的管理,需要利用root模式更改文件内的内容!)
sudo gedit /srv/ftp/test/1.txt 会弹出一个记事本文件 是root权限下打开的才可以修改的|!随便加些内容
(8)为了说明一个命令,重启一下!
命令是:sudo /etc/init.d/vsftpd restart
(9)查看是否成功 找到ubuntu的ip地址,在地址栏中访问 我的是: 或者是,以下是截图:
进入test找到1.txt文件 点击进入!
(10)ok!到此完成!
上述中知识介绍了一般默认的配置,我们通常是需要根据自己的需求配置的,以下是一些常见的配置!
如需修改的话还是需要在root权限下修改 使用命令:sudo gedit /etc/vsftpd.conf
(1)匿名用户相关设置
anonymous_enable=yes ,将yes改为no, 禁止匿名用户登陆
#anon_mkdir_write_enable=yes ,将#注释去掉,允许匿名用户创建目录
#non_upload_enalbe=yes ,将#去掉,允许匿名用户上传
anon_world_readable_only=yes ,允许匿名用户下载,默认是禁止的,这个可以自行添加。
anon_other_write_enable=yes ,将其设为yes的话,就除了上传和创建目录外,还可以重命名,删除文件,默认是no
no_anon_password=no ,将其设为yes,匿名用户不会查询用户密码直接登陆。
ftp_username=ftp ,匿名用户登陆系统的账号默认为ftp,此项最好不要改;
chroot_local_user=yes #把本地用户限制在自己的home文件夹中,这样子登录之后就不能访问自己home之外的文件了,这样子是出于安全上的考虑
anon_root=/var/ftp/anon #指定匿名登录后的根文件夹,也就是对于匿名用户,会把/var/ftp/anon映射为它的根目录
(2)ftp服务端口的指定
listen_port=8021 ,指定命令通道为8021,默认为21
listen_data_port=8020 ,指定数据通道为8020,默认为20
(3)上传模式的设置
pasv_enable=yes ,是否允使用被动模式,默认是允许的。
pasv_min_port=10000 ,指定使用被动模式时打开端口的最小值
pasv_max_port=10004 ,指定使用被动模式时打开端口的最大值。
(4)vsftp服务器指定ip地址
listen_address=192.168.0.21 , 指定ftp,ip地址
注:只有当vsftp运行于独立模式时才允许使用指定ip,如果在/etc/xinetd.d目录下已经建立了vsfpd文件,就要将该文件中的disable设置为yes,方可。
(5)锁定用户,禁止用户离开用户主目录
chroot_local_user=yes ,将其设为yes,就锁定在用户主目录,设为no,可以切换
将指定用户设置为锁定用户主目录:
#chroot_list_enable=yes #chroot_list_file=/etc/vsftpd.chroot_list
将其改为如下:
chroot_list_enable=no chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
将上面保存,再做如下操作:
#touch /etc/vsftpdvsftpd.chroot_list #vi /etc/vsftpd/vsftpd.chroot_list ,在该文件中加入用户名单,如:netseek_com
(6)vsftpd服务器的流量控制
max_clients=100 ;允许的最大连接数,定义为100,默认为0,表没有限制
max_per_ip=5 ;每个ip允许的连接数,0表没有限制,需要运行于独立模式方可
anon_max_rate=50000 ;匿名用户最大带宽,单位为bps
local_max_rate=200000 ;系统用户最大带宽
(7)vsftpd定制欢迎信息
目录说明设置
#vi /etc/vsftpd.conf #dirmessage_enable=yes,前的#去掉。
然后我们定制一个.message,写上你想写的东西,然后把这个文件复制到各个用户的家目录中,就ok。
(9)vsftpd系统欢迎消息设置
ftpd_banner=welcome to , yeah!!!
系统欢迎消息文件设置
banner_file=/etc/vsftpd/welcome 与ftpd_banner相类似,不同之处在于,banner_file指定欢迎文件。
创建用户
但这样是不能上传文件的。因为这是匿名用户,当前目录所有者是root用户; 真的要上传文件在该目录下建立一个文件夹如名字是upload,
$ sudo mkdir /srv/ftp/upload $ sudo chown ftp:root /srv/ftp/upload
这个时候可以传文件到upload目录,但根目录还是不能上传文件,这是匿名用户,如果不是匿名用户就不存在这个问题。
1). 修改配置文件/etc/vsftpd.conf
anonymous_enable=no local_enable=yes write_enable=yes chroot_local_user=yes
2). 创建本地用户
$ sudo useradd ftpuser -m $ sudo passwd ftpuser
便可用ftpuser登录ftp了。
6. 如果出现错误:500 oops: vsftpd: refusing to run with writable anonymous root
这表示ftp用户的家目录的权限不对,这个目录的权限是不能打开所有权限的;是运行了chmod 777 /srv/ftp所致;如果没有ftp用户这个家目录,当然您要自己建一个;
ftp用户的家目录是不能针对所有用户、用户组、其它用户组完全开放的;解决办法如下:
# chown root:root /srv/ftp # chmod 755 /srv/ftp
7. 防火墙打开相应的端口21,20
8. /etc/init.d/vsftpd restart 重启服务
各用户的解释
下面就vsftpd支持三类用户加以说明:
1.匿名用户,也就是不需要输入密码就可登录ftp服务器的用户,这个用户名通常是ftp或anonymous; 与匿名用户有关的设置多以 anon_选项开头。
2.本地用户,也就是你linux系统上可登录到系统的用户,这些用户是在系统上实实在在存在的用户。通常会有自己的home,shell等。与本地用户有关的设置多以local_开头或包含local_的选项。
3.虚拟用户,只对ftp有效的用户。这些用户不可以登录linux系统,只可以登录ftp服务器。其实就是一个本地用户映射成多个只对ftp服务器有效的虚拟用户。虚拟用户可以有自己的ftp配置文件,因此通常利用虚拟用户来对ftp系统的不同用户制定不同的权限,以达到安全控制的目的。与虚拟用户有关的设置以guest_开头。
如果你只是想用ftp实现对自己的共享,你可以开启本地用户;
如果你想对很多人共享,那你可以用匿名用户;
如果你需要针对不同的用户群给予不同的权限,那你就要设置更复杂的虚拟用户了。
mkdir 目录名 => 创建一个目录
rmdir 空目录名 => 删除一个空目录
rm 文件名 文件名 => 删除一个文件或多个文件
rm –rf 非空目录名 => 删除一个非空目录下的一切
touch 文件名 => 创建一个空文件
以上就是关于“Ubuntu怎么搭建Ftp服务器”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注创新互联行业资讯频道。
新闻标题:Ubuntu怎么搭建Ftp服务器
当前网址:http://lswzjz.com/article/jsdhhc.html