- •Права доступу та авторизація
- •Vlad - ім'я користувача;
- •Відмінності між Інтернет-протоколів http та ftp
- •З’єднання та передача даних
- •Програмне забезпечення ftp-клієнта
- •Безпечний ftp
- •2 Опис функцій та методів WinApi
- •2.1 Арі операційної системи Windows
- •2.2 Структура api-програм
- •2.3 Консольні та графічні додатки
- •3 Розробка програмного додатку
- •3.1 Вибір середовища програмування
Програмне забезпечення ftp-клієнта
Програмне забезпечення FTP-клієнта може представляти собою автономну програму, таку, як популярний пакет WS_FTP, а може бути інтегроване в інші програми. Наприклад, функції FTP-клієнта вбудовані в популярні Web-браузери таких компаній як Netscape, Microsoft та інші, а також включені в якості сервісних програм в різні операційні системи. Інтеграція програмного забезпечення FTP-клієнта обумовлюється вище наведеними у моїй роботі перевагами протоколу, що вивчається.
Функції FTP-клієнта, які містяться у Web-браузері, звичайно повністю застосовні для завантаження файлів з загальнодоступних файл-серверів (які також називають анонімними). Також вони можуть використовуватись і для вивантаження файлів на FTP-сервери за умови, що ці сервери настроєні визначеним стандартним способом.
Проте, як правило, автономне програмне забезпечення FTP-клієнта забезпечує більшу гнучкість. Такі програми дозволяють враховувати деякі менш поширені конфігурації FTP-серверів, передавати файли різних типів і керувати файловими каталогами. Утиліти FTP управляються за допомогою команд, що вводяться з клавіатури, а комерційні FTP-клієнти зазвичай надають користувачеві можливість роботи із графічним інтерфейсом з кнопками та вікнами.
Безпечний ftp
Існує декілька методів безпечної передачі файлів в один чи інший час так званим «Безпечним FTP».
FTPS — розширення стандарту FTP, що дозволяє клієнтам вимагати того, щоб FTP-сесія була зашифрована. Це реалізується відправкою команди «AUTH TLS». Сервер має можливість дозволити або відхилити з’єднання, яке не запитують TLS. Це розширення протоколу визначено в специфікації RFC 4217. Неявний FTPS — застарілий стандарт для FTP, вимагає використання SSL або TLS-з'єднання. Цей стандарт повинен був використовувати відмінні від звичайного FTP порти.
SFTP, або «SSH File Transfer Protocol», не пов'язаний з FTP, за винятком того, що він теж передає файли і має аналогічний набір команд для користувачів. SFTP, або безпечний FTP — це програма, що використовує SSH (Secure Shell) для передачі файлів. На відміну від стандартного FTP він шифрує і команди, і дані, оберігаючи паролі та конфіденційну інформацію від відкритої передачі через мережу. По функціональності SFTP схожий на FTP, але так як він використовує інший протокол, клієнти стандартного FTP не можуть зв'язатися з SFTP-сервер і навпаки.
FTP через SSH (не SFTP) відноситься до практики тунелювання звичайної FTP-сесії через SSH-з'єднання. Оскільки FTP використовує кілька TCP-з'єднань, тунелювання через SSH особливо важко. Коли багато SSH-клієнтів намагаються встановити тунель для каналу управління (споконвічне «клієнт-сервер» з'єднання з порту 21), захищений буде тільки цей канал; при передачі даних програмне забезпечення FTP на будь-якому кінці встановить нові TCP-з'єднання (канали даних), які обійдуть SSH-з'єднання і, таким чином, втратять цілісної захисту.Інакше, для клієнтського програмного забезпечення SSH необхідно мати певні знання про FTP для відстеження і перезапису повідомлень потоку управління FTP і автономного відкриття нових перенаправлень для потоку даних FTP.
Програмні пакети, які підтримують цей режим:Tectia ConnectSecure (Win/Linux/Unix) з пакету SSH Communications SecurityTectia Server for IBM z/OS з пакету SSH Communications SecurityFONC (під ліцензією GPL)Co:Z FTPSSH ProxyFTP через SSH іноді відносять до безпечним FTP; але не варто плутати його з іншими методами, такими як SSL/TLS (FTPS). Інші методи передачі файлів за допомогою SSH і не пов'язані з FTP — SFTP і SCP; в кожному з них та облікові і файлові дані завжди захищені протоколу SSH.
