ftp服务器搭建

1、新建用户ftpuser并指定主目录为/home/ftpuser

(注意:这个目录是后面存储和读取文件的目录)

<!--创建用户并指定主目录-->
useradd -d /home/ftpuser -m ftpuser
<!--修改密码为:Zxit@2018-->
passwd ftpuser
Zxit@2018
<!--查看-->
cat /etc/passwd

2、ftp安装

<!--查看是否安装ftp-->
rpm -qa |grep vsftpd
<!--没有则进行安装-->
yum install -y vsftpd

3、配置

注:1、ftp默认的安装目录为/etc/vsftpd/

        2、添加内容:蓝色部分表示修改,黄色部分表添加

<!--进入配置文件编辑模式-->
vim /etc/vsftpd/vsftpd.conf
<!--配置如下-->
# 允许匿名用户访问:公网,为了安全选择关闭
anonymous_enable=NO
# 被动模式:公网,为了安全开启被动模式
connect_from_port_20=NO pasv_enable=YES
pasv_min_port=24322
pasv_max_port=24325
pasv_address=**.**.**.243

# 让vsftpd同时支持IPv4和IPv6

listen_ipv6=YES
pam_service_name=vsftpd
# 只允许名单内用户登录userlist_enable=YES
# 限制用户的ip地址登录
tcp_wrappers=YES
#指定文件存储位置:即上面创建用户时指定的主目录local_root=/home/ftpuser
allow_writeable_chroot=YES
#修改端口:默认端口是21
listen_port=24321

4、启动ftp

<!--启动-->
systemctl start vsftpd.service
<!--查看状态-->
systemctl status vsftpd.service
<!--查看进程-->
ps -ef | grep ftp

nginx安装

1、用脚本自动安装nginx

<!--新建auto_install_nginx.sh-->

<!--写入以下内容-->

#!/bin/bash
##2019 03 12 15:45:55
###设置相关参数
NGINX_URL=http://nginx.org/download/nginx-1.14.2.tar.gz
#NGINX_YL=gcc openssl openssl-devel zlib zlib-devel gcc-c++ pcre pcre-devel libgcc
NGINX_HOME=/usr/local/nginx
###下载安装包###
wget $NGINX_URL
###安装相关依赖包###
yum install -y gcc openssl openssl-devel zlib zlib-devel gcc-c++ pcre pcre-devel libgcc
###解压并进入到相关目录###
tar -xzf nginx-1.14.2.tar.gz
cd nginx-1.14.2/
###预编译###
./configure --prefix=$NGINX_HOME --with-http_stub_status_module --with-http_ssl_module
###编译###
make
###安装###
make install
###启动###
$NGINX_HOME/sbin/nginx
###关闭防火墙###
service firewalld stop
###查看进程###
ps -ef | grep nginx
###查看端口
netstat -ntlp | grep 80 <!--执行并安装nginx-->
auto_install_nginx.sh

2、启动ftp的nginx

<!--进入nginx配置文件目录-->
cd /usr/local/nginx/conf/
<!--复制配置文件-->
cp nginx.conf nginx_ftp.conf <!--进入nginx配置文件目录-->
cd /usr/local/nginx/conf/
<!--复制配置文件-->
cp nginx.conf nginx_ftp.conf
<!--进入配置文件编辑模式-->
vim nginx_ftp.conf
<!--配置如下-->
server {
listen 24388;
server_name 127.0.0.1;
location / {
root /home/ftpuser;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
<!--启动-->
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx_ftp.conf
<!--查看进程-->
ps -ef | grep nginx

开放端口

将刚刚配置的端口24321-24325(ftp)、24388(nginx_ftp)开放出来。注意:如果有firewalld之类的防火墙,也要注意开放端口。为了方便,我这里直接将防火墙关闭了。

上传文件测试

1、找一台能连ftp服务器的电脑,连接ftp并上传文件

<!--连接ftp服务器-->
ftp
open **.**.**.243 24321
ftpuser
Zxit@2018
<!--上传文件-->
put C:\Users\admin\Downloads\gl_android.png

2、解决报错:

500 Illegal PORT command.
425 Use PORT or PASV first.

<!--是因为刚刚在ftp配置文件中,我配置的是被动模式,所以这里需要切换为被动模式-->
LITERAL PASV
<!--再次测试上传-->
put C:\Users\admin\Downloads\gl_android.png

3、查看文件是否上传成功

<!--进入主目录-->
cd /home/ftpuser/
<!--查看-->
ll

这里看到文件已经成功上传上来了。

访问文件测试

用nginx转发访问刚刚上传的文件,访问路径:ip+nginx_ftp端口+文件目录+文件名(注意:刚刚在nginx上配置的路径 下面的所有文件可以直接访问)

linux上搭建nginx+ftp,实现文件的上传与访问的更多相关文章

  1. 记crt 在windows与linux服务器之间利用ftp进行文件的上传下载

    我们首先来熟悉一些相关的命令以及操作: ls      #展示linux服务器当前工作目录[你连接sftp时所处的目录]下的所有文件以及文件夹 lcd  F:\niki      #绑定你在windo ...

  2. linux下搭建Nginx

    Linux上搭建nginx,及简单配置  在上家公司都是运维安装nginx,到新公司后代码开发完成部署测试服务器要求自己装nginx,研究了好久安装好之后,到正式上线还要自己安装,索性把安装步骤自己记 ...

  3. Linux中搭建一个ftp服务器详解

    来源:Linux社区  作者:luzhi1024 详解Linux中搭建一个ftp服务器. ftp工作是会启动两个通道:控制通道 , 数据通道在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种 ...

  4. 在Linux中搭建一个FTP服务器

    在Linux中搭建一个ftp服务器,以供两个工作小组保管文件使用.禁用匿名.第一个小组使用ftp账号:ftp1,工作目录在:/var/ftp/ftp1:第二个小组使用ftp2,工作目录在:/var/f ...

  5. 在CentOS 上搭建nginx来部署静态页面网站

    在centOs 上搭建nginx来部署静态页面网站 一.部署服务器环境 nginx:轻量级.高性能的HTTP及反向代理服务器,占用内存少,并发能力强,相比老牌的apache作为web服务器,性能更加卓 ...

  6. CentOs上搭建nginx

    目录 CentOs上搭建nginx 1. 在root环境下安装nginx 1.1 常用工具安装 1.2 关闭iptables规则 1.3 关闭SELinux 1.4 安装C/C++环境和PCRE库 1 ...

  7. 在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境

    阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器.我们在 ...

  8. 在阿里云上搭建nginx + ThinkPHP 的实践

    作为一个程序猿,理应用linux系统来作为平时的工作机环境,哎,之前倒是用过一段时间的linux,可惜后来换了本本,后来竟然没有保持,嗷嗷后悔中... 废话不多说,大家用windows的理由都一样,但 ...

  9. (转)在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境

    阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器.我们在 ...

随机推荐

  1. 封装class类--不分割类名

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. class path resource [applicationContext.xml] cannot be opened because it does not exis

    使用maven创建web工程,将spring配置文件applicationContext.xml放在src/resource下,用eclipse编译时提示class path resource [ap ...

  3. Centos6.6安装apache2.4

    安装apr请参考:   http://www.cnblogs.com/yuzhaokai0523/p/4382974.html 1安装httpd-2.4.10.tar.gz wget http://w ...

  4. LNMP小项目搭建,Centos7.6环境搭建Linux+nginx+mysql+php,wordpress个人博客的搭建(完整搭建步骤)

    一.LNMP搭建,基于nginx服务器搭建wordpress个人博客 准备环境:centos7.6环境下web服务器(nginx+php):主机名:web01,ip:192.168.248.172my ...

  5. Linux下用命令查看CPU ID以及厂家等信息

    Linux下用命令查看CPU ID // 获得CPU IDdmidecode -t 4 | grep ID |sort -u |awk -F': ' '{print $2}' // 获得磁盘IDfdi ...

  6. Linux下配置静态IP地址,设置DNS和主机名

    本人qq群也有许多的技术文档,希望可以为你提供一些帮助(非技术的勿加). QQ群:   281442983 (点击链接加入群:http://jq.qq.com/?_wv=1027&k=29Lo ...

  7. 'No application found. Either work inside a view function or push'

    问题: 说是create_all()的地方有问题,莫名其妙. 后来经过查资料,找出解决方法.附上代码如下:

  8. [CF1161C] Thanos Nim

    传送门 题意:\(2n\)堆石子,每堆\(a_i\)个,先手每次选中\(n\)堆石子,并从每堆中拿走任意个(可以不同).轮到某人时不足\(n\)堆则判负,问先手是否必胜.\(n\leq25,a_i\l ...

  9. ubuntu16.04 配置tomcat开机启动

    使用脚本方式设置开机启动 1.将tomcat目录下/bin中的catalina.sh拷贝到/etc/init.d下: cp /usr/local/java/apache-tomcat-/bin/cat ...

  10. ESP8266-12F

    读者可以把ESP8266当做Arduino+WiFi功能来开发 ESP8266模块支持STA/AP/STA+AP 三种工作模式: STA 模式:ESP8266模块通过路由器连接互联网,手机或电脑通过互 ...