6
août
2020
10:36

«Transmission de fichiers volumineux d'un smartphone à un PC sous Linux»

6 août 2020 10:36

Tâche: téléchargez des photos par Wi-Fi d'un smartphone vers un ordinateur personnel exécutant Linux.

Malheureusement, la décision de transférer des fichiers à l'aide du programme SHarL'EIT ne convient pas - il n'y a pas de client pour Linux, il n'y a que l'émulation.
Option avec "nuages" (disk.yandex.ru, Google Disque, Nuage Mail.ru) n'a pas envisagé en raison des frais généraux - transfert vers un serveur de troisième partie via Internet, puis téléchargement à partir de celui-ci. Bluetooth ne convient pas - trop lent. J'ai choisi une version éprouvée avec FTP.

Procédure:

  1. Sur l'ordinateur soulevé FTP Server Proftpd :

sudo apt-get install proftpd

Fichier de configuration ProfTPD modifié comme suit:

sudo nano /etc/proftpd.conf

Include /etc/proftpd/modules.conf
UseIPv6 off
IdentLookups off
ServerName "ordinateur_nom"
ServerType standalone
DeferWelcome off

MultilineRFC2228 on
DefaultServer on
ShowSymlinks off

TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200

DisplayLogin welcome.msg
DisplayChdir .message true
ListOptions "-l"

DefaultRoot /home/vladimir/ftp #Le nom du catalogue racine FTP

<Directory /home/vladimir/ftp> # Catalogue racine FTP
Umask 022 022
AllowOverwrite off
<Limit MKD STOR DELE XMKD RNRF RNTO RMD XRMD>
DenyAll
</Limit>
</Directory>

<Directory> /home/vladimir/ftp/upload/> # Subdir "Télécharger" - pour l'enregistrement, la lecture, la suppression
Umask 022 022
AllowOverwrite on
<Limit MKD STOR DELE XMKD RNRF RNTO RMD XRMD>
AllowAll
</Limit>
</Directory>

AllowStoreRestart on

Port 21 # Port standard, mais vous pouvez le changer en votre

<IfModule mod_dynmasq.c>
</IfModule>

MaxInstances 8

User proftpd
Group nogroup

Umask 022 022
AllowOverwrite on

TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log

<IfModule mod_quotatab.c>
QuotaEngine off
</IfModule>

<IfModule mod_ratio.c>
Ratios off
</IfModule>

<IfModule mod_delay.c>
DelayEngine on
</IfModule>

<IfModule mod_ctrls.c>
ControlsEngine off
ControlsMaxClients 2
ControlsLog /var/log/proftpd/controls.log
ControlsInterval 5
ControlsSocket /var/run/proftpd/proftpd.sock
</IfModule>

<IfModule mod_ctrls_admin.c>
AdminControlsEngine off
</IfModule>

<Limit LOGIN>
AllowUser vladimir2 # Connexion supplémentaire pour FTP
DenyALL # Pour le reste, l'entrée est interdite
</Limit>

UserAlias ftp vladimir2 # Connexion FTP en tant que pseudonyme VLadimir2

Include /etc/proftpd/conf.d/

  • a également changé le fichier de coquilles, ajoutait la nologine
    Lorsque vous effectuez sudo nano /etc/shells Ajout de la dernière ligne

    # /etc/shells: valid login shells
    /bin/sh
    /bin/dash
    /bin/bash
    /bin/rbash
    /usr/sbin/nologin

  • Modification du mot de passe de l'utilisateur FTP:

    sudo passwd ftp

  • Vérifié la configuration du service:

    sudo /etc/init.d/proftpd check-config

  • Lancé le service ProfTPD:

    sudo /etc/init.d/proftpd start

  • J'ai vérifié à partir du client que la connexion au serveur fonctionne:

    ftp my_IP-address

a introduit le nom de l'utilisateur FTP "et le mot de passe de l'utilisateur FTP, entré dans le répertoire - tout est en ordre.

    1. Sur le téléphone sous etroid installé Gestionnaire de fichiers à partir de Google PlayMarket: File d'attenteanager.
      Un autre client FTP puissant -Etftp
  1. Les deux appareils - PC et smartphone sont connectés au même réseau local (via Wi -fi ou Wire - peu importe).
  2. Connecté depuis un smartphone via l'icône "Gestionnaire de fichiers" - "Services à distance" au serveur FTP par son adresse IP (login et mot de passe saisis) et fichiers transférés sur computer.

Le déchargement de fichiers avec un PC n'est pas un téléphone (ajout du 01.10.2021):

Si le fichier de configuration est activé des restrictions, il ne sera pas possible de transférer des fichiers d'un PC vers le smartphone.
La restriction de la lecture et de la suppression des fichiers du dossier "Télécharger" sur FTP est la suivante:

<Directory /home/vladimir/ftp/upload/>
<Limit READ DELE>
DenyAll
</Limit>

Au début, j'ai utilisé ces directives, mais j'ai ensuite supprimé du fichier proftpd.conf, car souvent, il est nécessaire et chargé d'un PC au téléphone. Maintenant, la charge et le déchargement sur FTP fonctionnent.

Solution pour accéder aux problèmes - Ajout du 04.10.2021

Après avoir connecté via FTP, il est impossible de créer un fichier ou un catalogue sur le serveur FTP

J'ai rencontré ce problème dans le système d'exploitation SParky Linux (вариант Debian).

Symptômes:
Sur un PC sous le contrôle de Debian, après s'être connecté au serveur FTP, il est impossible de créer un fichier ou un répertoire pour télécharger des fichiers d'un smartphone vers un PC. Dans le même temps, le client FTP écrit une erreur sur l'écran "Accès" ou "Fichier introuvable".

Erreurs de base et problèmes de problèmes:
1. Problèmes avec les chemins

  • Vérifiez que les chemins du fichier Proftpd.conf к каталогу "public" или "upload" совпадают с реальными путями, названием папок на компьютере пользователя (например, /home/vladimir/ftp/upload, etc.).

2. Droits d'accès incorrects (pas de droits d'écriture ou de création)

  • Suivez la commande dans la console:

    sudo chmod -R 0775 /home/user/ftp

user - Nom du répertoire de travail du compte utilisateur. Cette commande autorise le propriétaire et le groupe auquel il appartient à lire, écrire et exécuter des fichiers dans les répertoires FTP.

3. Attribution du «propriétaire» à un répertoire

Le problème se trouve dans OS Debian.

  • Suivez la commande dans le terminal:

    sudo chown -R ftp:users /home/user/ftp

où FTP est le compte, sous lequel P fonctionneroftpd, userS est le groupe "Tous les utilisateurs".

Ou, pour une restriction plus forte des droits:

sudo chown -R user:user /home/user/FTP

Remarque : Par défaut, propriétaire user:user
user - Ваше имя пользователя и группа.

Lorsque vous démarrez Proftpd в Debian avec le fichier de configuration d'Ubuntu, une erreur se produit

Il est nécessaire de supprimer dans le fichier de configuration (sudo nano /etc/proff.conf) Ligne:
IdentLookups off

Problèmes avec le service Proftpd в Linux Mint 21 "Vanessa" et leur décision (23.08.2022)

Lors du passage à Linux Mint 21 "Vanessa" le premier problème est survenu - le programme d'installation pointait vers le package "prOftpd" qui est incompatible avec Mint 21. J'ai dû le supprimer avant la mise à jour avec l'aide "mint-update ":

sudo apt-get remove proftpd

Après une transition réussie vers LM 22, j'ai essayé d'installer le programme, puis le deuxième problème s'est posé - erreurs d'installation Proftpd:

fatal: LoadModule: error loading module 'mod_tls.c'

Solution du problème:

sudo nano /etc/proftpd/modules.conf

Commenté de nombreux modules. Je n'ai laissé que quelques pièces. Voici le fichier modules.conf после отключения в нём строк:

ModulePath /usr/lib/proftpd
ModuleControlsACLs insmod,rmmod allow user root
ModuleControlsACLs lsmod allow user *
LoadModule mod_ctrls_admin.c
LoadModule mod_load.c
LoadModule mod_dynmasq.c
LoadModule mod_exec.c
LoadModule mod_ratio.c
LoadModule mod_site_misc.c
LoadModule mod_facl.c
LoadModule mod_unique_id.c
LoadModule mod_copy.c
LoadModule mod_deflate.c
LoadModule mod_ifversion.c
LoadModule mod_ifsession.c

Ensuite, dans le fichier de configuration principal Prpftpd закомментировал строчку с именем "IdentLookUps ":

sudo nano /etc/proftpd/proff.conf

# If set on you can experience a longer connection delay in many cases.
#IdentLookups off

La dernière course - retiré le masque de systèmemd со службы prOFTPD

sudo systemctl unmask proftpd.serVice

Maintenant, l'installation du service est passée sans problèmes:

sudo apt-get install prOFTPD

L'inclusion et le lancement du service ProfTPD sont également sans "incidents":

systemctl enable proftpd.serVice
systemctl start proftpd.serVice
systemctl status proftpd.serVice

J'ai suivi les erreurs en utilisant la commande JournaLctl -Xeu:

journalctl -xeu proftpd.serVice

Conclusion: Le transfert de données d'un smartphone à un PC utilisant ProfTPD fonctionne également dans Linux Mint 22.

Vérification - Connexion à partir d'un smartphone à l'aide d'un programme "File Manager +" - Удалённые - FTP по ip-адресу ПК с известными именем пользователя и паролем выполнена. Каталог был прочитан и файлы переданы.


Liens:



Publications connexes