Ftp сервер windows для linux

Как передавать и обмениваться файлами между Windows и Linux

Копирование данных с ПК с Windows в Linux — или в другом направлении — поначалу может показаться пугающим. В конце концов, это то, что кажется простым, но оказывается сложным.

По правде говоря, делиться файлами из Windows в Linux легко, но только если вы знаете, как это сделать. Готовы выяснить?

4 способа передачи файлов из Windows в Linux

Перенос данных между операционными системами Windows и Linux проще, чем вы думаете. Мы собрали пять способов сделать это:

  1. Поделиться сетевыми папками
  2. Передача файлов с FTP
  3. Безопасное копирование файлов через SSH
  4. Обмен данными с помощью программного обеспечения для синхронизации

С помощью каждого из этих методов вы сможете легко (а в некоторых случаях легко) перемещать файлы между операционными системами.

Давайте посмотрим на них по очереди и выясним, какой из них подходит вам больше всего.

1. Совместное использование сетевых папок между Linux и Windows

Наиболее очевидный способ обмена файлами между Linux и Windows — это использование сетевых ресурсов. Этот термин относится к папкам на одном ПК, которые доступны пользователям на других компьютерах. В сети только для Windows это легко настроить. Добавление устройства Linux немного усложняет ситуацию, хотя это можно преодолеть.

Начиная с Windows, щелкните правой кнопкой мыши значок сетевого подключения на панели задач и выберите «Открыть сеть и настройки Интернета». Далее нажмите «Параметры общего доступа» и включите текущий профиль.

  • Включить обнаружение сети
  • Включите общий доступ к файлам и принтерам

Нажмите «Сохранить изменения» для подтверждения, затем перейдите в папку, содержащую файлы, которыми вы хотите поделиться. Щелкните правой кнопкой мыши папку, выберите «Свойства» и откройте вкладку «Общий доступ». Здесь нажмите «Расширенный общий доступ», затем установите флажок «Поделиться этой папкой».

Вы можете управлять доступом к папке через разрешения; это относится к локальным пользователям Windows, а не к сетевым устройствам.

Нажмите OK, чтобы подтвердить изменение, затем откройте вкладку Безопасность в Свойствах. Настройте это, чтобы отразить настройки в поле Полномочия ранее. Вам не нужно делать слишком много здесь, так как Windows 10 должна включать группу под названием Authenticated Users. Это используется для удаленного доступа к вашему компьютеру.

Снова нажмите ОК, когда вы закончите.

Чтобы найти общий ресурс Windows на ПК с Linux, просто откройте браузер файлов и выберите «Сеть». Отсюда перейдите к папке, размещенной в Windows, и начните обмен данными.

Доступ к общему ресурсу Linux из Windows

Чтобы переместить данные в другом направлении, вам нужно установить Samba на ваш компьютер с Linux.

Затем установите имя пользователя для общего ресурса samba.

Вам будет предложено ввести пароль для новой учетной записи (не используйте для этого «имя пользователя»!).

Затем создайте каталог для обмена данными.

Затем отредактируйте файл smb.conf в своем текстовом редакторе:

Добавьте следующее в конец файла конфигурации:

Внесите необходимые изменения в соответствии со своими потребностями, затем нажмите Ctrl + X, чтобы выйти, и нажмите Y, чтобы сохранить. Далее перезапустите Samba:

После этого вы сможете получить доступ к общему ресурсу из Windows. Откройте проводник или браузер и введите IP-адрес или имя хоста удаленного устройства Linux, а затем имя папки. В нашем примере это

2. Скопируйте файлы через SSH из Windows в Linux

С включенным SSH на вашем устройстве Linux вы можете отправлять данные через командную строку с одного компьютера на другой. Однако, чтобы это работало, вам нужно настроить SSH-сервер на вашем Linux-компьютере.

Начните с открытия терминала и обновления и обновления ОС.

После завершения установите сервер SSH. Сервер OpenSSH — хороший вариант.

Подождите, пока он установит. Чтобы в любой момент проверить, работает ли сервер OpenSSH, используйте

Для передачи данных из Windows используйте SSH-клиент, например PuTTY. Это требует загрузки инструмента PSCP в вашу систему Windows для запуска вместе с PuTTY. Найти оба на домашней странице PuTTY.

Обратите внимание, что в то время как PuTTY нужно будет установить, PSCP — нет. Однако его следует сохранить в корне диска C:\ или настроить как переменную среды. Вам также необходимо подтвердить IP-адрес устройства Linux. Отметьте это на коробке с

Читайте также:  Выключить автозапуск скайпа windows 10

После установления соединения вы можете отправлять данные следующим образом:

Перед началом передачи вам будет предложено ввести пароль для компьютера с Linux.

Хотите скопировать данные из Linux в Windows в одном сеансе SSH? Эта команда загрузит указанный файл в текущий каталог:

Обратите внимание на одиночный период в конце — включите его, иначе перевод не будет работать.

3. Как перенести файлы из Linux в Windows, используя FTP

Можно также использовать приложение протокола передачи файлов (FTP) с поддержкой SSH. Передача файлов через SFTP в пользовательском интерфейсе, управляемом мышью, возможно, проще, чем полагаться на набранные команды.

Опять же, сервер SSH должен быть запущен на компьютере с Linux перед началом работы. Вы также должны убедиться, что вы установили приложение FTP, такое как FileZilla, которое поддерживает SFTP.

Чтобы использовать этот метод, запустите FileZilla, затем откройте Файл → Менеджер сайтов. Создайте новый сайт, заботясь о том, чтобы установить протокол на SFTP. Добавьте целевой IP-адрес в Host, затем имя пользователя и пароль, установив тип входа в систему как Нормальный.

Нажмите Готово, когда будете готовы, затем используйте интерфейс FTP для перетаскивания файлов между двумя компьютерами.

4. Делитесь файлами между Linux и Windows с помощью Resilio Sync

Другим вариантом, который вы должны рассмотреть, является программа синхронизации файлов. Обычно они кроссплатформенные и используют зашифрованный ключ для управления соединением между устройствами.

Все, что вам нужно сделать, это установить приложение, назначить папку синхронизации, а затем создать ключ. Установите это на втором ПК, и ваши данные будут синхронизированы. Для этого есть два хороших варианта:

  • Resilio Sync: ранее известная как BitTorrent Sync, Resilio доступна практически на любой платформе, о которой вы только можете подумать. Есть платная версия, но бесплатного варианта достаточно для синхронизации двух устройств.
  • SyncThing: для Linux, Windows, macOS и Android эта альтернатива Resilio Sync предлагает аналогичную функцию без платного компонента.

Совместное использование файлов между Windows и Linux очень просто

Если вы новичок в Linux, или вы находите Windows незнакомой, обмен данными между ними проще, чем вы думаете.

Мы рассмотрели несколько методов. Мы рекомендуем вам попробовать все из них и решить, какой из них вам наиболее удобен.

Источник

Tech Monger

Programming, Web Development and Computer Science.

File transfer between ubuntu and windows using VSFTP

Posted November 19, 2017

In this tutorial we will learn how to use vsftpd on Linux to make Ubuntu machine run as ftp server and transfer files over wifi on local network.

On many occasion you need to copy and backup files locally from one computer to other. Using physical disk like flash drive or external hard drive is not always feasible due to many constraints such large file size, external drive availability.

Setup

We can take advantage of machines being on same network to achieve file transfer.

To follow this guide you should have access to following

  • Ubuntu Machine
  • Windows Machine
  • Both machines connected over same network using ethernet or wifi

How to install VFTP on Ubuntu

Open Terminal to get and install vsftp demon from official ubuntu repository.

sudo apt-get install vsftpd

Above command will install vsftp demon which means it will always be running in background upon machine startup using init .

Use following commands to check vsftp service

sudo service vsftpd status

If service is running then above command will output status of service with all spawned vsftp process ids.

Alternatively you can also check vsftp process with grep

ps -ef | grep vsftp

How to configure VSFTP for Uploads

This step is optional but if you want to allow uploads from remote machine to your ubuntu server then follow below configuration.

After installation vsftp will create configuration file at path /etc/vsftpd.conf . This file should be owned by root and should have default vsftp configuration. By default VSFTP will not allow ftp uploads; to enable it uncomment line write_enable=YES

Note that /etc/vsftpd.conf would be owned by root , to make any changes in configuration do. sudo vim /etc/vsftpd.conf or sudo gedit /etc/vsftpd.conf

Restart vsftpd demon once configuration is completed.

sudo service vsftpd restart

Check status after restart.

sudo service vsftpd status

How to configure Ubuntu firewall for FTP

By default ubuntu shall be running firewall known as uncomplicated firewall ( ufw ). Default firewall rules will not allow any outside connection.

To open ftp port on this firewall use following commands.

Check firewall status using

sudo ufw status

Firewall should be active and running. If it’s not active then enable the same using following command to make your machine secure.

You can keep it disable if you have such requirement, however it’s recommended to keep it on. sudo ufw enable

Читайте также:  Драйвер usb dvd для установки windows

To open ftp port 21 use following command

sudo ufw allow ftp or sudo ufw allow 21

This will add firewall rule to accept ftp connections from other machine on network. After adding ftp rule you should have following entries in your firewall. sudo ufw status

Configure Windows Firewall

Firewall should permit you to initiate ftp session from windows machine. Search for Windows Firewall in start menu to open firewall configuration window.

Since we are going to use one time ftp we will disable firewall and reenable it once ftp is done. Depending upon which network you are connected to Home or Public you can disable firewall like below.

Note that disabling complete firewall is not recommended. If you are going to use ftp server regularly from windows machine then please create firewall rules under Windows Firewall with Advanced Security on Port 21

Initiate FTP session using Windows command line

Once we are done with required configurations we can initiate first ftp connection from windows command line. First get IP address of machine hosting FTP server using command ifconfig on ubuntu machine. Use eth0 inet address if you are connected with ethernet cable. For wireless connection use inet address of wlan0 interface. My ubuntu machine have following local IP 192.168.2.102 .

To initiate connection open command prompt on windows and use following command. ftp 192.168.2.102

It will ask for username and password. Username will be same name as the ubuntu user (techmonger in my case) and password will the ubuntu’s system password of user.

To get file from ubuntu ftp server, navigate to directory and use get command like below.

To upload file from windows machine to ftp server, put command like below.

To terminate ftp session use bye.

Initiate FTP connection usign ftp client on windows

By now you would agree that doing ftp from windows command prompt is bit tedious. We can use ftp client such as winscp or filezilla to get GUI for ftp operations.

Use hostname as IP address of ftp server (192.168.2.102 in my case) and same credentials as those of ubuntu user.

Like below you can initiate connection from filezilla. You can use drag and drop to download and upload files from windows machine.

FTP Security Aspects — Firewall and Services

All ftp connections will be initiated in plain text. You should only use above method if you are in local network and have complete control over network. For encrypted connections use sftp or ftps .

Remove firewall rule from ubuntu once ftp requirement is over.

Enable Winows firewall once ftp requirement is over.

Stop vsftp demon if ftp is no longer needed to save system resources. It will also make your system less vulnerable.

sudo service vsftpd stop

Conclusion : You can make your ubuntu machine to run as ftp server and can transfer files locally. You do not need SMB (server message block) for file transfer between linux machine and windows machine over network.

Источник

Установка и настройка FTP-сервера в Linux

File Transfer Protocol, т. е. FTP – протокол передачи файлов и, как понятно из полного названия, предназначен для передачи файлов между удалёнными компьютерами через сеть. Несмотря на то, что сам протокол FTP является на сегодняшний день не самым совершенным из-за того, что передаваемые данные не шифруются, однако это не делает его устаревшим. Кроме того всё-таки к FTP возможно применять криптографическую защиту на основе протокола SSL, что и делает FTP достойным инструментом для передачи файлов.

Поскольку FTP работает по схеме клиент-серверного взаимодействия, то умелая и надёжная реализация протокола (да и вообще системы) в состоянии обеспечить ему надёжную защиту, высокую скорость и, как следствие — популярность, что и можно наблюдать на сегодняшний день, ведь большинство крупных проектов, таких как ftp.gnu.org, ftp.suse.com, ftp.redhat.com, ftp.gnome.org и т. д., используют для распространения программного обеспечения со своих серверов именно FTP. Надо заметить, что такой популярностью FTP обязан, в большей степени, одной из своих многочисленных реализаций — vsFTPd. Это FTP- сервер, поддерживающий работу с самыми современными технологиями по защите данных — SSL и IPv6, его реализация совмещает в себе высокую надёжность, стабильность, скорость работы и передачи данных, а также гибкую настройку работы сервера и широкий функционал. Разработчиком vsFTPd является Крис Эванс — профессиональный исследователь в сферах защиты данных и информационной безопасности. vsFTPd является FTP-сервером по-умолчанию практически во всех Linux-системах, поскольку, как уже упоминалось, помимо надёжности и высокой скорости работы, обладает большими функциональными возможностями, самыми значимыми из которых являются:

  1. Работа с виртуальными пользователями.
  2. Работа с виртуальными IP-адресами.
  3. Конфигурирование пользователей.
  4. Поддержка
  5. SSL-шифровние для защиты передаваемых данных.
  6. Контроль полосы пропускания.
Читайте также:  Kde plasma рядом с windows

В данной статье рассматривается установка и настройка FTP-сервера на примере vsFTPd, который, кстати, является свободно распространяемым программным обеспечением (ПО) с открытым исходным кодом. Официальная страница проекта: https://security.appspot.com/vsftpd.html.

Установка vsFTPd

Установить Vsftd в Debian-ориентированных дистрибутивах Linux позволяет команда:

Также полезно будет установить и простой FTP-клиент для тестирования соединения и передачи файлов:

Для дистрибутивов на основе RPM-пакетов, CentOS, RedHat:

Примечание: yum – это пакетный менеджер, тот же самый apt, но адаптированный для управления пакетами формата *.rpm.

После установки для vsFTPd будет доступна техническая документация, которая обычно находится в каталоге /usr/share/doc/vsftpd/examples – здесь приведены варианты различных конфигураций, в зависимости от характера и масштабов использования vsFTPd. Ознакомиться с документацией можно также с помощью команды:

Обычно после установки демон vsFTPd автоматически запускается, убедиться в этом можно с помощью следующих команд:

Запуск, перезапуск и остановка сервера:

Для включения демона vsftpd в автозагрузку используется команда:

Аналогично и с командой service.

Если vsFTPd используется в серверных дистрибутивах, в которых часто работает фаервол, например ufw, то ещё может понадобиться разрешить использование портов 20 и 21:

Настройка vsFTPd

Конфигурационным файлом для настройки vsFTPd является файл vsftpd.conf, который обычно находится в каталоге etc/. Ознакомиться с его одержимым можно командой cat:

На всякий случай полезно перед редактированием оригинального файла настроек сделать его резервную копию:

$ sudo cp /etc/vsftpd.conf vsftpd.conf.backup

FTP-сервер vsFTPd предусматривает два основных варианта работы: с анонимными и авторизованными пользователями. Первый вариант считается «более безопасным», но только потому, что для обеспечения надёжной защиты практически ничего настраивать и не нужно. Но при грамотной организации авторизованного доступа, предполагающего работу с FTP локальных пользователей системы, можно обеспечить безопасность ничуть не хуже, чем при использовании анонимного доступа.

Настройка в режиме анонимного доступа

Работа vsFTPd в данном режиме заключается в том, что действия с файлами на удалённом сервере производятся одним определённым по умолчанию пользователем, например, пользователем с именем «ftp» или «anonymous», при этом в качестве пароля используется e-mail.

Чтобы включить анонимный доступ по FTP нужно в фале vsftpd.conf определить значение «YES» для соответствующей директивы:

Теперь для управления файлами будет использоваться определённый каталог (обычно это /srv/ftp) и определённый пользователь — обычно ftp.

Можно определить и другое расположение файлов для анонимного доступа по FTP, т. е. изменить домашнюю директорию пользователя ftp:

Если нужно, чтобы анонимные пользователи могли ещё и загружать файлы на удалённый сервер, то это позволит сделать директива:

Теперь можно скопировать необходимые для анонимного доступа файлы в домашнюю папку пользователя ftp и перезапустить демон vsftpd:

$ systemctl restart vsftpd

Обычно этого набора настроек достаточно для организации анонимного FTP-доступа. Для проверки соединения можно выполнить команду ftp address_host:

что в случае успешного выполнения даст примерно такой вывод:

Настройка в режиме авторизованного доступа

Для авторизованного доступа проще всего включить использование локальных учётных записей на сервере. Для этого нужно указать следующую директиву в файле конфигурации vsftpd.conf:

Для задания разрешения локальным авторизованным пользователям загружать файлы на сервер указывается директива:

Примечание: для авторизации локальных пользователей используется пароль пользователя для локального входа в систему.

Теперь нужно перезапустить vsftpd для активации сделанных изменений:

Ограничение пользователей в своих домашних каталогах

Для определения пользователей, которым разрешён доступ только к своему домашнему каталогу существуют директивы:

Первая включает использование списка пользователей, вторая определяет файл, в котором в каждой строке перечислены пользователи с доступом только к своим домашним каталогам. Если при этом ещё указать директиву:

которая «запирает» в chroot() локальных пользователей и выше своих домашних каталогов они подняться не смогут, то в этом случае пользователи в файле vsftpd.chroot_list ограничиваться своими домашними каталогами не будут, в отличии от тех, кто в этот список не внесён.

При распределении FTP-доступа среди пользователей может возникнуть ошибка, которая возникает из-за того, что локальный пользователь имеет права на запись в корне домашнего каталога, что по соображениям безопасности недопустимо. Эта ошибка выглядит следующим образом:

Лучшим способом исправить эту ошибку является указание некоего общего корневого каталога, куда при подключении будут попадать все пользователи, имея доступ лишь к своим домашним поддиректориям, например:

Можно также для устранения этой ошибки отключить проверку на запись в домашний каталог:

Но всё же это стоит делать лишь тогда, когда есть чёткое понимание, зачем это нужно для конкретной ситуации.

Защита данных с помощью SSL

Чтобы иметь возможность шифровать передаваемые данные, следует настроить vsFTPd в режиме FTPS. Это та же самая передача данных по FTP, но организованная поверх SSL – протокола. Шифрующего и проверяющего данные с помощью сертификатов и ключей.

Для включения режима FTPS нужно задействовать следующую директиву:

По умолчанию в конфигурационном файле vsftpd.conf также присутствуют опции, определяющие сертификаты и ключи, например:

Эти сертификат и ключ необходимо заменить. Для использования FTPS необходимо использовать сертификат и ключ. Cгенерированные (или полученные) для конкретного сервера или компьютера.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Оцените статью