vsftpd

一、Centos6.x配置ftp

1.1、安装OpenSSH-server

OpenSSH-server包含了FTP服务,通常,CentOS6.x默认已经安装了OpenSSH-server

(1)查看是否安装:rpm -q openssh-server

(2)安装openssh-server:yum -y install openssh-server

1.2、创建用户和目录

(1)创建用户:useradd -m ftpuser(默认/home/ftpuser即为该用户的家目录)

自定义家目录

① 创建自定义目录:mkdir -p /opt/custom_home/ftpuser

② 设置目录属主权限:chown ftpuser:ftpuser /opt/custom_home/ftpuser

③ 设置目录访问权限:chmod 750 /opt/custom_home/ftpuser

④ 创建用户并指定家目录:useradd -d /opt/custome_home/ftpuser ftpuser

⑤ 设置密码:passwd ftpuser

⑥ (可选)配置默认shell:usermod -s /bin/bash ftpuser

(2)设置密码:passwd ftpuser

1.3、设置SFTP访问目录

(1)配置/etc/ssh/sshd_config,文件末尾添加以下内容,/path/to/chroot/directory为实际的目录路径

Match User ftpuser
ChrootDirectory /path/to/chroot/directory
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no

(2)确保该目录存在且权限合理

sudo mkdir -p /path/to/chroot/directory
sudo chown root:root /path/to/chroot/directory
sudo chmod 755 /path/to/chroot/directory
# 如果需要用户有写权限,进一步调整目录权限
sudo chown ftpuser:ftpuser /path/to/chroot/directory
sudo chmod 750 /path/to/chroot/directory

1.4、重启SSH服务

(1)重启ssh服务:service sshd restart

二、Centos6.x创建ftp用户

2.1、开启FTP服务

启动vsftpd服务,并设置开机启动:service vsftpd start && chkconfig vsftpd on

2.2、防火墙

需要开放 FTP 相关端口(默认为 21,以及用于被动模式的数据传输端口范围,如 1024-1048):

sudo iptables -I INPUT -p tcp --dport 21 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 1024:1048 -j ACCEPT
sudo service iptables save
sudo service iptables restart

三、Centos7.x

3.1、vsftpd的安装和配置

(1)安装vsftpd:yum -y install vsftpd

(2)编辑vsftpd配置文件:/etc/vsftpd/vsftpd.conf

# 禁用匿名访问
anonymous_enable=NO
# 允许本地用户登录
local_enable=YES
# 允许写入权限(如果需要上传文件)
write_enable=YES
# 限制用户在其家目录中,增强安全性
chroot_local_user=YES

3.2、ftp用户和目录的配置

(1)创建FTP用户:useradd -m -s /sbin/nologin ftpuser-s /sbin/nologin 禁止用户通过ssh登录)

(2)设置FTP用户的密码:passwd ftpuser

(3)设置目录权限

sudo chown root:ftpuser /home/ftpuser
sudo chmod 750 /home/ftpuser
# 如果有公共上传下载目录,可适当调整权限
sudo chmod -R 770 /home/ftpuser/public

3.3、防火墙配置

(1)防火墙打开FTP服务的端口:firewall-cmd --permanent --add-service=ftp

(2)重新刷新防火墙配置:firewall-cmd --reload

3.4、启动并设置vsftpd服务

(1)启动vsftpd服务:systemctl start vsftpd

(2)设置开机启动:systemctl enable vsftpd

— 业精于勤荒于嬉,行成于思毁于随 —

Linux - 开启FTP服务的更多相关文章

  1. linux开启FTP服务

    目录 打开FTP服务 客户端链接时会出现的问题 打开FTP服务 先ping,查看网络是否联通 打开ssh服务 查看一些服务的状态 #查看ssh状态 service sshd status #防火墙的状 ...

  2. 如何在linux下开启FTP服务

    如何在linux下开启FTP服务 1. 首先服务器要安装ftp软件,查看是否已经安装ftp软件下:   #which vsftpd   如果看到有vsftpd的目录说明服务器已经安装了ftp软件 2. ...

  3. 局域网内Linux下开启ftp服务的“曲折路”和命令复习

    今天主要学习了Linux下网络配置以及vsftp(FTP)和samba的服务配置,学习起来,难度也就一般,并没有特别难,可是在可以做实验的时候,却并没有自己想像的那么顺利,可见,很多事情看起来不难,做 ...

  4. Linux SSH,FTP服务配置

    CentOS-6.4-x86_64-minimal 0.网卡配置 参考:Linux系统\Centos没有网卡eth0配置文件怎么办? - http://jingyan.baidu.com/articl ...

  5. ubuntu 开启 ftp 服务 | mingming-killer

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  6. AIX系统开启ftp服务

    http://blog.itpub.net/28227905/viewspace-1060183/ 当然,首先网络工程师给你放开策略,开通ftp端口之后,你才能做下一步. [@more@] AIX开启 ...

  7. 检测FTP服务并开启FTP服务

    1. 检测FTP服务是否开启 1.1. 通过查询提供FTP服务的进程是否存在,并未找到任何包含ftp关键字的进程信息,可判断服务未开启. root@lb- ~ # ps -ef | grep ftp ...

  8. 阿里云linux配置ftp服务

    阿里云linux配置ftp服务 一.ftp服务安装 运行以下命令安装ftp yum install -y vsftpd 运行以下命令打开及查看etc/vsftpd cd /etc/vsftpd ls ...

  9. liunx和aix 系统开启ftp服务

    AIX开启ftp服务: 1.ftp服务的守护进程是否存在 #lssrc -s inetd 2.ftp服务的开启与关闭 #startsrc -t ftp #stopsrc -t ftp 3.ftp服务是 ...

  10. Linux 安装FTP服务

    Linux 安装FTP服务,简单入门 环境: 虚拟机:Oracle VM VirtualBox. 系统:CentOS 7. (1)判断是否安装了ftp: rpm -qa | grep vsftpd 或 ...

随机推荐

  1. ECShop开源商城与COS互通:降低本地存储负载、提升访问体验

    ECShop简介 ECShop是一款开源电子商务平台,具有简单易用.安全稳定.模块化设计等特点.它提供了完整的电子商务解决方案,包括商品管理.订单管理.支付管理.配送管理.会员管理.促销管理.数据统计 ...

  2. Flutter 引用包命名冲突,重复引用

    Flutter 引用包命名冲突,重复引用 报错信息 lib/page.dart:92:11: Error: 'Response' is imported from both 'package:get/ ...

  3. Windows 10 下编译 64 位 OpenJDK 8 并单步调试

    Windows 10 下编译 64 位 OpenJDK 8 软件版本 操作系统:Windows 10 Cygwin:3.5.4-1 Visual Studio:2010 英文版 freetype: 2 ...

  4. 记一次语音合成遇到的坑:PCM音频流转WAV

    需求内容: 预合成音:支持将固定音合成并完成上传操作 解决思路: 调用公有云识别引擎,获取识别引擎合成的音频流, 然后将音频流转成wav文件, 最后将文件上传到oss服务器上. 遇到的问题 问题主要在 ...

  5. [转]关于opencv4.0中“未定义标识符cvNamedWindow”的解决方法

    这个问题困扰了很久,在网上找了很多方法,但是都没用, 比如:"在代码开头加入头文件#include <opencv2/highgui/highgui_c.h>"之类的方 ...

  6. C#中使用泛型对象(List<T>)对xml文件中的重复节点进行的序列化和反序列化

    本文描述将对象(List<T>)序列化到 XML 文档中和从 XML 文档中反序列化为对象(List<T>). 命名空间: System.Xml.Serialization 程 ...

  7. Windows7下关闭和打开IPV6隧道

    IPv6隧道是将IPv6报文封装在IPv4报文中,让IPv6数据包穿过IPv4网络进行通信.对于采用隧道技术的设备来说,在隧道的入口处,将IPv6的数据报封装进IPv4,IPv4报文的源地址和目的地址 ...

  8. 长连接网关技术专题(八):B站基于微服务的API网关从0到1的演进之路

    本文由B站微服务技术团队资深开发工程师周佳辉原创分享. 1.引言 如果你在 2015 年就使用 B 站,那么你一定不会忘记那一年 B 站工作日选择性崩溃,周末必然性崩溃的一段时间. 也是那一年 B 站 ...

  9. 20. C++快速入门--并发基础

    参考:<Professional c++>,<并发编程实战> 1 基本概念 1.1 竞争 原子性 "原子"(atomic)操作是指一种不可分割的操作, 即在 ...

  10. 使用Redis防止重复发送RabbitMQ消息

    问题 今天遇到一个问题,发送MQ消息的时候需要保证不会重复发送,注意不是可靠到达(可靠到达可以通过消息确认机制和回调接口保证),这里保证的是不会生产多条一样的消息. 方法 综合讨论下来决定使用Redi ...