iup ftp 上传配置。

 

一.安装

1 安装依赖包:libssh2-1.2.7.tar.gz (其他依赖包一般系统自带,如果没有在装)

         #cd depended

         #tar –zxvf libssh2-1.2.7.tar.gz

         #cd libssh2-1.2.7

         #./configure

         #make

         #make install

2 在/etc/ld.so.conf中加入”/usr/local/lib”

#echo “/usr/local/lib” >> /etc/ld.so.conf

3 运行ldconfig

4 删除老版本的libcurl

         #find / -name libcurl.so.*

         #find / -name libcurl.a*

         把上面两条命令执行后找到的文件删除。

         #rm –f xxxx  //xxxx表示找到的curl动态库与静态库。

5安装curl-7.21.4.tar.gz包

         #tar –zxvf curl-7.21.4.tar.gz

         #cd curl-7.21.4

         #./configure

         #make

         #make install

         #ldconfig

6 验证libcurl是否安装成功

         #curl --version

         如果信息如下,代表成功:

curl 7.21.4 (i686-pc-linux-gnu) libcurl/7.21.4 OpenSSL/0.9.8b zlib/1.2.5 libidn/1.0 libssh2/1.2.7

Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp

Features: IDN IPv6 Largefile NTLM SSL libz

 

二.上传模块配置文件配置

进入配置文件所在目录:编辑inotify_up.conf。

         #cd ../src/up_src

         #vi inotify_up.conf

解释如下:

1. transfer_mode 可以配置三中协议,分别是: ftp , sftp , scp 任选一种

2. server_ip 填写要上传到对方服务器的ip

3.server_port 填写协议使用的端口号

4.user_name 填写用户名

5.passwd 填写密码

6.server_dir 表示上传到对方ip的哪个目录。注意:如果是ftp协议传输,填写用户名家目

录的相对地址。例如root用户的家目录是/root/ 如果要传输到家目录 配置成:”server_dir = / “ 就行。如果是sftp或scp则填写绝对路径。

7.source_file_path 本地监听的目录,可配置多个本地目录,每行一个,如果续行,末尾加

         上续行符”\”

8.suffix 表示要监听的文件的后缀名。如”ctr”

9. reflected_suffix 表示.ctr将要映射文件的后缀,如xml

10. suffix_process表示监听后缀名的文件与实际要处理的文件名的关系。有3种映射关系:

         (1)replace 如果监听aaa.xml.ctr 那么要传输的文件是aaa.xml.txt

         (2)cut如果监听aaa.xml.ctr 那么要传输的文件是aaa.xml

(3)no_reflect 如果监听aaa.xml.ctr 那么要传输的文件是aaa.xml.ctr

11.is_compress 是否压缩要传输的文件: yes或no

12.append_okfile 是否在传输完文件后,追加传输一个.ok的确认文件: yes或no

13. sleep_period 单位为秒。表示传输周期。

 

 

三.上传模块编译与使用

进入up_src目录:        

         #make

         #./run

 

如果要做定时任务:

在/etc/cron.d/cron_dcol 文件中加入定时运行脚本 ,例如如下语句:

         */1 *   *  *  *   root   /root/transfer/aut_dcol

 

四.vsftp的配置与添加用户

1.编辑/etc/vsftpd/vsftpd.conf 添加如下内容:

 

pam_service_name=vsftpd

userlist_enable=YES

tcp_wrappers=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_world_readable_only=NO

anon_other_write_enable=YES

chown_uploads=YES

2. 重启vsftpd

#service vsftpd restart

#chkconfig vsftpd on

3. vsftpd用户增加:

         #adduser ftpuser                                 //添加用户

         #mkdir –p /home/pcap_file               //创建家目录

         #usermod –g ftp user1                       //修改用户usermod –d /home/pcap_file –g ftp ftpuser

         #vim /etc/passwd                              //修改ftpuser的家目录为/home/pcap_file

         #pwconv                                                 //更新/etc/passwd与/etc/shadow同步

         #chown –R ftpuser.ftp /home/pcap_file

         #passwd ftpuser                                  //修改用户名的密码

4 以下问题可能由selinux产生的可能:

关于ftp用户连接时出现500 OOPS: cannot change directory:/root报错,selinux 默认下是没有开启FTP的支持,所以访问时都被阻止了。

解决办法1:
a.   查看SELinux设置
          # getsebool -a | grep ftp

发现如下:

allow_ftpd_anon_write --> off

allow_ftpd_full_access --> off

allow_ftpd_use_cifs --> off

allow_ftpd_use_nfs --> off

ftp_home_dir --> on

ftpd_connect_db --> off

sftpd_anon_write --> off

sftpd_enable_homedirs --> off

sftpd_full_access --> off

或者 

ftp_home_dir–>off
b.   使用setsebool命令开启以上所有开关,例如:
     # setsebool ftpd_disable_trans 1     或者    # setsebool ftp_home_dir 1
c.   查看当前状态是否是on的状态
       # getsebool -a|grep ftp
      此时 

allow_ftpd_anon_write --> on

allow_ftpd_full_access --> on

allow_ftpd_use_cifs --> on

allow_ftpd_use_nfs --> on

ftp_home_dir --> on

ftpd_connect_db --> on

sftpd_anon_write --> on

sftpd_enable_homedirs --> on

sftpd_full_access --> on

sftpd_write_ssh_home --> on

d. 最后重启     # service vsftpd restart

OK,问题解决了。

另外     setsebool 使用-P参数,无需每次开机都输入这个命令
# setsebool -P ftpd_disable_trans 1
或者
# setsebool -P ftp_home_dir 1

 

解决办法2:

关闭SELinux:修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值