LINUX下如何开启ftp服务器?

LINUX下如何开启ftp服务器?,第1张

1. 首先服务器要安装ftp软件,查看是否已经安装ftp软件下:

#which vsftpd

如果看到有vsftpd的目录说明服务器已经安装了ftp软件

2. 查看ftp 服务器状态

#service vsftpd status

3. 启动ftp服务器

#service vsftpd start

4. 重启ftp服务器

#service vsftpd restart

5. 查看服务有没有启动

#netstat -an | grep 21

tcp0 0 0.0.0.0:21 0.0.0.0:* LISTEN

如果看到以上信息,证明ftp服务已经开启。

6.如果需要开启root用户的ftp权限要修改以下两个文件

#vi /etc/vsftpd.ftpusers中注释掉root

#vi /etc/vsftpd.user_list中也注释掉root

然后重新启动ftp服务。

7. vsftpd 500 OOPS: cannot change directory

登陆报错:

C:\>ftp 192.168.0.101

Connected to 192.168.0.101.

220 (vsFTPd 2.0.5)

User (192.168.0.101:(none)): frank

331 Please specify 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关掉也可以的。

8. 永久开启,即os重启后自动开启ftp服务

方法一:

cd /etc/xinetd.d ,编辑ftp服务的配置文件gssftp的设置:

vi /etc/xinetd.d/gssftp ,将 修改两项内容:

(a) server_args = -l –a 去掉-a 改为server_args = -l

(b) disable=yes改为disable=no

(c) 保存退出。

方法二:

(a) system-config-services , 进入图形界面的System services查看是否有 vsftpd项,如果没有转到2.,保存后退出

  (b) 用redhat第三张盘 安装此服务(开始--删除/增加程序),200K左右

  (c) #setup

此时能看到vsftpd项,此时选中此services项,保存后退出.

Liux系统下有好几款很不错的ftp服务,各有特点,适应于不同的应用场合。一般在各种Linux的发行版中,默认带有的ftp软件是vsftp,本文是针对CentOs7系统下搭建vsftpd服务为例。

1. 首先确定系统中已经安装了vsftpd软件,查看命令:

rpm -q vsftpd

rpm -qa |grep vsftpd

2. 安装vsftpd(以yum安装为例)

yum install -y vsftpd

3.关闭selinux和iptables(也可配置防火墙相关访问策略,反之系统阻断),设置vsftpd开机自启

永久关闭selinux

vi /etc/sysconfig/selinux

将配置SELinux=enforcing改为SELinux=disabled

保存退出并重启服务器

验证是否关闭命令:getenforce

关闭防火墙

centos 7 *** 作命令:systemctl stop firewalld.service

centos 6 *** 作命令:service stop iptables

设置vsftpd开机自启

centos 7 *** 作命令:systemctl enable vsftpd.service

centos 6 *** 作命令:chkconfig vsftpd on

4.vsftpd的配置

ftpusers 该文件用来指定哪些用户不能访问ftp服务器。

user_list 该文件用来指定的默认账户在默认情况下也不能访问ftp服务器。

vsftpd.conf vsftpd的主要配置文件,路径:

/etc/vsftpd/vsftpd.conf

# vsftpd.conf的配置

# 是否允许匿名登录

anonymous_enable=NO

# 是否允许本地用户登录

local_enable=YES

# 是否允许本地用户对FTP服务器文件具有写权限

write_enable=YES

# 本地用户主目录

local_root=/var/ftp

# 匿名用户主目录

anon_root=/var/ftp/pub

# 是否允许匿名用户上传文件,如允许,须将全局的

write_enable=YES

anon_upload_enable=YES

# 是否允许匿名用户创建新文件夹

anon_mkdir_write_enable=YES

# 容许匿名用户除了新建和上传外的其他权限

anon_other_write_enable=YES

# 本地用户掩码

local_umask=022

# 设置匿名登入者新增或上传档案时的umask值

anon_umask=022

# 是否激活目录欢迎信息功能

dirmessage_enable=YES

xferlog_enable=YES

# 主动模式数据传输20端口

connect_from_port_20=NO

xferlog_std_format=YES

# 是否监听ipv4

listen=YES

# listen_ipv6=YES

pam_service_name=vsftpd

userlist_enable=YES

tcp_wrappers=YES

# 是否设置被动模式

pasv_enable=YES

# 被动模式传输使用端口

pasv_min_port=20020

pasv_max_port=20020

# 被动模式返回给客户端的ip地址(服务器内网穿透时使用)

pasv_address=0.0.0.0( 服务器外网ip )

# 设置用户访问目录,默认只允许用户自己的ftp目录

# 需要同时设置allow_writeable_chroot,允许受限用户的写权限,不然会报错

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

allow_writeable_chroot=YES

5.创建例外用户文件

#哪怕没有例外用户也必须创建

vim /etc/vsftpd/chroot_list

只想让指定账户不限制在其主目录,其它账户都限制在主目录。

对于chroot_local_user与chroot_list_enable的组合效果,可以参考下表:

6. 创建ftp新用户

#新增一个test(用户名),并指定上传目录在/home/ftp/test下

useradd -g root -d /home/ftp/test -s /sbin/nologin test

# 如果后期想变更此用户的上传到(/XXX/ftp/test),请使用下面的命令:

usermod -d /XXX/ftp/test test

# 设置用户密码

passwd test

因为安全问题,vaftpd不允许匿名用户在ftp主目录上传,可以新建一个子目录,设置权限为777

7. 关于local_umask和anon_umask掩码

掩码决定了上传文件的权限,掩码为022代表上传后的文件权限为

666-022=644 ->rw-r--r--

掩码即为要去除的权限为,默认设为033即可。

8. 启动vsftp服务

#centos7 *** 作命令

启动: systemctl start vsftpd.service

停止: systemctl stop vsftpd.service

重启: systemctl restart vsftpd.service

查看状态: systemctl status vsftpd.service

#centos6 *** 作命令

启动: service vsftpd start

停止: service vsftpd stop

重启: service vsftpd restart

查看状态: service vsftpd status

Linux之ftp命令使用方法及案例

Example 1:登陆

[root@iZ25ja2kaemZ ~]# ftp 121.199.5.52

Connected to 121.199.5.52 (121.199.5.52).

220 Microsoft FTP Service

Name (121.199.5.52:root): baitongsj

331 User name okay, need password.

Password:

230 User logged in, proceed.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp>ll

?Invalid command

ftp>

Example2:dir,cd ,quit 命令用法

ftp>dir ./app

227 Entering Passive Mode (121,199,5,52,128,234)

150 Opening ASCII mode data connection for /bin/ls.

total 0

drw-rw-rw-   1 user     group           0 Nov  9 18:26 .

drw-rw-rw-   1 user     group           0 Nov  9 18:26 ..

drw-rw-rw-   1 user     group           0 Nov  9 18:24 Common

drw-rw-rw-   1 user     group           0 Nov  9 18:24 Conf

drw-rw-rw-   1 user     group           0 Nov  9 18:19 Lang

drw-rw-rw-   1 user     group           0 Nov  9 18:23 Lib

drw-rw-rw-   1 user     group           0 Nov  9 18:26 Runtime

drw-rw-rw-   1 user     group           0 Nov  9 18:35 Tpl

226 Transfer complete.

ftp>cd base

250 Directory changed to /crms/Base

ftp>dir

227 Entering Passive Mode (121,199,5,52,128,235)

150 Opening ASCII mode data connection for /bin/ls.

drw-rw-rw-   1 user     group           0 Nov  9 18:18 .

drw-rw-rw-   1 user     group           0 Nov  9 18:18 ..

drw-rw-rw-   1 user     group           0 Nov  9 18:12 Common

drw-rw-rw-   1 user     group           0 Nov  9 18:13 Conf

drw-rw-rw-   1 user     group           0 Nov  9 18:17 Extend

-rw-rw-rw-   1 user     group        1854 Jan 18  2016 LICENSE.txt

drw-rw-rw-   1 user     group           0 Nov  9 18:17 Lang

drw-rw-rw-   1 user     group           0 Nov  9 18:17 Lib

-rw-rw-rw-   1 user     group        5600 Jan 18  2016 README.txt

-rw-rw-rw-   1 user     group        1568 Jan 18  2016 ThinkPHP.php

drw-rw-rw-   1 user     group           0 Nov  9 18:18 Tpl

-rw-rw-rw-   1 user     group        7396 Jan 18  2016 logo.png

226 Transfer complete.

ftp>quie

?Invalid command

ftp>quit

221 Goodbye!

[root@iZ25ja2kaemZ ~]#

example3:帮助文件

ftp>help

Commands may be abbreviated.  Commands are:

!               debug           mdir            sendport        site

$               dir             mget            put             size

account         disconnect      mkdir           pwd             status

append          exit            mls             quit            struct

ascii           form            mode            quote           system

bell            get             modtime         recv            sunique

binary          glob            mput            reget           tenex

bye             hash            newer           rstatus         tick

case            help            nmap            rhelp           trace

cd              idle            nlist           rename          type

cdup            image           ntrans          reset           user

chmod           lcd             open            restart         umask

close           ls              prompt          rmdir           verbose

cr              macdef          passive         runique         ?

delete          mdelete         proxy           send

ftp>help dir

dir             list contents of remote directory

ftp>help mdir

mdir            list contents of multiple remote directories

ftp>

example4:重命名文件

ftp>dir

227 Entering Passive Mode (121,199,5,52,128,234)

150 Opening ASCII mode data connection for /bin/ls.

drw-rw-rw-   1 user     group           0 Nov  9 18:46 .

drw-rw-rw-   1 user     group           0 Nov  9 18:46 ..

drw-rw-rw-   1 user     group           0 Nov  9 18:39 Install

drw-rw-rw-   1 user     group           0 Nov  9 18:36 appImg

drw-rw-rw-   1 user     group           0 Nov 11 11:08 css

drw-rw-rw-   1 user     group           0 Nov  9 18:37 excelmodel

drw-rw-rw-   1 user     group           0 Nov  9 18:46 file

drw-rw-rw-   1 user     group           0 Nov  9 18:37 ico

drw-rw-rw-   1 user     group           0 Nov  9 18:38 img

drw-rw-rw-   1 user     group           0 Nov 11 11:11 js

-rw-rw-rw-   1 user     group           3 Oct 25 15:56 ni.txt

drw-rw-rw-   1 user     group           0 Nov  9 18:46 sound

drw-rw-rw-   1 user     group           0 Nov  9 18:46 sql

226 Transfer complete.

ftp>rename ni.txt ss

350 File or directory exists, ready for destination name

250 RNTO command successful.

ftp>dir

227 Entering Passive Mode (121,199,5,52,128,235)

150 Opening ASCII mode data connection for /bin/ls.

drw-rw-rw-   1 user     group           0 Nov 16 16:57 .

drw-rw-rw-   1 user     group           0 Nov 16 16:57 ..

drw-rw-rw-   1 user     group           0 Nov  9 18:39 Install

drw-rw-rw-   1 user     group           0 Nov  9 18:36 appImg

drw-rw-rw-   1 user     group           0 Nov 11 11:08 css

drw-rw-rw-   1 user     group           0 Nov  9 18:37 excelmodel

drw-rw-rw-   1 user     group           0 Nov  9 18:46 file

drw-rw-rw-   1 user     group           0 Nov  9 18:37 ico

drw-rw-rw-   1 user     group           0 Nov  9 18:38 img

drw-rw-rw-   1 user     group           0 Nov 11 11:11 js

drw-rw-rw-   1 user     group           0 Nov  9 18:46 sound

drw-rw-rw-   1 user     group           0 Nov  9 18:46 sql

-rw-rw-rw-   1 user     group           3 Oct 25 15:56 ss

226 Transfer complete.

 example5 :格式 get [remote-file] [local-file],将文件从远端主机中传送至本地主机中,如要获取服务器上\rose\1.bmp,则  ftp>get /rose/1.bmp    /tmp/1.bmp (回车),必须给出第二个参数,否则会复制失败,登录后执行:

ftp>get robots.txt /tmp/

local: /tmp/ remote: robots.txt

227 Entering Passive Mode (121,199,5,52,128,233)

150 Opening BINARY mode data connection for robots.txt (26 Bytes).

local: /tmp/: Is a directory

226 Transfer complete.

226 ABOR command successful.

ftp>

example 6:lcd 命令

ftp>lcd ..

Local directory now /

ftp>lcd /tmp/flower

Local directory now /tmp/flower

example 7: put命令

格式:put local-file [remote-file]

将本地一个文件传送至远端主机中.

如要把本地的1.bmp传送到远端主机e:\rose,并改名为333.bmp

ftp>put 1.bmp /rose/333.bmp (回车)

ftp>put /tmp/tt.txt ./nihaol.txt

local: /tmp/tt.txt remote: ./nihaol.txt

227 Entering Passive Mode (121,199,5,52,128,232)

150 Opening BINARY mode data connection for nihaol.txt.

226 Transfer complete.

5 bytes sent in 2.6e-05 secs (192.31 Kbytes/sec)

example 8: mput命令

格式:mput local-files

将本地主机中一批文件传送至远端主机.

如要把本地当前目录下所有bmp文件上传到服务器e:\rose 下

ftp>cd /rose (回车)

ftp>mput *.bmp (回车)

注意:上传文件都来自于主机的当前目录下。比如,在 /root/test下运行的ftp命令,则只有在/root/test下的文件linux才会 上传到服务器e:\rose 下


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7086926.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-01
下一篇 2023-04-01

发表评论

登录后才能评论

评论列表(0条)

保存