Centos7.5配置ftp服务器连接,并且采用java连接测试

1:安装ftp

yum install -y vsftpd

开机自启设置

systemctl enable vsftpd.service

启动ftp服务

systemctl start vsftpd.service

 关闭ftp服务

systemctl stop vsftpd.service

查看ftp服务的状态

systemctl status vsftpd.service

 

2:进入到ftp的根目录默认是/etc/vsftpd/文件中进行配置

cd /etc/vsftpd/

会看到如下的文件

Centos7.5配置ftp服务器连接,并且采用java连接测试_第1张图片

/etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件

/etc/vsftpd/ftpusers:用于指定哪些用户不能访问FTP 服务器。  黑名单

/etc/vsftpd/user_list:指定允许使用vsftpd 的用户列表文件。  白名单

我的配置如下:具体的配置说明可以参考其他的文档 https://blog.csdn.net/kxwinxp/article/details/78595044

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
idle_session_timeout=6000
data_connection_timeout=1200
listen=YES
listen_ipv6=NO
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
userlist_file=/etc/vsftpd/user_list
local_root=/var/ftp/pub
listen=YES
userlist_deny=NO
use_localtime=YES
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=40080
pasv_promiscuous=YES

配置完后重启ftp

 /bin/systemctl restart  vsftpd.service

二:用java链接测试

导包:

    
            commons-net
            commons-net
            3.6
        
public static FTPClient getFTPClient(String ftpHost, String ftpUserName, String ftpPassword, int ftpPort) {
        FTPClient ftpClient = null;
        try {
            ftpClient = new FTPClient();
            // 连接FTP服务器
            ftpClient.connect(ftpHost, ftpPort);
            // 登陆FTP服务器
            ftpClient.login(ftpUserName, ftpPassword);
            //中文支持
//            ftpClient.setControlEncoding("UTF-8");
            ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
            ftpClient.enterLocalPassiveMode();
            int replyCode = ftpClient.getReplyCode();
            System.out.println("链接返回发code:" + replyCode);
            if (!FTPReply.isPositiveCompletion(ftpClient.getReplyCode())) {
                log.error("未连接到FTP,用户名或密码错误");
                ftpClient.disconnect();
            }
        } catch (SocketException e) {
            e.printStackTrace();
            log.error("FTP的IP地址可能错误,请正确配置");
        } catch (IOException e) {
            log.error("FTP的端口错误,请正确配置");
        }
        return ftpClient;
    }

测试的结果code为200,说明链接成功

你可能感兴趣的:(Centos7.5配置ftp服务器连接,并且采用java连接测试)