引用http://www.cnblogs.com/xiangxiaodong/archive/2013/12/23/3487028.html,学习。

本人是在windows8系统下,Oracle VM VirtualBox虚拟机的CentOS6.2下安装的FTP服务器,虚拟机启用了网卡桥接连接方式,(如果网卡NAT方式,需要启动FTP被动模式)操作流程如下:

1,以管理员(root)身份执行以下命令,安装FTP服务器端

yum install vsftpd

2设置开机启动vsftpd ftp服务

chkconfig vsftpd on

3、启动vsftpd服务

service vsftpd start

管理vsftpd相关命令:

停止vsftpd:  service vsftpd stop

重启vsftpd:  service vsftpd restart

配置防火墙(此处没有配置,也没有关闭防火墙,vsftpd可以生效)

打开/etc/sysconfig/iptables文件

vi /etc/sysconfig/iptables

在REJECT行之前添加如下代码

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

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

service iptables start

4,安装FTP客户端

yum install ftp

5,为ftp添加用户

/usr/sbin/adduser -d /opt/ftp_user -g ftp -s /sbin/nologin ftp_user;

测试客户端是否联通ftp服务器,ftp ip,输入用户名,密码。连接成功;

(由于ftp的默认根目录是/opt目录,如果我们想把根目录改为其他地方,可能引起安装失败。比如:

5,为ftp添加用户

/usr/sbin/adduser -d /home/ftp_user -g ftp -s /sbin/nologin ftp_user;

测试客户端是否联通ftp服务器,ftp ip,输入用户名,密码。连接失败;错误信息是:

500 OOPS: cannot change directory

这是因为selinux阻止了对其他目录的访问了,运行指令,解除selinux 对ftp的限制,

setsebool -P ftpd_disable_trans 1;

此时又出现错误:

Could not change active booleans: Invalid boolean

需要将ftp_home_dir设置为on,重启vsftpd。

setsebool -P  ftp_home_dir 1

service vsftpd restart

查看下修改是否生效:

sestatus -b| grep ftp

再次连接,显示成功;)

6,卸载vsftpd

rpm -aq vsftpd

显示安装的vsftpd版本,此处是vsftpd-2.2.2-14.el6.x86_64

rpm -e vsftpd-2.2.2-14.el6.x86_64

用rpm -e 查找结果 进行删除就ok了。
warning: /etc/vsftpd/user_list saved as /etc/vsftpd/user_list.rpmsave
warning: /etc/vsftpd/ftpusers saved as /etc/vsftpd/ftpusers.rpmsave #删除时将备份vsftp的用户列表文件。

看下是否卸载了vsftpd,进行stop及start操作:

/sbin/service vsftpd stop   vsftpd: unrecognized service #找不到vsftpd

/sbin/service vsftpd start   vsftpd: unrecognized service #找不到vsftpd记住,在卸载vsftpd之前,先停止vsftpd

7,安装过程中用到的Linux指令:

userdel -f test

添加用户组 groupadd ftp;

改变文件所有者:chown -R ftp_user blog

改变文件所在群组:chgrp -R ftp blog

用户列表文件:/etc/passwd

用户组列表文件:/etc/group

8,添加ftp用户指令

useradd -d /opt/reconciliation -s /sbin/nologin -g ftpGroup -G root ftpUser

解析:

useradd 添加用户ftpUser

-d 指定用户根目录为/opt/reconciliation

-s 指定shell脚本为/sbin/nologin,表示不允许shell登录

-g 创建分组ftpGroup

-G 指定root分组

PS:创建有问题可以删除重新创建 userdel -r ftpUser

虚拟机搭建ftp环境的更多相关文章

  1. Flume1 初识Flume和虚拟机搭建Flume环境

    前言:       工作中需要同步日志到hdfs,以前是找运维用rsync做同步,现在一般是用flume同步数据到hdfs.以前为了工作简单看个flume的一些东西,今天下午有时间自己利用虚拟机搭建了 ...

  2. Win10 VirtualBox虚拟机搭建lnmp环境

    之前用的是vagrant+VirtualBox搭建的环境,因为是windows系统动不动就报错,打不开环境,所以还是老老实实换了虚拟机哎.... 版本: VirtualBox 5.1.34   xsh ...

  3. Win10 搭建FTP环境,并使用Java实现上传,下载,删除

    测试的环境一般都是在自己电脑上面装的,现在一般都使用Win10开发 搭建FTP: 第一步:打开控制面板:点击程序 第二步: 第三步: 然后点击确认后等待完成 完成后在启动中找到IIS管理器 打开 在网 ...

  4. 搭建ftp环境

    首先明确,ftp站点设置在服务器上,而在客户端上来使用ftp工具来进行上传文件 具体环境搭建如下两个链接,一个server2003,一个是win7 server2003:http://jingyan. ...

  5. 虚拟机搭建hadoop环境

    这里简单用三台虚拟机,搭建了一个两个数据节点的hadoop机群,仅供新人学习.零零碎碎,花了大概一天时间,总算完成了. 环境 Linux版本:CentOS 6.5 VMware虚拟机 jdk1.6.0 ...

  6. pyftpdlib 搭建ftp环境

    环境搭建: pythonwindows/linuxpip install pyftpdlib (安装失败请到这里下载:https://pypi.python.org/pypi/pyftpdlib/)一 ...

  7. mac虚拟机搭建自动化环境-wda和python wda client

    尽量升级Xcode到最新版,保持iPhone的版本大于9.3 1.安装webDriverAgent到ios真机 从github上下载代码:git clone https://github.com/fa ...

  8. win10搭建ftp环境

    1.进入程序,并点击“启用或关闭windows功能” 2.勾选对应的功能,并点击“确定” 3.进入IIS 4.如下图 5.如图 6.如图 7.如下图 8.创建新用户,用于登录ftp(自行创建) 9.禁 ...

  9. Centos7+Apache2.4+php5.6+mysql5.5搭建Lamp环境——为了wordPress

    最近想搭建个人博客玩玩,挑来挑去发现口碑不错的博客程序是wordpress,简称wp.虽然是学java路线的程序员,但因入行时间太短,至今没有发现较为称手开源的博客程序,如果各位大神有好的推荐,也希望 ...

随机推荐

  1. eclipse报Access restriction: The type 'BASE64Decoder' is not API处理方法

    今天从svn更新代码之后,由于代码中使用了BASE64Encoder  更新之后报如下错误: Access restriction: The type ‘BASE64Decoder’ is not A ...

  2. liunx 命令大全

    一.切换到用户 1.切换到根用户(root) su 2.切换到a用户 su a 二.建立用户,以及mysql的目录1.groupadd mysql #建立一个mysql的组2.useradd -r - ...

  3. (K)ubuntu上将分区格式化成NTFS格式

    新买了硬盘,装系统时,为Windows预留了几个分区,由于没有其他选择,因此将分区格式化成了fat32格式.装完系统后,总是很纠结,想把这些分区格式化成NTFS格式. google了一下,从这个网址( ...

  4. update-alternatives命令详解

    转载:http://blog.csdn.net/maixia24/article/details/11707289 update-alternatives是ubuntu系统中专门维护系统命令链接符的工 ...

  5. 获取地址栏的URL: PHP JS

    1. PHP 获取上一页的URL 在php中可以通过内置的变量的属性来获取上一页的URL: $_SERVER['HTTP_REFERER']. 但是在IE中如果跳转是通过js函数如: window.l ...

  6. Ubuntu 安装配置 nginx

    作者:任明旭链接:https://www.zhihu.com/question/46241604/answer/100788789来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

  7. Java 设计模式系列(二十)状态模式

    Java 设计模式系列(二十)状态模式 状态模式,又称状态对象模式(Pattern of Objects for States),状态模式是对象的行为模式.状态模式允许一个对象在其内部状态改变的时候改 ...

  8. openssl详解

    openssl详解 摘自:https://blog.csdn.net/liguangxianbin/article/details/79665100 目录 目录 第一章 前言 第二章 证书 第三章 加 ...

  9. 关于anroid设置webview背景方法探讨(转)

    最近的项目中一直关于webView设置背景色问题在研究,最终找到了解决的方法. 基于我项目的需求,从服务端传过来的是带有标签的文本,如果使用textView会让整个布局显得很乱,里面的<img ...

  10. java通过经纬度计算两个点的之间的距离的算法

    通过两个点的经纬度计算距离 从google maps的脚本里扒了段代码,没准啥时会用上.大家一块看看是怎么算的. private const double EARTH_RADIUS = 6378.13 ...