ubuntu下配置ftp服务器

来源:互联网 发布:淘宝刷到单能赚钱吗 编辑:程序博客网 时间:2024/05/17 07:24

公司安排配置一下ftp服务器,公司服务器是ubuntu,实习的我都没用过ubuntu真的是苦不堪言,幸亏好兄弟帮忙才上手快了一点,网上有很多关于ubuntu下配置ftp服务器的文章,但我自己配置的时候发现,恩总是不是很全,还要到处找文章解决bug,不如自己记录一篇也好以后在配置的时候能有个依照

首先是安装

1.先更新后下载

 sudo apt-get update sudo apt-get install vsftpd  sudo service vsftpd restart ##重启下服务

2.接下来创建我们ftp的主目录也就是我们通过ftp客户端访问时候看到的根目录

 sudo mkdir /home/uftp ## uftp是文件夹的名字,我们可以在计算机->home下找到

3.新建用户

sudo useradd -d /home/uftp -s /bin/bash uftp ##创建了一个叫uftp的用户sudo passwd uftp ##设置uftp用户的密码

-d:指定用户登入时的启始目录
-s:指定用户登入后所使用的shell
网上有很多是 -s /sbin/nologin 登录的时候会遇到报错530Login incorrect
关于这个有一篇文章有详细解决方案,其实就是没有这个shell
530Login incorrect解决方案
如果是-s /bin/bash就不会有问题因为我们的etc/shells下是有/bin/bash的,我们可以cat /etc/shells看一下

4.修改配置文件

sudo gedit /etc/vsftpd.conf ##也可以使用vi和vim。gedit比较简单粗暴##必配的userlist_deny=NO userlist_enable=YESuserlist_file=/etc/allowed_users##这三个是实现自己定义一个userlist,里面的用户名可以访问ftp服务器seccomp_sandbox=NO##不知道,但很多都配了##配置文件里有些选址,只是注释了,我们把下面的取消注释就行local_enable=YES ##允许本地用户登录anonymous_enable=NO #禁止匿名访问write_enable =YES //可写pam_service_name=vsftpd ##配上就可以,能解决一些bug,虽然我没用的上##还有一些是非必须的,比如有关安全的,限制用户访问权限在根目录及其子文件,不能访问服务器其他文件chroot_local_user=NOchroot_list_enable=YESchroot_list_file=/etc/vsftpd.chroot_list ##这里面写不希望能够浏览其主目录上级目录的用户名allow_writeable_chroot=YES ##允许根目录可写

5.查看2个配置文件,检查一下用户是否可以访问

sudo gedit /etc/allowed_users ##里面存着可以访问ftp服务器的用户的用户名sudo gedit /etc/ftpusers ##里面存着不可以访问ftp服务器的用户的用户名

这样其实就可以了,可以用一些ftp客户端访问你的ftp服务器类似8uftp软件,输入你服务器的ip地址就可以,帐号密码填你之前创建的。下面要说的是一些文件权限的问题,因为我们ftp服务器不一样的用户就有不一样的权限,只要分为读写执行
sudo chmod 735 目录文件名
7 = 4读+2写+1执行
7:所在者的权限
3:所在组的权限
5:其他组的权限
chmod -R 修改整个文件夹里的文件
chmod -R 735 /home/uftp

chmod 模式 文件 u、g、o 用户、组、其他 a指全部
+ – 代表加入或删除权限
r、w、x代表读写执行三种权限
chmod -R o+rx /home/uftp uftp下面所有的子文件夹对于其他组只有读和执行,这也是我ftp上用到的,不是所有者不允许写文件
成为文件的所有者
chown -R uftp /home/uftp
chown -R super:uftp /home/uftp uftp下面所有的子文件夹所有者改为super组里用户名为uftp的用户,组名不是必须的

原创粉丝点击