linux搭建ftp服务器

 

Linux安装启动FTP服务

Linux服务器默认是没有开启FTP服务的。也没有FTP服务器,为了文件的传输需要用到FTP服务器,以典型的vsftpd为例。
vsftpd作为FTP服务器,在Linux系统中是非常常用的;下面就说如何在centos 6.5系统上安装vsftp。
1.查看是否安装vsftpd
rpm -qa|grep vsftpd

 如下代表有

 


2.执行以下安装命令
 
yum install vsftpd

3.设置开机启动服务
 chkconfig vsftpd on

4.启动服务 
 service vsftpd start

5.配置防火墙(我没弄)

打开/etc/sysconfig/iptables文件

  1. vi /etc/sysconfig/iptables

在REJECT行之前添加如下代码

  1. -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

保存和关闭文件,重启防火墙

  1. service iptables start

6.配置vsftpd服务器

默认的配置文件是/etc/vsftpd/vsftpd.conf,你可以用文本编辑器打开。

  1. vi /etc/vsftpd/vsftpd.conf

7.添加ftp用户

下面是添加ftpuser用户,设置根目录为/home/wwwroot/ftpuser,禁止此用户登录SSH的权限,并限制其访问其它目录。

a、修改/etc/vsftpd/vsftpd.conf

96 chroot_local_user=YES  --改为YES chroot_local_user=YES将所有用户限定在主目录内
97 chroot_list_enable=YES  --注释放开
98 # (default follows)
99 chroot_list_file=/etc/vsftpd/chroot_list --注释放开 chroot_list_file这时列出的是那些“不会被限制在主目录下”的用户。

userlist_deny=NO  --新增
userlist_enable=YES --默认是YES

 

b、增加用户ziyouwu,指向目录/home/wwwroot/ziyouwu,禁止登录SSH权限。

  1. useradd -d /ftp -g ftp -s /sbin/nologin ftpuser

c、设置用户口令

  1. passwd ftpuser

d、编辑文件chroot_list:

    配置/etc/vsftpd/chroot_list

  1.     增加ftp_test1 代表 这个用户不被限制主目录内

         vi /etc/vsftpd/chroot_list

         ftp_test1

  2.  

       配置允许访问的用户

        vi /etc/vsftpd/user_list

       增加允许访问的用户ftp_test1

e、重新启动vsftpd

  1. service vsftpd restart

出现的错误(我没出现)

1、500 OOPS: cannot change directory
解决方法:

在终端输入命令:

  1. setsebool -P ftpd_disable_trans 1
  2. service vsftpd restart
就可以解决了!
 
 
登陆:

或者

 

 

解释一:

vsftpd.ftpusers:位于/etc/vsftpd目录下。它指定了哪些用户账户不能访问FTP服务器,例如root等。 如果想要root 登录 则注释里面的root

 

vsftpd.user_list:位于/etc/vsftpd目录下。该文件里的用户账户在默认情况下也不能访问FTP服务器,

仅当vsftpd .conf配置文件里启用userlist_enable=NO选项时才允许访问。默认是YES,代表这个配置文件生效

 

我们在这里 如果只想让这里面的用户登录到FTP 需要添加 userlist_deny=NO 参数这个参数=NO 代表 这个配置信息的用户可以访问FTP

 

 

解释二,ftpuser文件与user_list 的文件

当ftpuser文件配置了用户,代表这些用户不允许访问,即使当user_list添加了这个用户也不允许访问

posted @ 2019-04-01 17:57  林被熊烟岛  阅读(144)  评论(0)    收藏  举报