标签:关闭 RKE gif gre 关于 anon 允许 star mit
上篇文章写了《快速登录vsftpd的expect脚本》本篇讲一下nginx 作为下载服务器,vsftpd作为上传服务器的结合。
yum -y install nginx vsftpd
Nginx 配置文件
几乎都是修改默认的配置
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /etc/nginx/nginx.pid;
include /usr/share/nginx/modules/*.conf;
events {
use epoll;
worker_connections 1024;
}
http {
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 /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 60;
types_hash_max_size 2048;
charset utf-8;
server_tokens off;
server_names_hash_bucket_size 128;
client_header_buffer_size 4;
client_header_timeout 60;
client_body_timeout 60;
large_client_header_buffers 16 512k;
client_max_body_size 5g;
gzip on;
gzip_min_length 1024;
gzip_buffers 16 32k;
gzip_proxied any;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript;
limit_conn_zone $binary_remote_addr zone=one:1024m;
#共使用2048M的内存来对于IP传输开销
include /etc/nginx/mime.types;
default_type application/octet-stream;
server {
listen 54xxx;
server_name 47.97.xx.xx;
location / {
root /etc/nginx/html/download;
if ($request_filename ~* ^.*?\.(sh||shell|py|perl|pl|go|mp3|mp4|jpg|jpeg|bmp|gif|dmg|tar|xls|rpm|pxt|doc|pdf|rar|gz|zip|docx|exe|xlsx|ppt|pptx)$){
#配置if实现下载而不是直接在浏览器打开
add_header Content-Disposition: ‘attachment‘;
}
autoindex on; #开启索引功能
autoindex_exact_size off; #关闭计算文件确切大小(单位bytes),只显示大概大小(单位kb、mb、gb)
autoindex_localtime on; #显示本机时间而非 GMT 时间
sendfile on;
tcp_nopush on;
expires 1h;
#allow 192.168.4.0/24; #允许4段的所有地址访问
#allow 192.168.5.0/24; #允许5段的所有地址访问
#deny all; #禁止全部
}
error_page 404 /404.html;
location = /404.html{
root html;
}
error_page 500 501 502 503 504 505 /50x.html;
location = /50x.html{
root html;
}
}
}
这里的根位置是:/etc/nginx/html/download, 将和vsftpd 的的local_root是一致的,这样才能保证这边上传,那边就有了
vsftpd:
[root@canal ~]# cat /etc/vsftpd/vsftpd.conf|grep -v ‘^#‘
anonymous_enable=NO
listen_port=54657
pasv_enable=YES
pasv_min_port=0
pasv_max_port=0
pasv_promiscuous=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
listen=YES
local_root=/etc/nginx/html/download
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
过滤后也就是这几行
创建vsftpd的用户
useradd -s /sbin/nologin -d /home/ftpuser ftpuser
passwd ftpuser
密码自定义,但是你要记得住,一会登陆还要用呢
chown -R ftpuser:ftpuser /etc/nginx/html/download
必须要改,不然你ftp客户端是会报错的。我已经踩完坑。。。
/etc/vsftpd/vsftpd start
访问测试:
第一层目录
点击就可以下载
测试FileZilla 上传,看看nginx 这边显示不。
测试下载
这个实验就是这么回事。
不安客户端也可以下载了,具体的简易程度自行参考吧
用处大不,但是有用。
下一篇文件关于《history 的优化和cd到新目录时自动显示新目录名》
标签:关闭 RKE gif gre 关于 anon 允许 star mit
原文地址:https://blog.51cto.com/amunlinux/2426478