Ftp安装部署与Java调用

Ftp-安装部署

1、查看是否已安装vsftpd

#rpm -qa | grep vsftpd

如果已经安装,则会显示它的版本号,否则说明系统没有安装。

 

2、添加FTP用户

2.1、添加FTP用户,用于登录FTP时使用,并设置根目录为:/home/user-ftp,并不能登录系统

#useradd -d /home/user-ftp -s /sbin/nologin user-ftp

2.2、为该用户设置登录密码:

#passwd user-ftp

密码暂设置为:“UmsTFyyeHTvf93KG”

3、修改配置文件

vi /etc/vsftpd/vsftpd.conf

anonymous_enable=NO   #是否开启匿名登录

去掉注释 chroot_list_enable=YES       #是否将系统用户限制在自己的home目录下

去掉注释 chroot_list_file=/etc/vsftpd/chroot_list     #列表受限制用户

添加如下配置

anon_world_readable_only=NO

anon_other_write_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

chown_uploads=YES

#vi /etc/vsftpd/chroot_list 增加添加的ftp账号后保存退出,如:ftpuser

4、配置被动模式

4.1、开启防火墙,并添加以下防火墙规则:

-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT

-A INPUT -p tcp -m multiport --dports 40000:40080 -j ACCEPT

重启防火墙:#service iptables restart

4.2、编辑/etc/vsftpd/vsftpd.conf文件,在末尾添加:

pasv_enable=YES

pasv_min_port=40000  //设置被动模式的最小端口

pasv_max_port=40080  //设置被动模式的最大端口

pasv_promiscuous=YES

5、重启vsftpd服务

#service vsftpd restart

6、验证

 

7、问题

1)远程连接linuxftp时,使用本地账户怎么连也连接不上,ftpuseruser_list配置没问题,vsftpd.config的配置也开启了本地账户登录(local_enable=YES)。

linuxftp 127.0.0.1登录提示“530 Login incorrect”

https://img2018.cnblogs.com/blog/1379528/201911/1379528-20191102174923299-778925986.png

解决:

进入/etc/pam.dvsftpd文件中的pam_shells.so改为pam_nologin.so,然后systemctl restart vsftpd重启服务,连接ftp成功

https://img2018.cnblogs.com/blog/1379528/201911/1379528-20191102182623243-392539025.png

 原因:

应该和PAM模块配置有关,具体原因待深究

 

2)前一阵子自己在linux中部署安装了一个ftp服务器,在做上传、删除的时候,发现很慢。于是打印log日志,发现原因在于ftp.login()方法。因为当时配置ftp时没有关闭DNS查找功能,故在登录ftp服务器时,耗时长达16s。经过提工单找到解决方案!下面就是解决方案:

         1.登录远程linux主机,打开ftp配置文件vsftpd.conf

         2.在文件最末尾处添加如下代码:reverse_lookup_enable=NO 表示不查找dns

         3.最后保存文件重启服务器。service vsftpd restart

 

 

Ftp-Java调用

1、配置文件-application.properties:

2、jar包坐标-pom.xml:

3、工具类:

4、测试类:

软件包以及Java调用工具类下载地址:https://download.csdn.net/download/qq_34281865/15503537
个人交流Q:772182648
以上是本人自己总结,并且在项目中实际用到的。新手一枚,不喜勿喷!

 

猜你喜欢

转载自blog.csdn.net/qq_34281865/article/details/114266736
今日推荐