115129
Goto Top

FTP-SSL Synchronisation bestimmter Ordner bzw. Verzeichnisse

Guten Abend,

seit Tagen suche ich per Google nach Lösungsansätze wie zwei FTP-Server via Batchscript synchronisiert werden können, schlussendlich muss ich mich wieder an Euch wenden, da wird einem geholfen face-wink
Im Worldwideweb ist viel über WinSCP oder Curl zu lesen, wobei WinSCP bereits erfolglos getestet wurde, allerdings würde ich ein reines Batchscript (oder auch Visual Basic) bevorzugen.

Ist es möglich mit einem Batchscript folgende Abarbeitung zu erzielen:
1. Verbindung herstellen zu FTP1 (SSL)
2. Verbindung herstellen zu FTP2
3. Inhalt von bestimmten Verzeichnisse auf FTP1 die in dem Script angegeben sind in eine temporäre Textdatei schreiben. (Vorzugsweise mit einer Filterfunktion um Verzeichnisse auszuschließen)
4. Inhalt von bestimmten Verzeichnisse auf FTP2 die in dem Script angegeben sind in eine temporäre Textdatei schreiben.
5. Inhalt beider Textdateien vergleichen - Verzeichnisse die nicht auf FTP2 existieren, sollen von FTP1 nach FTP2 im FXP-Modus übertragen werden.

Das Script soll auf FTP2, einem Windows Server ausgeführt werden.

Vielen Dank im Voraus für alle Informationen die mich dem Ziel näher bringen face-smile

Gruß,
Blattlaus

Content-Key: 285682

Url: https://administrator.de/contentid/285682

Printed on: April 19, 2024 at 06:04 o'clock

Member: StefanKittel
StefanKittel Oct 16, 2015 at 05:55:20 (UTC)
Goto Top
Moin,

das einfachste wäre nicht FTP-SSL sondern FTP mit TLS zu verwenden.
Das ist auch verschlüsselt aber noch standard FTP.

Ein FTP Laufwerk kann man mit diversen Tools als Laufwerk unter WIndows einbinden und dann kannst Du jedes Sync-Programm verwenden was Du findest.

Ich nutze auf einem Windows Server.
Der holt von verschieden Linux-Server mittels WinSCP Daten ab.
Dafür habe ich verschiedene Batch-Dateien mit einem SyncUp-Befehl.
Kann ich bei Bedarf gerne posten.

Stefan
Mitglied: 114757
114757 Oct 16, 2015 at 06:37:20 (UTC)
Goto Top
Moin Blattlaus,
wo lag das Problem mit WinSCP ?
Nutze das jetzt schon Jahre problemlos zum Synchronisieren... Da gibt es ja den schönen Befehl synchronize der es erlaubt in beide oder eine Richtung die du bestimmst zu synchronisieren. Den setzt du dann statt im folgenden Thread verwendeten "put" ein und schon läuft das ganze.
FTP-Massenupload über Batch (CMD-Script) und Erstellung eines Log-Files

Andere Variante wäre statt FTPS -> SFTP (SCP) über SSH zu nutzen und dann mittels rsync zu synchronisieren.

Gruß jodel32
Mitglied: 115129
115129 Oct 16, 2015 updated at 20:23:56 (UTC)
Goto Top
Guten Abend zusammen,

vielen Dank für eure Ratschläge.


@Stefan:
Der Verbindungstyp ist "Explicit SSL Auth TLS".
Es sollte wie bereits erwähnt ein Script sein, welches mit dem "File Exchange Protokoll" arbeitet.

@114757:
Der Fehler bei WinSCP kann ich leider nicht detailiert berichten, ist schon ein paar Tage her als ich das Programm getestet hatte.
Mit irgendeinem FTP-Befehl kam das Programm nicht klar.
SFTP ist nicht möglich, es wird FTPS vorausgesetzt.


Ist es theoretisch möglich, nur mit einem Batch- oder VB-Script mein Vorhaben zu realisieren?

Vielen Dank für eure Bemühungen.

Gruß,
Blattlaus
Mitglied: 114757
114757 Oct 17, 2015 updated at 07:34:37 (UTC)
Goto Top
Zitat von @115129:
Ist es theoretisch möglich, nur mit einem Batch- oder VB-Script mein Vorhaben zu realisieren?
Mit viel Aufwand ja, wenn du alle Synchronisationsfälle berücksichtigen willst.
Stell dir das bloß nicht so einfach vor, du musst Konflike auf beiden Seiten beachten (Dateien auf beiden Seiten wurden geändert), Änderungen entweder nur am Datum oder an der Größe feststellen, oder anhand des Dateihashes feststellen, Dateilöschungen etc.
Du baust Quasi etablierte Sync Tools nach ... dann doch lieber gleich zu stabilen von der Community getesteten Tools greifen.
Wenn man sowas manuell machen wollte, würde ich aber zu effektiveren Tools wie Powershell öde gleich eine vernünftige Programmiersprache wie c# greifen, bei denen man nicht bei jeder etwas komplexeren Aufgabe zu externen Tools greifen muss.

Noch eine Variante: Beide FTP-Server als Laufwerk einbinden und dann dein Sync-Tool der Wahl drauf ansetzen, das lässt sich auch automatisieren.