Linux配置 ftp 和 ftp简单介绍
一、ftp概念?
- /*
- ftp是一个协议和http协议都是叫协议
- tcp和udp也是协议
- ftp是文件(以流的形式进行传输)传输协议(针对于文件进行上传和下载)
- */
- 1.如果ftp服务器有多台,服务器端无法识别问题:
- 1.1.在user表中添加字段(ftp_server)-->根据用户上传的ftp的编号进行update该字段
- 1.2.在user表中有一个字段(head_pic)-->存入的图片所在ftp服务器的路径-->查询到该路径使用subString进行截取服务器的IP地址
- 2.文件名的重复:
- 使用用户的id+当前时间的毫秒数+任意的随机数
- 3.文件存放不规律不方便后期的查询和维护:
- 可以根据当前日期进行分文件夹
- 2019/08/31--->2019年8月31号所存的图片/文件
- --->pic
- --->file
- --->编写过滤器(过滤所有的图片的后缀)-->返回如果为true--->存入file-->否则存入pic
二、 ftp配置?
- 1.
- ftp的配置:(nginx一起使用,保证项目的安全性)
- 要求:
- 所有的ftp服务器都不能叫ftp
- linux的用户名不能叫ftp,就会和ftp的安装冲突,导致ftp无法启动
- 在新的linux配置中,HOSTNAME也不能叫ftp
- 1.1检测linux上是否已经安装了ftp
- 命令:
- /* rpm -qa | grep vsftpd
- rpm -qa | grep vsftpd
- rpm -qa|grep vsftpd
- rpm -qa|grep vsftpd
- rpm -qa | grep vsftpd
- rpm -qa | grep vsftpd
- rpm -qa | grep vsftpd
- */
- 在linux服务器上ftp叫vsftpd
- 如果什么都没有显示,则说明linux上没有安装过ftp
- 1.2安装ftp
- /*
- yum -y install vsftpd
- yum -y install vsftpd
- yum -y install vsftpd
- yum -y install vsftpd
- yum -y install vsftpd
- yum -y install vsftpd
- yum -y install vsftpd
- */
- 看到以下信息说明安装成功:
- Running Transaction
- Installing : vsftpd-2.2.2-24.el6.x86_64 1/1
- Verifying : vsftpd-2.2.2-24.el6.x86_64 1/1
- Installed:
- vsftpd.x86_64 0:2.2.2-24.el6
- Complete!
- 1.3.启动ftp(和防火墙一样)
- /*
- service vsftpd start 启动
- service vsftpd stop 停止
- service vsftpd restart 重启
- */
- 看到以下信息说明启动成功:
- Starting vsftpd for vsftpd: [ OK ]
- 1.4.设置ftp的开机启动
- /* chkconfig vsftpd on
- chkconfig vsftpd on
- chkconfig vsftpd on
- chkconfig vsftpd on
- chkconfig vsftpd on
- chkconfig vsftpd on
- chkconfig vsftpd on
- chkconfig vsttpd on
- */
- 1.5.配置ftp
- // linux会将ftp默认安装在 /etc目录
- 在vsftpd的conf目录进行配置
- 命令:
- /* vi /etc/vsftpd/vsftpd.conf
- vi /etc/vsftpd/vsftpd.conf
- vim /etc/vsftpd/vsftpd.conf
- vim /etc/vsftpd/vsftpd.conf
- vim /etc/vsftpd/vsftpd.conf
- vim /etc/vsftpd/vsftpd.conf
- vim /etc/vsftpd/vsftpd.conf
- vim /etc/vsftpd/vsftpd.conf
- */
- # 禁止匿名用户anonymous登录
- anonymous_enable=NO
- # 允许本地用户登录
- local_enable=YES
- # 让登录的用户有写权限(上传,删除)
- write_enable=YES
- # 默认umask
- local_umask=022
- # 把传输记录的日志保存到/var/log/vsftpd.log 三个不同的地方
- xferlog_enable=YES
- xferlog_file=/var/log/vsftpd.log
- xferlog_std_format=NO
- # 允许ASCII模式上传
- ascii_upload_enable=YES
- # 允许ASCII模式下载
- ascii_download_enable=YES
- # 使用20号端口传输数据
- connect_from_port_20=YES
- # 欢迎标语
- ftpd_banner=Welcome to use my test ftp server.
- /* # 接下来的三条配置很重要
- # chroot_local_user设置了YES,那么所有的用户默认将被chroot,
- # 也就用户目录被限制在了自己的home下,无法向上改变目录。
- # chroot_list_enable设置了YES,即让chroot用户列表有效。
- # ★超重要:如果chroot_local_user设置了YES,那么chroot_list_file
- # 设置的文件里,是不被chroot的用户(可以向上改变目录)
- # ★超重要:如果chroot_local_user设置了NO,那么chroot_list_file
- # 设置的文件里,是被chroot的用户(无法向上改变目录)*/
- chroot_local_user=NO (!!!!!有坑,当使用Java去连接ftp并上传的时候,如果为YES,不会自动创建文件的目录信息)
- chroot_list_enable=YES
- # touch /etc/vsftpd/chroot_list 新建(需要手动创建) //在vsftpd 目录下创建 touch chroot_list
- chroot_list_file=/etc/vsftpd/chroot_list
- # 以standalone模式在ipv4上运行
- listen=YES
- # PAM认证服务名,这里默认是vsftpd,在安装vsftpd的时候已经创建了这个pam文件,
- # 在/etc/pam.d/vsftpd,根据这个pam文件里的设置,/etc/vsftpd/ftpusers
- # 文件里的用户将禁止登录ftp服务器,比如root这样敏感的用户,所以你要禁止别的用户
- # 登录的时候,也可以把该用户追加到/etc/vsftpd/ftpusers里。
- pam_service_name=vsftpd
- 6.重启ftp
- /*
- service vsftpd restart
- service vsftpd restart
- service vsftpd restart
- service vsftpd restart
- service vsftpd restart
- service vsftpd restart
- service vsftpd restart
- service vsftpd restart
- service vsftpd restart
- */ 看到以下信息说明重启成功:
- Shutting down vsftpd: [ OK ]
- Starting vsftpd for vsftpd: [ OK ]
- 7.执行以下5个命令,让刚才配置生效 需要等待一段时间。。。
- 这5个命令比较慢需要等待
- /* getsebool -a | grep ftpd
- setsebool -P ftp_home_dir 1
- setsebool -P allow_ftpd_full_access 1
- setsebool -P allow_ftpd_use_cifs 1
- setsebool -P allow_ftpd_use_nfs 1
- */
- 8.创建ftp用户 在根目录下创建。
- useradd ftp的用户名(ftpuser) -s /sbin/nologin -d /home/ftp(手动编写,home目录下并没有ftp文件夹)
- 命令:
- /*
- useradd ftpuser -s /sbin/nologin -d /home/ftp
- useradd ftpuser -s /sbin/nologin -d /home/ftp
- useradd ftpuser -s /sbin/nologin -d /home/ftp
- useradd ftpuser -s /sbin/nologin -d /home/ftp
- useradd ftpuser -s /sbin/nologin -d /home/ftp
- useradd ftpuser -s /sbin/nologin -d /home/ftp
- */
- /home/ftp-->将来用户上传文件的时候所到根目录
- 9.为ftp用户设置密码
- passwd ftp的用户名(ftpuser) 回车
- /*
- useradd ftpuser
- useradd ftpuser
- useradd ftpuser
- useradd ftpuser
- useradd ftpuser
- useradd ftpuser
- */我在根目录下 建立的。
- 看到以下信息说明设置密码成功:
- Changing password for user ftpuser.
- New password:
- BAD PASSWORD: it is too simplistic/systematic
- BAD PASSWORD: is too simple
- Retype new password:
- passwd: all authentication tokens updated successfully.
- 10.filezilla连接ftp
- 所有的ftp目录下必须要使用ftpuser这个用户创建文件夹和文件,不能再使用root,可能造成无法识别(root用户没有权限)
- 配置nginx:
- 1.使用xftp把nginx上传到linux服务器上
- 2.解压nginx
- tar -zxvf xxxx
- 3.创建快捷方式
- 进入nginx目录中进行创建
- 首先安装nginx所必须的配置包
- /*
- yum -y install gcc pcre-devel openssl openssl-devel
- yum -y install gcc pcre-devel openssl openssl-devel
- yum -y install gcc pcre-devel openssl openssl-devel
- yun -y install gcd pcre-devel openssl openssl-devel
- */
- 创建快捷方式
- /*
- ./configure --prefix=/usr/local/nginx-1.17.3
- ./configure --prefix=/usr/local/nginx-1.17.3
- ./configure --prefix=/usr/local/nginx-1.17.3
- ./configuer --prefix=/usr/local/nginx-1.17.3
- ./configuer --prefix=/usr/local/nginx-1.17.3
- ./configuer --perfix=/usr/local/nginx-1.17.3
- ./
- */
- 4.编译nginx
- /*
- make && make install
- make && make install
- make && make install
- make && make install
- make && make install
- make && make install
- make && make install
- */
- 5.修改nginx的配置
- /usr/local/nginx-1.17.3/conf目录修改
- vim nginx.conf
- 把一行的user注解打开
- user nobody;--->user root
- 不要删除location /标签中的任何东西
- location / {
- root(访问的根目录) /home/ftp/www;
- }
- 6.启动nginx 在 sbin/目录下。
- ./nginx
Linux配置 ftp 和 ftp简单介绍的更多相关文章
- Linux配置zookeeper 和zookeeper简单介绍
一.zookeeper介绍? 一.zookeeper 简单介绍? 1.什么是集群? // 很多台服务器保持连接通讯状态,并且所有的服务器做同一件事就称之为集群 2.什么是zookeeper? 注册中心 ...
- 一个性能较好的jvm參数配置以及jvm的简单介绍
一个性能较好的webserverjvm參数配置: -server //服务器模式 -Xmx2g //JVM最大同意分配的堆内存,按需分配 -Xms2g //JVM初始分配的堆内存.一般和Xmx配置成一 ...
- Linux内核剖析 之 进程简单介绍
1.概念 1.1 什么是进程? 进程是程序运行的一个实例.能够看作充分描写叙述程序已经运行到何种程度的数据结构的汇集. 从内核观点看.进程的目的就是担当分配系统资源(CPU时间,内存 ...
- Linux GDB程序调试工具使用简单介绍
GDB概述 GDB是GNU开源组织公布的一个强大的UNIX下的程序调试工具.也许,各位比較喜欢那种图形界面方式的,像VC.BCB等IDE的调试,但假设你是在UNIX平台下做软件,你会发现GDB这个调试 ...
- linux系统的 suid/guid简单介绍 linux suid guid
我们在前面曾经提到过s u i d和g u i d.这种权限位近年来成为一个棘手的问题.很多系统供应商不允许实现这一位,或者即使它被置位,也完全忽略它的存在,因为它会带来安全性风险.那么人们为何如此大 ...
- 嵌入式 Linux下curl库API简单介绍
1:CURLcode curl_global_init(long flags); 这个函数全局需要调用一次(多次调用也可以,不过没有必要), 所以这也是把Curlplus设计成单体类的原因,curl_ ...
- 第二十一篇 Linux中的环境变量简单介绍
环境变量之 PATH 定义解释器搜索用户执行命令的路径 获取PATH变量的值: echo $PATH /usr/local/bin:/usr/local/sbin:/usr/bin:/us ...
- linux简单介绍,helloworld,vi使用,用户管理
linux特点1.免费的.开源的2.支持多线程.多用户的3.安全性好4.对内存和文件管理优越 缺点:操作相对困难 linux最小只需要4m -> 嵌入式开发 我们使用 vm[虚拟机] 虚拟了一个 ...
- Linux 下UVC&V4L2技术简单介绍(二)
通过前文Linux 下UVC&V4L2技术简单介绍(一)我们了解了UVC和V4L2的简单知识. 这里是USB设备的文档描写叙述:http://www.usb.org/developers/do ...
- 【Hadoop离线基础总结】impala简单介绍及安装部署
目录 impala的简单介绍 概述 优点 缺点 impala和Hive的关系 impala如何和CDH一起工作 impala的架构及查询计划 impala/hive/spark 对比 impala的安 ...
随机推荐
- 【LeetCode】216. Combination Sum III 解题报告(Python & C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述: 题目大意 解题方法 方法一:DFS 方法二:回溯法 日期 题目地址:h ...
- Beautiful Walls
[1553] Beautiful Walls 时间限制: 1000 ms 内存限制: 65535 K 问题描述 To simplify the building process, XadillaX b ...
- Java工程编码格式由GBK转化成utf-8(编码格式互转)
在写项目的过程中我发现有的地方编码格式被设置成了 gbk 如果用eclipse等工具直接改回utf-8编码格式则会出现乱码. 下载:https://download.csdn.net/download ...
- MySQL数据操作与查询笔记 • 【第4章 SELECT 数据查询】
全部章节 >>>> 本章目录 4.1 select 选择列表 4.1.1 select 基本结构 4.1.2 选择列表 4.2 MySQL 运算符 4.2.1 MySQL ...
- Zabbix 代码执行漏洞复现 /zabbix-cve_2017_2824
环境: 利用docker将vulfocus环境pull到本地搭建 漏洞描述: Zabbix 是由Alexei Vladishev 开发的一种网络监视.管理系统,基于 Server-Client 架构. ...
- Swoole 中使用 PDO 连接池、Redis 连接池、Mysqli 连接池
连接池使用说明 所有连接池的实现均基于 ConnectionPool 原始连接池: 连接池的底层原理是基于 Channel 的自动调度: 开发者需要自己保证归还的连接是可重用的: 若连接不可重用,需要 ...
- Linux命令查看各端口号占用情况
yum -y install net-tools netstat -ntpl
- redis 加锁与解锁的详细总结,解决线程并发导致脏数据
1.前言 对每个controller来说都是全新且单独的,原因是多线程,如果多个请求操作共有的数据,这样的并发操作会导致脏数据 怎么解决? mysql可以使用积极锁解决, 这里讲解的是redis的解决 ...
- Word2010制作自动目录
原文链接:https://www.toutiao.com/i6488296610873737741/ 原文从网上复制: 查看"开始"选项卡,"样式"功能组,我们 ...
- 论文翻译:2021_AEC IN A NETSHELL: ON TARGET AND TOPOLOGY CHOICES FOR FCRN ACOUSTIC ECHO CANCELLATION
论文地址:https://ieeexploreieee.53yu.com/abstract/document/9414715 Netshell 中的 AEC:关于 FCRN 声学回声消除的目标和拓扑选 ...