iup ftp 上傳配置。

來源:互聯網
上載者:User

 

一.安裝

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 ,然後重啟。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.