安装vsftpd和nginx CentOS7

note:原本以前按照教程弄好了的,可是次日又不能用java上传文件到了,折腾了好久还没好,这就很难受了,从新再来一次,记下此次笔记。之后极可能还用的上。
服务器操做系统:CentOS 7.6 64位
做用:使用java上传完成客户端图片文件上传至服务器,而且客户端能够直接访问服务器中的图片
Date: 2019/08/16 09:45 

1、背景

1.主要问题:

在tomcat集群中上传文件时,文件上传至一台服务器中,另外一台中并无图片,致使没法访问该图片(文件)。


2.一步一步来解决问题

解决:拿一台图片服务器来,专门存储图片文件。
产生子问题。
       子问题1:图片服务器是有了,那么怎么实现图片文件上传
       解决:安装vsftpd,经过 Apache Commons Net包中的FTPClient类写java代码链接服务器进行文件上传。
       子问题2:上面文件上传是解决了,可是要怎么实现图片的访问
       由于:若是但愿在客户端直接访问图片服务器中的图片,因为VSFTPD 是基于 FTP(文件传输协议)协议的,客户端浏览器是须要经过 http(超文本传输协议) 协议访问。怎么才能使客户端直接访问到图片服务器中的图片。
       解决:在装有vsftpd的服务器上安装nginx,而后使用nginx进行反向代理。

2、vsftpd

1.介绍vsftpd

vsftpd介绍请参考百度百科
注:简单理解:vsftpd(very secure FTP daemon),它能够运行在Linux...操做系统上,是一个免费、开源ftp服务器软件。

2.安装

(注:vsftpd命令代码能够看这篇:也差很少的:juejin.im/post/5d5e94…html

1.登录,首先确定要登录本身的服务器的,使用Putty、Xshell或者其余的都行,ip地址端口22加上密码或密钥便可。
java

2.在线安装,输入命令后很快就安装好了

yum -y install vsftpd
vsftpd -v # 查看安装版本,能够用来检查有没有安装过
whereis vsftpd # 查看安装位置复制代码

3.添加ftp用户,并给ftp用户添加密码(注:之后访问ftp时就用这个帐号)

useradd ftpuser # 建立一个新用户叫ftpuser
passwd ftpuser # 给这个用户一个密码复制代码

4.修改selinux:这个不知道有什么用,并且输入了也提示getsebool: SELinux is disabled。貌似不作也能够?
5.vsftpd.conf配置文件
关闭匿名访问(注:总不能随便谁均可以访问吧)

vim /etc/vsftpd/vsftpd.conf # 进入配置文件进行修改复制代码

找到这一行容许匿名改为NO
顺便该配置文件最后面加上这两句:顺便去防火墙把这边的端口打开,记得改完须要把防火墙配置从新加载

pasv_min_port=30000
pasv_max_port=30999
firewall-cmd --permanent --zone=public --add-port=30000-30999/tcp // 开启范围端口
firewall-cmd --reload // 配置从新加载复制代码

6.启动vsftpd服务(注:安装上服务器的东西我都理解为一个个服务)

systemctl status vsftpd.service # 查看vsftpd服务的状态
systemctl start vsftpd.service # 启动vsftpd服务复制代码

7.设置开机启动vsftpd服务

chkconfig vsftpd on # 设置开机启动(注:这句好像不行,用下面这句)
systemctl enable vsftpd.service # 设置开机启动复制代码

8.安装完了,开始测试
既然你也安装好了vsftpd的服务,用户也建立了,那么就要去测试下了,来如今访问下面网址:ftp://你的服务器IP,输入刚才建立的用户名ftpuser和密码,这时候访问的文件就是/home/ftpuser下的文件夹。可能会比较慢才能链接上进去。

3、nginx

能够看个人另外一篇安装

nginx安装命令-CentOS 6装命令:juejin.im/post/5d5e96…linux

同时不要忘记让nginx代理刚刚建立的ftpuser文件夹:

nginx代理ftpuser文件夹:juejin.im/post/5d5e9b…nginx

4、如下是我安装时候遇到的扩展学习(与上面安装无关)

1.vim

我用的是vim编辑器,vim安装代码为:shell

yum -y install vim* // 安装vim,-y表明遇到须要确认的一概所有yes复制代码
使用教程:菜鸟教程使用: www.runoob.com/linux/linux…

2.firewall

1.防火墙firewall相关

#安装firewalld 防火墙
yum install firewalld
#开启服务
systemctl start firewalld.service
#关闭防火墙
systemctl stop firewalld.service
#centos7重启防火墙
systemctl restart firewalld.service
#开机自动启动
systemctl enable firewalld.service
#关闭开机制动启动
systemctl disable firewalld.service复制代码
2.使用firewall-cmd 命令

#查看防火墙全部信息
firewall-cmd --list-all
#查询服务的启动状态
firewall-cmd --query-service ftp
firewall-cmd --query-service http
#查看状态
firewall-cmd --state //running 表示运行
#获取全部支持的服务
firewall-cmd --get-service
# 防火墙重启
firewall-cmd --reload 
#启用某个服务
firewall-cmd --zone=public --add-service=https //临时
firewall-cmd --permanent --zone=public --add-service=https //永久
# 防火墙中添加FTP服务
firewall-cmd --permanent --zone=public --add-service=ftp 

复制代码
3.端口相关

#端口详情
firewall-cmd --zone=public --add-port=80/tcp --permanent
#说明:
#–zone #做用域
#–add-port=80/tcp #添加端口,格式为:端口/通信协议
#–permanent 永久生效,没有此参数重启后失效
#多个端口:
firewall-cmd --zone=public --add-port=80-90/tcp --permanent

#centos7查看防火墙开放的端口信息
firewall-cmd --list-ports
#查看开启的端口和服务
firewall-cmd --permanent --zone=public --list-services //服务空格隔开 例如 dhcpv6-client https ss
firewall-cmd --permanent --zone=public --list-ports //端口空格隔开 例如 8080-8081/tcp 8388/tcp 80/tcp
#开启某个端口
firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp //永久
firewall-cmd --zone=public --add-port=8080-8081/tcp //临时
#删除端口
firewall-cmd --permanent --zone=public --remove-port=80/tcp 
#从新加载
firewall-cmd --reload复制代码

3.CentOS文件夹介绍

扩展学习:CentOS中的文件夹介绍:blog.csdn.net/qd_ltf/arti…vim

相关文章
相关标签/搜索