Linux下ftp的安装配置
1.查看ftp包是否可用
yum list | grep vsftpd
2.安装ftp
yum install vsftpd
3.启动
systemctl start vsftpd
4.开机启动
chkconfig vsftpd on
5.增加ftp用户
useradd -d /home/qq000 -g ftp -s /sbin/nologin qq000
6.设置用户密码
passwd qq000
4.配置ftp
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES,允许匿名用户登录。
no_anon_password=YES,匿名用户登录时不需要输入密码。
local_enable=YES,允许本地用户登录。
write_enable=YES,是否允许上传。
local_umask=022,默认umask码。
chroot_local_user #是否将所有用户限制在主目录,YES为启用 NO禁用.(该项默认值是NO,即在安装vsftpd后不做配置的话,ftp用户是可以向上切换到要目录之外的)
chroot_list_enable=YES ,是否启用限制用户名单
chroot_list_file=/etc/vsftpd/chroot_list # 根据chroot_local_user的变化而变化,无论chroot_local_user设置为什么意思,chroot_list_file里的名单则为它的例外)
local_root=/home/ftp 这行可单独加上 指定所有用户统一登陆目录
ftpd_banner=Welcometo blah FTP service,可以自定义FTP用户登录到服务器所看到的欢迎信息。
xferlog_enable=YES,启用记录上传/下载活动日志功能。
xferlog_file=/var/log/vsftpd.log,可以自定义日志文件的保存路径和文件名,默认是/var/log/vsftpd.log。
userlist_enable=YES此项配置/etc/vsftpd/user_list中指定的用户也不能访问服务器,若添加userlist_deny=NO,则仅仅/etc/vsftpd.user_list文件中的用户可以访问,其他用户都不可以访问服务器。如果userlist_enable=NO,userlist_deny=YES,则指定使文件/etc/vsftpd/user_list中指定的用户不可以访问服务器,其他本地用户可以访问服务器。
根据个人需求设置,我的设置如下:
anonymous_enable=YES 允许匿名用户登录 不打开注释则不允许
chroot_local_user=YES 限制所有用户只能在家目录活动
allow_writeable_chroot=YES
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list 只允许/etc/vsftpd/user_list文件中指定的用户可以登录
另外:用户的家目录必须设置权限 否则一样无法登录
7.将ftp用户qq000添加到/etc/vsftpd/user_list中
8.关闭SELinux
临时关闭(不用重启机器):setenforce 0
永久关闭需重启:修改/etc/selinux/config 文件 将SELINUX=enforcing改为SELINUX=disabled
9.还要搞一个东西:防火墙。(请注意 要么firewall 要么iptables 要么阿里云的安全组)
centos7默认防火墙是firewall,会阻止ftp的连接,这里我们要把它停掉。
关闭:systemctl stop firewalld
禁止开机启动:systemctl disable firewalld
再查看iptables有没有 一般系统是自带安装好的 如果没有请额外安装。
Linux下ftp的安装配置的更多相关文章
- linux 下ftp的安装配置 图文教程
0.安装ftp的前置条件是关掉SElinux # vi /etc/selinux/config 修改 SELINUX=” disabled ” ,重启服务器.若相同,则跳过此步骤. 1. 可先查看是否 ...
- Linux 下编译并安装配置 Qt 4.53全过程
最近准备做 Nokia 的 Symbian,Maemo 下触摸屏开发.考虑到程序的跨平台可移植性,最终选择使用 Qt 开发.相对来说,国内关于 Qt 相关文档并不算很多.作者将 Linux 下编译并安 ...
- Linux下Kafka单机安装配置方法(图文)
Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了普通消息系统的功能,但具有自己独特的设计.这个独特的设计是什么样的呢 介绍 Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了 ...
- Linux下Kafka单机安装配置方法
Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了普通消息系统的功能,但具有自己独特的设计.这个独特的设计是什么样的呢? 首先让我们看几个基本的消息系统术语: •Kafka将消息以topi ...
- Linux下DHCP服务安装配置
简介 安装配置 一.简介 DHCP (Dynamic Host Configuration Protocol,动态主机管理协议)是一种基于UDP协议且仅限用于局域网的网络协议,主要用途是为局域网内部设 ...
- Linux下的Mysql安装 & 配置
Hive的数据,是存在HDFS里的.此外,hive有哪些数据库,每个数据库有哪些表,这样的信息称之为hive的元数据信息. 元数据信息不存在HDFS里.而是存在关系型数据库里,hive默认用的是der ...
- (0.2)linux下Mysql的安装配置与管理入门(目录篇)
本章学习内容: 1.基于Linux平台的Mysql项目场景介绍 1.1.互联网各类网站.购物网站.门户网站.博客系统.IDC,云平台,VPS,虚拟主机空间,论坛,嵌入式. 2.mysql数据库运行环境 ...
- Linux下FTP的安装和登陆
对于一个经常接触电脑的人来说,FTP无形中出现在我们生活的各个角落.日常生活中的文件上传和下载很多时候就是依靠FTP去实现的. 专业的说,FTP 是File Transfer Protocol(文件传 ...
- Linux下的MongoDB安装配置以及基本用法示例
一 MongoDB的安装配置 (1)下载并安装: MongoDB安装包下载地址:https://www.mongodb.com/download-center [root@localhost src] ...
随机推荐
- UML中关联(Association)和依赖(Dependency)的区别
原文转自:http://blog.csdn.net/metasearch/article/details/2334853 在UMLCHINA精华区,看到了一些关联和依赖的讨论,似乎越讲越糊涂.我想谈一 ...
- (转载)JAVA中八种基本数据类型的默认值
原文链接: http://simon-c.iteye.com/blog/1016031 引用 For type byte, the default value is zero, that is, th ...
- BottomupSort算法 c++代码实现
#include <iostream> using namespace std; #define N 100 int A[N]; static int n; void Initial() ...
- 英文版windows7中文软件显示乱码的解决办法
一.打开控制面板,修改语言的归属地为China 修改完成之后重启,一般能解决大部分问题,如果依然有部分显示乱码,就需要去修改注册表
- <object>元素+svg 绘制图片
结果图: 将以下代码保存至sample.svg文件中: <!-- SVG图形一开始生命命名空间 --> <svg xmlns="http://www.w3.org/2000 ...
- Maven服务器搭建
Nexus服务器软件安装和配置 目前比较流行的使用nexus搭建maven私有服务器,其实很简单,它就是一个web系统,从官方下载的包默认内嵌了jetty容器,所以需要提前安装好JVM,并配置好环境变 ...
- Spark 2.2.0 文档中文版 Quick Start
原地址:http://spark.apache.org/docs/latest/quick-start.html 这篇指导对使用Spark提供了一个快速的介绍.我们首先介绍API,通过spark交互式 ...
- Oracle PIVOT 行转列方法
数据库中業種的存储如下图: SELECT * FROM M_TORIHIKISAKI_GYOSYU 其中GYIUSYU_CD字段代表不同的業種 而画面需要实现下图所示样式:(将每条数据的業種横向展开显 ...
- shell脚本中字符串的常见操作及"command not found"报错处理(附源码)
简介 昨天在通过shell脚本实现一个功能的时候,由于对shell处理字符串的方法有些不熟悉导致花了不少时间也犯了很多错误,因此将昨日的一些错误记录下来,避免以后再犯. 字符串的定义与赋值 # 定义S ...
- ES6中的箭头函数
关于函数表达式中的this:自动引用正在调用当前方法的.前的对象1.obj.fun()中的this fun中的this -> obj2.new Fun() Fun中的this -> 正在创 ...