LINUX.ORG.RU

vsftpd & android

 , , ,


1

2

Не стал бы я заморачиваться с этим, если бы в мое распоряжение не попал медиа-плеер с wi-fi, прошивка которого паразитирует на линуксе. Сам плеер - это отдельная тема. Но чтобы править на нем конфиги и не протягивать к нему провод, на нем производителем организован FTP-сервер, логин и пароль там вбиваются в настройках прошивки, ip-адрес плеера там же в настройках можно узнать. FTP-клиентов для андроида навалом, на openSUSE на FTP-сервер можно зайти прямо через Dolphin. Ввести логин, пароль и ip даже мне оказалось под силу. Поэтому конфиги на нем можно править хоть с компа, хоть с планшета. Мне это показалось дико-удобным, и дабы на захламлять стол проводами для подключения планшета к компьютеру для переброса файлов, я решил поднять на компьютере FTP-сервер, для чего был установлен демон vsftpd. Полез править его конфиг и на этом история заканчивается.

write_enable=YES
dirmessage_enable=YES
nopriv_user=ftpsecure
local_enable=YES
anonymous_enable=NO
anon_world_readable_only=YES
syslog_enable=YES
connect_from_port_20=YES
ascii_upload_enable=YES
pam_service_name=vsftpd
listen=NO
listen_ipv6=YES
ssl_enable=NO
pasv_min_port=30000
pasv_max_port=30100

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

Ответ на: комментарий от Dron
#!/bin/bash

mkdir /var/ftp/
mkdir /var/ftp/pub
mkdir /var/ftp/pub/FILES

а можно просто

mkdir -p /var/ftp/pub/FILES
(--parents: no error if existing, make parent directories as needed)

das_tier ★★★★★
()
Ответ на: комментарий от mandala

Это снова долгая эпопея. Пишут что sftp входит в пакет OpenSSH, который на сусе стоит по умолчанию. Ставлю на автозапуск демон sshd. Добавляю Secure Shell Server в исключения брандмауэра. Далее нужно сгенерить ключ, как я понял.

~> ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa): yes
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in yes.
Your public key has been saved in yes.pub.
The key fingerprint is:
bd:de:87:bb:c3:97:c2:ca:56:a7:52:5b:2c:a6:19:42 user@Note
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|      E          |
|     .     o     |
|      . ..o +    |
|       .So.*   o |
|        o =.. . =|
|         =.  o.+o|
|        .. .  ++ |
|          . .....|
+-----------------+
Но директория /home/user/.ssh не появилась. Вместо этого появился в хомяке файлик yes с ключом внутри. Что дальше делать?

Grantrol
() автор топика

Dron на компе типа все установлено, только не совсем ясно что с брэндмауэром. Возможно там вручную 22 порт нужно будет прописывать. Как заставить клиент на андроиде подключаться к компьютеру где это sftp работает. Клиент соединение по sftp поддерживает. Он требует логин, пароль и закрытый ключ. Как правильно ключ сгенерить? Где они на компе должны лежать?

Grantrol
() автор топика
Ответ на: комментарий от Grantrol
dron@gnu:~$ su
root@gnu:/home/dron# adduser pisos
Добавляется пользователь «pisos» ...
Добавляется новая группа «pisos» (1010) ...
Добавляется новый пользователь «pisos» (1009) в группу «pisos» ...
Создаётся домашний каталог «/home/pisos» ...
Копирование файлов из «/etc/skel» ...
passwd: пароль успешно обновлён
Изменение информации о пользователе pisos
Введите новое значение или нажмите ENTER для выбора значения по умолчанию
	Полное имя []: 
	Номер комнаты []: 
	Рабочий телефон []: 
	Домашний телефон []: 
	Другое []: 
Данная информация корректна? [Y/n] y
root@gnu:/home/dron# su pisos
pisos@gnu:/home/dron$ cd
pisos@gnu:~$ ls -a
.  ..  .bash_logout  .bashrc  .profile
pisos@gnu:~$ ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (/home/pisos/.ssh/id_rsa): 
Created directory '/home/pisos/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/pisos/.ssh/id_rsa.
Your public key has been saved in /home/pisos/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:JG4RLNAfgJC6197Q1srFGsoo89Pocd4l73fyJ31mPOY pisos@gnu
The key's randomart image is:
+---[RSA 2048]----+
|.o.+.o.          |
|. . o o.         |
|.    oo..        |
|.    ..+         |
| . . .ooS        |
|. . o.+ +        |
| ..*.*.=.    . . |
|o ++=.=+  o o oo=|
| =o.. ..o. +.ooE.|
+----[SHA256]-----+
pisos@gnu:~$ ls -a 
.  ..  .bash_logout  .bashrc  .profile  .ssh
pisos@gnu:~$ ls -a .ssh
.  ..  id_rsa  id_rsa.pub
pisos@gnu:/home/dron$ sftp dron@192.168.0.104
The authenticity of host '192.168.0.104 (192.168.0.104)' can't be established.
ECDSA key fingerprint is SHA256:tF98MlqCXjaX4lDkgJlcmVUoD7+BiC9b6BbQQVmR+iI.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.104' (ECDSA) to the list of known hosts.
dron@192.168.0.104's password: 
Connected to 192.168.0.104.

Dron ★★★★★
()
Последнее исправление: Dron (всего исправлений: 1)
Ответ на: комментарий от Dron

Да, требует закрытый ключ) Я сам понять не могу почему не публичный.

Grantrol
() автор топика
Ответ на: комментарий от Dron

просто не вводи yes, а жми ввод и всё будет

А я уже два часа мучаюсь... o_O

Grantrol
() автор топика
Ответ на: комментарий от Dron

Если скормить клиенту закрытый ключ,он выдает: USERAUTH fail

Если скормить публичный, то: invalid privatekey: [k348fh948fh

Grantrol
() автор топика
Ответ на: комментарий от Grantrol

гуглить название приложения и эту ошибку, а не надо ли генерить на андроид ключи? Я так понимаю ты плагин для тотала используешь, помочь не могу к сожалению у меня нет андроида

Возьми другой sftp клиент поропробуй поставь

Dron ★★★★★
()
Ответ на: комментарий от Dron

Да скорее клиент не работает. На плэй маркете многие жалуются. Хотя по простому FTP он летает. А я за него еще деньги заплатил...

По идее ему нужно только скормить ключ .pub, ввести логин учетной записи из под которой создавался ключ и пароль заданный при создании ключа?

Grantrol
() автор топика
Ответ на: комментарий от Grantrol

По идее нужно только сказать клиенту ip адрес ( или ещё имя пользователя опционально), а всё остальное должно разрулиться само

Dron ★★★★★
()
Ответ на: комментарий от Dron

Блин, а все работает, если только ввести хост, логин и пароль. Ну а ключ автоматически что ли экспортируется или как? Вообще какой смысл в ключе .pub?

Grantrol
() автор топика
Ответ на: комментарий от Dron

А для чего нужен пароль который вводится при создании пары ключей командой ssh-keygen? Если программа sftp-клиент все равно просит пароль от учетной записи?

Grantrol
() автор топика
29 марта 2017 г.
Ответ на: комментарий от Dron

А через DDNS это работать будет? Просто у меня ip-адрес динамический, а подключиться с удаленки захотелось.

Grantrol
() автор топика
Ответ на: комментарий от Grantrol

Интрнет раздается с роутера?

если да, то динднс настраивается на роутере, а с роутера пробрасывается на нужный комп.

constantis
()
Ответ на: комментарий от Grantrol

На то он DDNS что бы именно то что ты хочешь делалось. Да, всё должно быть ок. Но если честно с DDNS дел не имел и ньюансов не знаю, так что тут я не советчик)

Dron ★★★★★
()
Ответ на: комментарий от Dron

А что, есть другой способ подключения по sftp к удаленному компьютеру с динамическим ip-адресом? Я просто реально в этом фишку не рублю, так что мой вопрос может показаться транным.

Grantrol
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.