Komut dosyası içeren bir FTP sunucusuna dosya göndermeyi nasıl otomatikleştirebilirim?


9

Ben belirli bir günlük dosyası alır /var/log/ve ben kolayca alabilirsiniz bir yere koyar bir komut dosyası yapmak gerekir (büyük olasılıkla erişebileceğiniz bir web veya FTP sunucusu). Göndermek için posta kullanmak istediğimi sanmıyorum. Webdav bir seçenek olabilir. Herhangi bir kullanıcı etkileşimi olmadan çalışması ve oldukça hızlı ve ağrısız olması gerekir. Herhangi bir öneri? (temel olarak şifre gerekmez)

Yanıtlar:


12
  • Giriş dosyaları /var/loggenellikle dünya tarafından okunabilir ve erişmek için şifre gerekmez.
  • Zaten bir FTP sunucunuz varsa - bir web sunucusunun arka ucu da olabilir - IMO'nun en basit seçeneği wputyardımcı programı kullanmaktır .
    • sudo apt-get install wputGerekirse takın .
    • Sözdizimi:
      wput [seçenekler] [dosya] ... [url] ...
    • URL şu şekildedir:
      ftp: // [kullanıcı adı [: şifre] @] hostname [: port] [/ [yol /] [dosya]]
  • Misal:

    wput / var / log / syslog ftp: // jack: salty@ftp.website.com/www/mylogs/ 
    
  • -uHedef dosya zaten mevcut olduğunda yüklemeyi zorlamak için bu seçeneği kullanın .

  • Daha fazla seçenek için wput --helpveya bölümüne bakın man wput.

Not: Yukarıdaki örneklerde olduğu gibi şifreyi düz metne koymak genel olarak son derece güvensizdir; Sunucuda yalnızca günlükleri indirmek / görüntülemek için oluşturduğunuz özel bir dizine yüklemelere izin veren kısıtlı bir FTP hesabı oluşturmanızı önemle tavsiye ederim.


Merhaba, Bunun için çok teşekkürler, bu tam olarak ihtiyacım olan şey, eski bir iplik olduğunu biliyorum ama dizinlerle sorun yaşıyorum. Uzak sunucuda wput kullandığımda, her zaman dosya hedefine dizin ağacı oluşturur, uzaktan kumandadaki tüm dizin ağacını oluşturmadan dosyaları kopyalamak mümkün mü?
Aleksandar Đorđević

0

Kullanabileceğiniz bir diğer kullanışlı ve güvenli komut, scpdosyaları ileri geri kopyalamak için ssh kullanan komuttur.

Bunu kullanmak için bir ssh anahtar çifti oluşturmak ve anahtarın ortak kısmını ~ / .ssh / dizinine kopyalamak için denizatı kullanabilirsiniz. Kullanmak için giriş yapmak istemediğiniz için, bunun için kullandığınız şifreyi bir şifreyle korumamalısınız. Muhtemelen bu komut dosyası için yalnızca bunun için kullandığınız parola çiftini kullanmalısınız. Seçmek için scp -i kimlik seçeneğini kullanın.

Özel anahtar, düz metin parolanın yerini alır.

İsterseniz betiğin crontab'ınıza çağrılmasını sağlayabilirsiniz.

İzx'in yararlı yaklaşımı ile uzak bilgisayarın şifresini göze çarpmadan korumak için komut dosyasını nereye koyduğunuza karşı dikkatli olmanız gerekir. Bu yaklaşımla, parola korumalı olmadığı için anahtar çiftinin özel kısmını korumak için aynı özen göstermelisiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.