星空5G 导航

Linux上安装使用FTP服务器ProFTPD的教程-

2024-08-26编辑:本站
~

Linux VPS用户一般都通过SFTP/SCP协议连接OpenSSH Server进行文件传输,但有时候,你希望某些用户只能上传文件到网站目录,而不能够登录系统执行命令以及访问其他目录,这时用FTP Server就能很好地实现.Linux上常用的FTP Server有VSFTPD和ProFTPD,其中ProFTPD简单易用,功能也不错,这里以ProFTPD为例搭建FTP服务器.当然,FTP也可以作为局域网内文件共享的一种方式,比如你的室友使用Windows,向你的Ubuntu ProFTPD个人电脑上传了一部影片,这样就不用拿U盘去拷贝了,其他室友也可以从你的ProFTPD上下载影片.

proftpd的配置方式类似apache,比vsftpd更易用,xampp就集成了proftpd.

代码如下:

sudo apt-get install proftpd-basic

安装时默认作为一个standalone server运行proftpd,如果每天的ftp请求量少,可以安装为inetd服务,节省服务器资源.

这里我使用默认值,安装为standalone server.

代码如下:

sudo netstat -antp|grep proftpd

查看proftpd监听的21端口

用proftpd提供的ftpasswd新建虚拟用户test并设置密码:

代码如下:

sudo mkdir -p /png/proftpd

代码如下:

sudo ftpasswd \

--passwd \

--file=/png/proftpd/passwd \

--name=test \

--uid=122 \

--gid=65534 \

--home=/srv/ftp \

--shell=/bin/false

其中uid和gid我使用的是安装proftpd时自动创建的系统用户ftp:nogroup的uid和gid,执行cat /etc/passwd|grep ftp可见.

/srv/ftp是安装proftpd时自动创建的目录,所有者为ftp:nogroup,权限为755.

这样虚拟用户test以系统用户ftp:nogroup登录/srv/ftp便可以对该目录进行读写.

Linux上的FTP Server的读写权限是映射到系统UGO(User Group Other)上的.

创建虚拟用户时通过设置系统用户uid和gid,以及合理地配置/srv/ftp目录及其文件权限来实现读写控制.

创建新用户时再次执行上述命令即可,根据需要改变一些参数.

比如我创建了一个以uid:gid为1000:1000的系统用户运行,登录目录为/png/www/example.com的虚拟用户eechen:

代码如下:

sudo ftpasswd \

--passwd \

--file=/png/proftpd/passwd \

--name=eechen \

--uid=1000 \

--gid=1000 \

--home=/png/www/example.com \

--shell=/bin/false

创建用户不需要重载proftpd,因为proftpd每次认证时都会读取认证文件.

代码如下:

sudo chown proftpd:nogroup /png/proftpd/passwd 设置passwd文件读写权限,确保proftpd能读取该文件.

代码如下:

sudo nano /etc/proftpd/proftpd.conf

在末尾加入:

代码如下:

DefaultRoot ~  #将用户限定在自己的目录中,上面test用户对应的就是/srv/ftp

RequireValidShell off  #禁用Shell请求认证

AuthOrder mod_auth_file.c  #认证方式顺序,这里采用文件认证

AuthUserFile /png/proftpd/passwd  #存放用户名和密码的文件

代码如下:

sudo service proftpd reload

重载使配置生效。

更改proftpd的默认端口

在文件/etc/proftpd.conf找到:

代码如下:

Port 21

更改为:

代码如下:

Port 2121

如果开启了iptables,iptables限制了所有的出站端口,加载模块ip_conntrack_ftp,这时在加载ip_conntrack_ftp模块时需要更改代理端口为2121。

打开/etc/sysconfig/iptables-config,保证此文件定义加载了ip_conntrack_ftp,如:

代码如下:

IPTABLES_MODULES="ip_conntrack_ftp"

然后在文件/etc/modprobe.conf增加此模块的参数:

代码如下:

options ip_conntrack_ftp ports=2121

如果需要手动加载,则可以执行以下命令:

代码如下:

/sbin/modprobe ip_conntrack_ftp ports=2121

  • linux建ftp服务器
  • 答:linux系统ftp命令用法?linux操作ftp命令的用法有四种:1.连接ftp服务器 格式:ftp a)在linux命令行下输入:ftp192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码,待认证通过即可。2.下载文件 下载文件通常用get和mget这两条命令。a)get 格式:get 将文件从远端主机中传送至本地...

  • linux怎么搭建ftp服务器
  • 答:vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。并且是一个完全免费开放源码的ftp软件 方法/步骤 1、用在线安装 yum install vsftpd pam* db4*-y 使用命令将vsftp配置为系统服务 chkconfig --level 35 vsftpd on 2、配置vsftpd服务的宿主 useradd vsftpdadmin -s ...

  • Linux怎么安装使用FTP服务器ProFTPD
  • 答:Linux安装使用FTP服务器ProFTPD方法 Linux VPS用户一般都通过SFTP/SCP协议连接OpenSSH Server进行文件传输,但有时候,你希望某些用户只能上传文件到网站目录,而不能够登录系统执行命令以及访问其他目录,这时用FTP Server就能很好地实现.Linux上常用的FTP Server有VSFTPD和ProFTPD,其中ProFTPD简单易用,功能也不错,...

  • linux 服务器怎么启动ftp?
  • 答:Liux系统下有好几款很不错的ftp服务,各有特点,适应于不同的应用场合。一般在各种Linux的发行版中,默认带有的ftp软件是vsftp,本文是针对CentOs7系统下搭建vsftpd服务为例。1. 首先确定系统中已经安装了vsftpd软件,查看命令:rpm -q vsftpd rpm -qa |grep vsftpd 2. 安装vsftpd(以yum安装为例)yum...

  • linuxftp开启
  • 答:suselinux怎么安装ftp? 有几种方法: 1.命令的方法:ps-aux|grepftpdnetstat-na|grep21看看有没有启动。 2.在界面模式下查看ftp服务有没有开启,比如suseLinux的,在yast中就能看到3.你用ftp软件看看能否连到系统。这方法缺点明显,要是配置错了也连不上,呵呵。建议采用第一种,直接用命令查看。 linux开启端口命令?

  • linux 里没有ftp服务 怎么安装?
  • 答:Linux中的ftp服务器一般是安装vsftp。以centos为例,具体操作如下:1、运行yum install vsftpd命令 命令具体的细节如下:[root@banyue.net]# yum install vsftpd Setting up Install Process Parsing package install arguments Resolving Dependencies –> Running transaction check —> Package vsftpd.i386 0...

  • 如何在linux下开启FTP服务
  • 答:the password.Password:500 OOPS: cannot change directory:/home/frank Login failed.ftp> ls 500 OOPS: child died Connection closed by remote host.解决方法:setsebool ftpd_disable_trans 1 service vsftpd restart 就OK了!这是SELinux的设置命令,在不熟悉SELnux前,把SELinux关掉也可以的。

  • 如何在linux下搭建ftp服务?
  • 答:dirmessage_enable=YES ;切换到FTP中的某目录时,是否显示该目录下的隐含文件“.message”xferlog_enable=YES ;是否启用启用上传和下载日志 connect_from_port_20=YES ;是否启用FTP数据端口的连接请求 xferlog_std_format=YES ;是否让FTP使用ftpd xferlog日志格式 pam_service_name=vsftpd ...

  • Linux系统怎么安装FTP和登陆使用
  • 答:在安装好的Linux,当我输入ftp的时候,提示我没有找到ftp的指令,在网上查看,说是要去安装一个vsftpd。先将权限设置为root,或者指令前加sudo。指令如下:yum install vsftpd 或者 sudo yum install vsftpd 2 然后安装好后,输入/sbin/service vsftpd restart去重启vsftpd.3 然后安装ftp。yum install ...

  • linuxftp启动
  • 答:(b)用redhat第三张盘安装此服务(开始--删除/增加程序),200K左右 (c)#setup 此时能看到vsftpd项,此时选中此services项,保存后退出.linux系统ftp命令用法?linux操作ftp命令的用法有四种:1.连接ftp服务器 格式:ftp a)在linux命令行下输入:ftp192.168.1.1 b)服务器询问你用户名和密码,分别输入...

    相关内容

    首页 新知 身健
    返回顶部

    © 星空5G w.xkyn.com