A. ftpclient的工具类支持linux吗
支持,linux直接安装client就可以了,yum install ftp -y 就可以直接安装了,当然你要配置好yum源
B. java中在linux环境下,运用org.apache.commons.net.ftp.FTPClient包,下载FTP服务上的文件,报出异常:
1,确保手工用FTP客户端连接没问题。
2,手工没问题,程序也应该没问题才是。
3,确保程序中安全CLOSE连接,FTP服务器也是有连接限制的。
4,适当考虑重起一下FTP服务器。
C. linux下java实现ftp下载,ftpClient.listFiles();返回的数组长度一直是0
如果你加了ftpClient.enterRemotePassiveMode();还是不行,那么就可能是你commons-net 的jia包版本太低,你可以试着引入 commons-net-3.3.jar以及以上版本的jar应该就可以了。
D. linux环境下,在java中用sun.net.ftp.FtpClient类去读取文件名含有“点号”的文件时报错找不到文件
java对.号解析的问题。linux是对.不敏感的。简单,转义字符,搞定。2011\.9\.9日XX详情.doc
或者
2011\\.9\\.9日XX详情.doc
对java的转义字符不是很了解。上述两种应该有一个可行。
E. ftpclient changeWorkingDirectory 在linux 下返回值为false,请问这个什么问题
linux下面登录到FTP第一次切换到指定目录时,可以直接changeWorkingDirectory,当再次重复调用changeWorkingDirectory仍然切换到这个指定目录的时候(一般你登录ftp后,批量上传文件的时候,根据你的代码,可能会出现重复切换相同目录的情况),在lilux下的ftp下重复切换到指定目录会返回false,这与window中的ftp不一样,window中可以重复切换,而liliux中不行,所以在lilux中的ftp中你最好判定是否第一次切换目录,如果是第一次切换到指定目录,就调用changeWorkingDirectory,当你要上传下一个文件的时候,就不用再次changeWorkingDirectory了
F. 请问哪位有linux的ftp_client的程序用C写的
源码?
如果你安装 linux 选择了 源代码 包 的话,应该 就有
你 用 find 找找看
Good luck
G. linux怎么搭建ftp服务器
ftp工作是会启动两个通道:
控制通道 , 数据通道
在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种模式:port模式(主动模式)和pasv(被动模式)
PORT模式:
在客户端需要接收数据时,ftp_client(大于1024的随机端口)-PORT命令->ftp_server(21) 发送PORT命令,这个PORT命令包含了客户端是用什么端口来接收数据(大于1024的随机端口),在传送数据时,ftp_server将通过自己的TCP 20 端口和PORT中包含的端口建立新的连接来传送数据。
PASV模式:
传送数据时,ftp_client--PASV命令-->ftp_server(21) 发送PASV命令时,ftp_server自动打开一个1024--5000之间的随机端口并且通知ftp_client在这个端口上传送数据,然后客户端向指定的端口发出请求连接,建立一条数据链路进行数据传输。
安装ftp
#rpm -qa vsftpd 查看是否已经安装
#yum install -y vsftpd
#rpm -ql vsftpd
/etc/logrotate.d/vsftpd. vsftpd的日志文件
/etc/pam.d/vsftpd PAM认证文件
/etc/rc.d/init.d/vsftpd 启动脚本
/etc/vsftpd vsftpd的配置文件存放的目录
/etc/vsftpd/ftpusers 禁止使用vsftpd的用户列表文件
/etc/vsftpd/user_list 禁止或允许使用vsftpd的用户列表文件
/etc/vsftpd/vsftpd.conf 主配置文件
/etc/vsftpd/vsftpd_conf_migrate.sh vsftpd操作的一些变量和设置
/usr/sbin/vsftpd vsftpd的主程序
其他一些说明文档和手册文件略!
/var/ftp 匿名用户主目录
/var/ftp/pub 匿名用户的下载目录
#service vsftpd start
#chkconfig --level vsftpd
#chkconfig --level 2345 vsftpd on
2 匿名用户的登录名:ftp(anonymous) 密码空 ,登录的目录为/var/ftp
用匿名用户登录的时候默认是只有下载的权限,没有上传,创建和删除的权限:
#vim /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES 上传
anon_mkdir_write_enable=YES 创建
anon_other_write_enable=YES 删除
#service vsftpd restart
为了安全应该禁止匿名用户的登录:
123456 #vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
#anon_upload_enable=YES 上传
#anon_mkdir_write_enable=YES 创建
#anon_other_write_enable=YES 删除
#service vsftpd restart
3 创建一个直接登录系统用户来登录ftp:
#useradd -s /sbin/nologin viong
#passwd viong
用户具有 上传 创建 下载 切换目录
------------------------------------------------------------------
4 加强vsftp安全设置:
限制系统用户锁定在家目录:
#vim /etc/vsftpd/vsftpd.conf
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list 限制更多的系统用户,把需要限制的用户加入/etc/vsftpd/chroot_list中即可
#touch /etc/vsftpd/chroot_list
#cut -d: -f 1 /etc/passwd >>/etc/vsftpd/chroot_list 将本地用户都加入到chroot_list
限制重要系统用户不能登录ftp:
#cat /etc/vsftpd/ftpusers 默认已经添加了系统中一些比较重要的用户
#echo "viong" >>/etc/vsftpd/ftpusers 此时viong不能登录ftp
利用ftp用户策略允许登录ftp的系统用户:
/etc/vsftpd/user_list 只有在这个文件中的用户才能登录系统:
#vim /etc/vsftpd/vsftpd.conf
#在userlist_enable=YES 的后面添加
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list
设置登录ftp目标ip地址:用iptables设置
---------------------------------------
搭建支持SSL加密传输的vsftpd:
#openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem 生成证书
#vim /etc/vsftpd/vsftpd.conf
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=YES
ssl_sslv3=YES
rsa_cert_file=/etc/vsftpd/vsftpd.pem
下面是ssl参数一些定义,根据自己需求去修改:
ssl_enable=yes/no //是否启用 SSL,默认为no
allow_anon_ssl=yes/no //是否允许匿名用户使用SSL,默认为no
rsa_cert_file=/path/to/file //rsa证书的位置
dsa_cert_file=/path/to/file //dsa证书的位置
force_local_logins_ssl=yes/no //非匿名用户登陆时是否加密,默认为yes
force_local_data_ssl=yes/no //非匿名用户传输数据时是否加密,默认为yes
force_anon_logins_ssl=yes/no //匿名用户登录时是否加密,默认为no
force_anon_data_ssl=yes/no //匿名用户数据传输时是否加密,默认为no
ssl_sslv2=yes/no //是否激活sslv2加密,默认no
ssl_sslv3=yes/no //是否激活sslv3加密,默认no
ssl_tlsv1=yes/no //是否激活tls v1加密,默认yes
ssl_ciphers=加密方法 //默认是DES-CBC3-SHA
#service vsftpd restart
用flashftp连接:
连接类型为:FTP使用公开SSL(验证SSL)
地址:192.168.137.130:21
登录类型:普通
用户:viong
密码:123
H. ubuntu linux 下如何启动ftp服务
1、首先,连接相应linux主机,进入到linux命令行状态下,等待输入shell指令。