一、安装Nginx

  • 关闭selinux和firewalld
setenforce
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
systemctl disable firewalld
  • 时间同步
yum -y install ntpdate
ntpdate ntp1.aliyun.com
  • 安装nginx
yum -y install pcre pcre-devel openssl openssl-devel gcc
useradd nginx -s /sbin/nologin -M
wget http://nginx.org/download/nginx-1.13.11.tar.gz
tar xf nginx-1.13..tar.gz
cd nginx-1.13.
./configure --user=nginx --group=nginx --prefix=/opt/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
cd /opt/nginx/sbin/
ln -s /opt/nginx/sbin/* /usr/local/sbin/
  • 修改配置文件
cd /opt/nginx/conf/
mv nginx.conf nginx.conf_bak
cat <<EOF > /opt/nginx/conf/nginx.conf user virtual;
worker_processes ; events {
worker_connections ;
} http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main;
sendfile on;
tcp_nopush on;
keepalive_timeout ;
autoindex on;
gzip on; server {
listen ;
server_name websftp.liveyu.com;
charset utf-;
access_log logs/host.access.log main;
location / {
root /data/ftproot;
index index.html index.php index.htm;
} error_page /50x.html;
location = /50x.html {
root html;
}
}
}
EOF
  • 启动nginx
nginx -t
nginx

二、安装vsftpd

  • 安装vsftpd
yum -y install vsftpd
mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf_bak
grep -v "#" /etc/vsftpd/vsftpd.conf_bak > /etc/vsftpd/vsftpd.conf
  • 安装ftp客户端
yum -y install ftp
  • 创建用于进行FTP认证的用户数据库文件,其中奇数行为账户名,偶数行为密码
cd /etc/vsftpd/
# 创建用于进行FTP认证的用户数据库文件,其中奇数行为账户名,偶数行为密码
cat <<EOF > vuser.list
admin EOF
  • 使用db_load命令用哈希(hash)算法将原始的明文信息文件转换成数据库文件
# 使用db_load命令用哈希(hash)算法将原始的明文信息文件转换成数据库文件
db_load -T -t hash -f vuser.list vuser.db
file vuser.db
chmod vuser.db
rm -f vuser.list
  • 创建ftp虚拟用户
useradd -d /var/ftproot -s /sbin/nologin virtual
ls -ld /var/ftproot/
chmod -Rf /var/ftproot/ yum -y install pam* db4* vim /etc/pam.d/vsftpd.vu
auth required pam_userdb.so db=/etc/vsftpd/vuser
account required pam_userdb.so db=/etc/vsftpd/vuser mkdir /etc/vsftpd/vusers_dir/
cd /etc/vsftpd/vusers_dir/
touch admin
vim admin # 有上传/下载/修改权限 anon_world_readable_only=NO # 匿名用户可以浏览FTP目录和下载文件
write_enable=YES # 设置可写权限
anon_upload_enable=YES # 是否允许匿名用户上传文件
anon_mkdir_write_enable=YES # 是否允许匿名用户创建目录
anon_other_write_enable=YES # 是否开放匿名用户的其他写入权限(包括重命名、删除等操作权限)
local_root=/data/ftproot/ # 本地用户的FTP根目录 cat /etc/vsftpd/vsftpd.conf anonymous_enable=NO # 是否允许匿名用户访问
local_enable=YES # 是否允许本地用户登陆FTP
guest_enable=YES # 开启虚拟用户模式
guest_username=virtual # 指定虚拟用户账户
allow_writeable_chroot=YES # 允许对禁锢的FTP根目录执行写入操作,而且不拒绝用户的登录请求
write_enable=YES # 设置可写权限
local_umask= # 匿名用户上传文件的umask值
dirmessage_enable=YES #
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO # 是否以独立运行的方式监听服务
listen_ipv6=YES
pam_service_name=vsftpd.vu # 指定PAM文件
userlist_enable=YES # 开启用户作用名单文件功能
tcp_wrappers=YES
user_config_dir=/etc/vsftpd/vusers_dir systemctl restart vsftpd
systemctl enable vsftpd

Nginx+vsftpd的更多相关文章

  1. Nginx+vsftpd搭建图片服务器

    安装Nginx 参考:http://www.cnblogs.com/idefav2010/p/nginx-concat.html Nginx配置文件 location ~ .*\.(gif|jpg|j ...

  2. Linux搭建图片服务器减轻传统服务器的压力(nginx+vsftpd)

    传统项目中的图片管理 传统项目中,可以在web项目中添加一个文件夹,来存放上传的图片.例如在工程的根目录WebRoot下创建一个images文件夹.把图片存放在此文件夹中就可以直接使用在工程中引用. ...

  3. 安装阿里云的php+mysql+nginx+vsftpd

    百度云search   sh-1.3.0-centos.zip

  4. Ubuntu Desktop开发生产环境搭建

    Ubuntu Desktop开发生产环境搭建 1   开发生产环境搭建 在本节内容开始前,先定义一下使用场合,没有哪种系统或者设备是万能的,都有它的优点和缺点,能够在具体的使用场景,根据自身的需求来取 ...

  5. DUMP 5 企业级电商项目

    [订单模块] 创建订单 商品信息  订单列表  订单详情 取消订单 订单列表  订单搜素  订单详情  订单发货 [创建订单]  购物车勾选商品 涉及 Cart Product  => 一个商品 ...

  6. DUMP3 企业级电商项目

    [开发模式]controller - service(合法校验问题) - dao   反过来也没问题 用户模块 登录 注册 用户名验证(实时反馈前端) 忘记密码 重置密码 退出登录 更新用户信息 获取 ...

  7. DUMP4 企业级电商项目 —— 对接支付宝扫码支付

    延展 <谈谈微信支付曝出的漏洞> [联调 DEMO下载地址]https://docs.open.alipay.com/194/105201/ [内置 一份 说明文档可做参考] [impor ...

  8. DUMP1 企业级电商项目

    系统:centos6 配置mirror阿里云 https://opsx.alibaba.com/mirror 远程管理首选:ssh 账户密码登录(ssh user@host) 或者 本地私钥连接服务器 ...

  9. 使用vsftpd+nginx搭建一个文件服务器

    一:安装vsftpd 1.安装 [root@localhost jack]# yum -y install vsftpd 安装完后,有/etc/vsftpd/vsftpd.conf 文件,是vsftp ...

随机推荐

  1. WinForm TreeView单击,但是获取的是上一次点击选中的节点

    /// <summary> /// MouseDown是鼠标按下事件发生在你鼠标单击事件之前,你单击鼠标发生了两个动作,一是鼠标按下二是鼠标抬起.执行之后,就会把SelectedNode转 ...

  2. WPF 在一个dll创建一个Window(包含xaml),在另一个dll中再次继承 会出错

    https://social.msdn.microsoft.com/Forums/vstudio/en-US/e92390eb-bbfa-42fb-baa9-2286444c0dca/the-comp ...

  3. Centos重启关机命令

    Linux centos重启命令: 1.reboot   普通重启 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户 ...

  4. 微信小程序把玩(一)Hello WeApp

    原文:微信小程序把玩(一)Hello WeApp 本篇默认已经成功安装微信小程序工具 新建项目 AppID查看公众开发平台设置查看(https://mp.weixin.qq.com) 项目名称随意填写 ...

  5. ArchLinux 安装记录

    主要步骤 下载镜像及刻录 开机安装 联网 编辑镜像站文件 分区 格式化分区并挂载 安装基本操作系统 配置基础操作系统 引导系统 用户管理 网络配置 安装Gonme桌面环境 其他优化 开始准备 下载镜像 ...

  6. Android多线程(二)

    在上一篇中,我简单说了用AsyncTask来完成简单异步任务,但AsyncTask是把所有的异步任务放到一个队列中依次在同一个线程中执行.这样就带来一个问题,它无法处理那些耗时长.需要并行的的任务.如 ...

  7. SQL Server中 SET 和 SELECT 赋值有什么区别?

    SQL Server 中对已经定义的变量赋值的方式用两种,分别是 SET 和 SELECT.对于这两种方式的区别,SQL Server 联机丛书中已经有详细的说明,但很多时候我们并没有注意,其实这两种 ...

  8. python中时间相关问题,仅作为笔记

    1.获取当前时间的两种方法: import datetime,timenow = time.strftime("%Y-%m-%d %H:%M:%S")print nownow = ...

  9. 使用.NET进行高效率互联网敏捷开发的思考和探索【一、概述】

    不知从什么时候开始,创业变得很廉价,谈什么都是互联网,动辄融资千万.这阵风好像也刮向了程序员中,有那么一大批开发者,数据结构不好好学习.数据库原理不扎实掌握,在github上发布几个项目,用nodej ...

  10. GetSystemTimeAsFileTime讲解(从1601年1月1日到目前经过的纳秒)

    void WINAPI GetSystemTimeAsFileTime( Out LPFILETIME lpSystemTimeAsFileTime ); 这个函数获取到的是从1601年1月1日到目前 ...