安装 vsftpd
yum -y install vsftpd
添加 vsftpd 用户
useradd ftpuser
设置 vsftpd密码
passwd ftpuser
在ftpuser用户目录下创建一个上传目录
mkdir /home/ftpuser/html
配置 ,禁止匿名用户登录,配置文件 /etc/vsftpd/ vsftpd.conf
找到下面的2项进行修改
local_root=/home/ftpuser/html
nonymous_enable=NO
修改目录权限
chmod 777 /home/ftpuser/html
启动Vsftpd
service vsftpd restart
Java文件上传
导入依赖:
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>3.6</version>
</dependency>
这是我们的文件上传的IP和前面设置的用户
@Test
public void testFtpUpload(){
FTPClient ftpClient = new FTPClient();
FileInputStream fis = null;
try {
//服务器IP
ftpClient.connect("10.0.0.3");
//配置的ftp用户密码
ftpClient.login("ftpuser", "123456");
//本地文件
File srcFile = new File("C:\\Users\\Administrator\\Desktop\\图片素材\\111.jpg");
fis = new FileInputStream(srcFile);
//设置上传目录
ftpClient.setBufferSize(1024);
ftpClient.setControlEncoding("GBK");
//设置文件类型(二进制)
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
ftpClient.storeFile("333.jpg", fis);
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException("FTP客户端出错!", e);
} finally {
IOUtils.closeQuietly(fis);
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException("关闭FTP连接发生异常!", e);
}
}