前提

ssh服务已经开启,关闭防火墙,主机和虚拟机能ping通

查看ssh和防火墙的状态

service sshd status

service iptables status

开启ssh服务

service sshd start

关闭防火墙

chkconfig iptables off

测试主机和虚拟机的连通性

ping 192.168.2.129

安装并开启tftp和vsftpd

[root@localhost ~]# yum install tftp

[root@localhost ~]# yum install vsftpd

[root@localhost ~]# chkconfig vsftpd on

[root@localhost ~]# chkconfig tftp on

启动vsftpd 服务

service vsftpd start

查看vsftpd 的启动状态

service vsftpd status

打开21和20端口

[root@localhost ~]# /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT

[root@localhost ~]# /sbin/iptables -I INPUT -p tcp --dport 20 -j ACCEPT

[root@localhost ~]# /etc/rc.d/init.d/iptables save

添加ftp用户

[root@localhost vsftpd]# useradd ftpuser

[root@localhost vsftpd]# passwd ftpuser

修改sftpd .conf配置文件

[root@localhost vsftpd]#vi /etc/vsftpd/vsftpd.conf

把第一行的 anonymous_enable=YES ,改为NO

注:

vsftpd的配置,配置文件中限定了vsftpd用户连接控制配置。 vsftpd.ftpusers:位于/etc目录下。它指定了哪些用户账户不能访问FTP服务器,例如root等。     vsftpd.user_list:位于/etc目录下。该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd .conf配置文件里启用userlist_enable=NO选项时才允许访问。     vsftpd.conf:位于/etc/vsftpd目录下。来自定义用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置。如下

[root@Mclass vsftpd]# cat ftpusers

# Users that are not allowed to login via ftp

root

[root@Mclass vsftpd]#

重启vstfpd 服务

[root@localhost upload]# service vsftpd restart

windows cmd测试链接

C:\Users\Administrator>ftp 192.168.1.112

连接到 192.168.1.112。

220 (vsFTPd 2.2.2)

用户(192.168.1.112:(none)): ftpuser

331 Please specify the password.

密码:

500 OOPS: cannot change directory:/home/ftpuser

登录失败。

ftp> bye

可以看到报了个错误:500 OOPS: cannot change directory:/home/ftpuser。原因是CentOS系统安装了SELinux,因为默认下是没有开启FTP的支持,所以访问时都被阻止了。查看如下:

[root@localhost vsftpd]# getsebool -a | grep ftp

allow_ftpd_anon_write --> off

allow_ftpd_full_access --> off

allow_ftpd_use_cifs --> off

allow_ftpd_use_nfs --> off

ftp_home_dir --> off

ftpd_connect_db --> off

httpd_enable_ftp_server --> off

tftp_anon_write --> off

[root@localhost vsftpd]#

只要把allow_ftpd_full_access --> off,ftp_home_dir --> off改为on就可以了。

[root@localhost vsftpd]# setsebool ftp_home_dir 1

[root@localhost vsftpd]# setsebool allow_ftpd_full_access 1

开启SELinux

如执行getsebool -a | grep ftp出现getsebool: SELinux is disabled的错误,需重新开启selinux

vi /etc/selinux/config

更改为:SELINUX=enabled

必须重启linux,不重启是没办法立刻开启selinux的

重启完以后,就可以使用getsebool -a | grep ftp命令了

再次查看

[root@localhost vsftpd]# getsebool -a | grep ftp

allow_ftpd_anon_write --> off

allow_ftpd_full_access --> on

allow_ftpd_use_cifs --> off

allow_ftpd_use_nfs --> off

ftp_home_dir --> on

ftpd_connect_db --> off

httpd_enable_ftp_server --> off

tftp_anon_write --> off

再次测试连接

C:\Users\Administrator>ftp 192.168.1.112

连接到 192.168.1.112。

220 (vsFTPd 2.2.2)

用户(192.168.1.112:(none)): ftpuser

331 Please specify the password.

密码:

230 Login successful.

ftp> ls

200 PORT command successful. Consider using PASV.

150 Here comes the directory listing.

226 Directory send OK.

ftp> bye

221 Goodbye.

Ok,配置成功,可以用flashxftp来进行上传文件了。

Flashxftp上传文件

首先在/home的目录中创建一个目录,然后设置权限为777    [root@localhost home]# mkdir upload

[root@localhost upload]# chmod -R 777 /home/upload    然后修改vsftp的配置文件vsftpd.conf文件

[root@localhost upload]# vi /etc/vsftpd/vsftpd.conf    在最后添加上     local_root=/home/upload     保存,然后重启vsftpd服务器程序。

配置完成,就可以通过ftp上传文件到/home/upload目录下了。

linux(centos6)搭建ftp服务器 -摘自网络的更多相关文章

  1. 【转】Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍

    Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍 FTP 是File Transfer Protocol(文件传输协议)的英文简称,它基于传输层协议TCP建立,用于Interne ...

  2. linux系统搭建ftp服务器及创建用户使用

    linux 系统下搭建ftp服务器 ftp是什么 FTP是 File Transfer Protocol 文件传输协议的英文名称,用于在Internet上控制文件的双向传输. 同时它也是一个应用程序. ...

  3. Linux中搭建FTP服务器

    FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp 2 ...

  4. Linux下搭建FTP服务器

    实习的公司有一台老服务器转作为FTP服务器,老大把这个任务交给了我.这两天边学边卖的捣腾起来,总算搞成.现在记录下来,加深映像,也以便以后查看复习. 服务器安装的是:Red Hat Enterpris ...

  5. Linux下搭建FTP服务器(Ubuntu16.04)

    搞了下FTP服务器,基本上能遇到的问题都遇到了-.-! 先说步骤: 1.安装vsftpd软件包 sudo apt-get install vsftpd 2.打开配置文件 vim /etc/vsftpd ...

  6. Linux快速搭建FTP服务器

    FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为"文传协议".用于Internet上的控制文件的双向传输.同时,它也是一个应用程序(A ...

  7. linux上搭建ftp服务器

    摘要 vsftpd 是"very secure FTP daemon"的缩写,安全性是它的一个最大的特点.vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行 ...

  8. 在linux下搭建ftp服务器【转】

    1 安装 vsftpd yum install vsftpd 2 配置 vsftpd 打开 vsftpd 文件: vi /etc/vsftpd/vsftpd.conf 初次修改前建议备份该文件 2.1 ...

  9. Linux 下搭建ftp服务器 指定用户指定目录及其他操作

    搭建 Linux下 rpm -qa |grep vsftpd查看是否安装 没安装yum安装 /etc/vsftpd/目录下有vsftpd.conf配置文件 根据需求 进行配置  是否使用匿名用户以及文 ...

随机推荐

  1. Webwork【01】Webwork与 Struct 的前世今生

    Struts 1是全世界第一个发布的MVC框架,它由Craig McClanahan在2001年发布,该框架一经推出,就得到了世界上Java Web开发者的拥护,经过长达6年时间的锤炼,Struts ...

  2. SpringMVC学习笔记六:使用 hibernate-validator注解式数据校验

    对客户端传过来的参数,在使用前一般需要进行校验. SpringMVC框架内置了Validator验证接口,但是实现起来太麻烦.我们一般使用 hibernate-validator进行数据校验. 1:j ...

  3. soapUI pro :INFO:Error getting response for []; javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated

    need to configure two for the https address: Step 1 export the certificate from the IE settings opti ...

  4. 如何在cmd命令下运行python脚本

    1.打开cmd窗口,输入:cd c:\\python27  (首先得确认python已加入环境变量) 2.第二条命令:python[空格]完整的python脚本路径,运行即可 3.一个案例: Micr ...

  5. 转 configure: error: Cannot find ldap libraries in /usr/lib 解决办法

    今天在centos 6.2 64位版本上安装LNMP,config php的时候出现下面错误而退出 configure: error: Cannot find ldap libraries in /u ...

  6. PHP 反射API说明

    2.API概览:class Reflection { }interface Reflector { }class ReflectionException extends Exception { }cl ...

  7. js截取相应的域名----正则匹配法 和校验Url 正则表达式

    js截取相应的域名----正则匹配法 和校验Url 正则表达式 用javascript截取相应的域名方法两种,供大家参考 1.方法1: [javascript] view plain copy fun ...

  8. 关于easyui的问答(来自百度问答)

    求教大神,jquery easyui中$('#table').datagrid('options').queryParams是什么意思 https://zhidao.baidu.com/questio ...

  9. 获取当前日期 java

    SimpleDateFormat smpDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFo ...

  10. 零行代码为 App 添加异常加载占位图

    前文提要 近期准备重构项目,需要重写一些通用模块,正巧需要设置App异常加载占位图的问题,心血来潮设想是否可以零行代码解决此问题,特在此分享实现思路. 思路分享 对于App占位图,通常需要考虑的控件有 ...