Толик Панков
hex_laden
............ .................. ................

November 2020
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

Толик Панков [userpic]
Заведение новых пользователей в PuppyRus Linux. И FTP в локальной сети заодно.

По-умолчанию в PuppyRus один пользователь, и тот root, что не всегда есть хорошо. В последних дистрибьютвах этот недостаток вроде как устранили, но в которых не устранили придется создавать пользователей вручную.

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

А пользователя мы будем создавать для того, чтобы в локальной сети устроить FTP-сервер.

Создание пользователя
.
1.Заходим в терминал (или Mindlight commander) и переходим в корневой каталог (в терминале командой cd /)
2.Создаем каталог /home (mkdir /home) если его еще нет
3.Выполняем команду adduser имя_пользователя
В моем случае пользователь будет ftpuser (команда, соответственно adduser ftpuser)
4. В ответ на запрос New Password набираем придуманный пользователю пароль. Символы отображаться не будут.
Если случайно ошиблись (или просто хочется поменять пароль пользователю), то пароль можно поменять командой passwd имя_пользователя
Иногда случающаяся ошибка:
Почему-то на некоторых форумах встречал инструкцию по созданию нового пользователя в PuppyRus, где указывалось, что перед созданием пользователя командой adduser, нужно создать ему в каталоге home подкаталог с таким же названием, как и имя пользователя. Так вот, во-первых, команда adduser создает каталог пользователя сама, а во-вторых, если все-таки создать такой каталог перед выполнением команды adduser, то права на каталог будут принадлежать пользователю root, соответственно, работающие от созданного пользователя программы не смогут записать или прочитать файлы из домашнего каталога пользователя.
Также команда adduser автоматически копирует содержимое каталога /etc/skel в домашний каталог пользователя.
Если вы все-таки создали каталог пользователя до создания самого пользователя, необходимо передать ему права на его каталог командой
chown имя_пользователя путь, т.е. например
chown ftpuser /home/ftpuser

Узнать текущего владельца папки или файла можно командой
ls -la путь

В нашем же случае (и особенно если планируется не единственный пользователь на FTP-сервере) удобнее будет создать отдельную группу для пользователей, например группу ftp, что позволит в случае необходимости более гибко управлять правами нескольких пользователей. Делается это следующей командой:
addgroup имя_группы, т.е. addgroup ftp
Группу пользователю можно установить как при создании пользователя (до этого сама группа должна быть создана) командой adduser -G имя_группы имя_пользователя, так и переместить уже существующего пользователя в нее командой addgroup имя_группы имя_пользователя

Изменить группу, которой принадлежит файл или директория можно командой
chown .имя_группы путь_к_файлу_или_директории, пользователя и группу одновременно командой
chown имя_пользователя:имя_группы путь_к_файлу_или_директории

Запуск FTP-сервера.

FTP-сервер уже имеется в дистрибьютиве PuppyRus Linux и может быть запущен из графической среды (Меню -> Сеть -> PureFTPd сервер FTP)
В появившемся при запуске окне нужно оставить все галочки в таком виде, как на скриншоте, и нажать кнопку «Продолжить».

Если все сделано правильно, и не включен (ну или правильно настроен) файерволл, ftp будет работать.



На всякий случай команда удаления пользователя
deluser имя_пользователя
После выполнения команды можно удалить весь домашний каталог пользователя. (rm -rf /home/имя_пользователя ОСТОРОЖНЕЕ С rm -rf не удалите лишнего!)
и команда удаления группы
delgroup имя_группы
Будьте осторожнее с этими командами!
Дополнительно:
Список всех групп в системе хранится в файле /etc/group. Просмотреть его можно командой
cat /etc/group, а о структуре записей прочитать, например, здесь
Список пользователей системы находится в /etc/passwd, посмотреть его можно аналогично предыдущему, о структуре записей почитать здесь.
Настоятельно не рекомендую эти файлы править руками, если вы точно не знаете что делаете!
Скачать заметку (DOC, Yandex.Disk)
Скачать заметку (PDF, Mega.NZ)
Благодарю [info]ketmar и членов сообщества PuppyRus за ценные дополнения.

Comments

я не понял, у вас там что, группы «users» нет? если есть, то корректней будет chown stupid:users /home/stupid

алсо, для твоего случая, похоже, не вредно будет ещё и groupadd ftp. во-первых, красивше, а во-вторых, группы позволяют гибче рулить стандартными правами, не скатываясь до posix acl.

ну, ты понял — засунуть ftpuser в группу ftp, а не в users.

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

Под рутом работать не всегда есть хорошо, согласен.
В PuppyLinux вообще интересная идеология. Он в основном используется как live-дистрибьютив, плюс есть возможность сохранять данные на жесткий диск и подключать дополнительные приложения (с помощью SFS-модулей). При этом он на начальном уровне весьма безгеморройно устанавливается и настраивается, а также работает почти на любом утюге (у меня сейчас крутится на PII со 128 Мб оперативной памяти) при этом со вполне неплохим графическим интерфейсом. Вообще я хотел использовать его для одной задачи - развести в локальной сети доступ к I2P и Tor-овскую ноду, ибо основной сервер трогать не хочется - там слакварь настроенная не мной и походу на века (раз она даже физическое утопление пережила).
Но что-то закусило меня ковыряться с паппиком :)

>Под рутом работать не всегда есть хорошо
никогда не хорошо.

а так — подобные ливы вполне обычны. разве что для древней техники их мало.

>там слакварь настроенная не мной и походу на века
дык это фича слаки. у неё вообще два состояния: «нихуя не работает» и «хуй уронишь». после кривых апдейтов или ковыряний она обычно переходит из второго в первое. %-)

Вот-вот, действительно фича. Я думал она умрет после замены пострадавшей материнки на новую - не умерла, чем очень меня удивила.

а чего ей помирать-то — чай, не винда. я как-то вообще с машины на машину систему при помощи cp переносил, и ничего, взлетела. ну, лоадер пришлось пнуть, конечно. и всё.

Ничего себе! Oo

Группа users есть, но пользователя туда действительно надо руками засовывать.
>не вредно будет ещё и groupadd ftp
Кстати да, почитал - не вредно и полезно даже, ты абсолютно прав. Только команда у нас addgroup, ей, кстати и нужный юзер в нужную группу засовывается.

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

groupadd, скорее всего, тоже есть. addgroup обычно обёртка. но тут да, может быть и так, и так.

>Посоветуй, если не сложно, как более опытный, хороший концептуальный материал
>по теме.

честно говоря, я не знаю. у меня это знание из разряда «где ставить абзацы», «как делить программу на функции» и ты пы. то есть, оно за годы работы образовалось, но неформализованное и не из какого-то источника.

вообще, очень просто: для некоего вида деятельности — группа. интерактивные юзеры — в users. ftp — в ftp (вместе с сервером, пусть там же сидит). www — в www. почтовик можно в mail засунуть. и так далее. идея ясна, думаю.

плюс, права на доступ к устройствам обычно делаются путём создания груп типа video, audio, cdrom и ты пы, и распихивания устройств по этим группам. а юзера, которому к устройству доступ нужен, просто в соответствующую группу добавляют (не забываем, юзер может быть в куче групп одновременно).

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

Благодарю. В единственный момент не въехал пока - про сервер. Создать отдельного юзера, переустановить из-под него сервер? Или просто передать права на все файлы которые к серверу относятся в группу и отдельному пользователю? И запускать тоже из под него, соответственно.

просто права дать и владельца назначить. в принципе, это обычно делают авторы пакета.

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

обычно делают авторы пакета
К сожалению, не тот случай.
биндить сокеты на порты до 1024 может только рут
Вот тут, похоже, у меня "баня и сгорела". Сервер в памяти крутится, а вместо коннекта фига.
в какого юзера и группу он должен спуститься после инициализации
Весь readme, сайт и просто гугль изгрыз, так и не нашел как его заставить это сделать. Сервер PureFTPd. Если мало ли знаешь решение - буду благодарен за совет.

а не факт, что оно умеет. обычно www-cерверы себе привилегии спускают, ftp вроде бы нет. быстропоиск говорит, что не умеет. ну и пусть от рута работает, жлоб.

Да, пусть.
Потому что хоть и удалось его запустить не от рута (переопределив ему порты), но логинить юзверей (даже того, под которым запущен) он отказался, а разводить виртуальных пользователей для домашнего сервера как-то извращение совсем. Обрезал ftp-шному юзеру командную оболочку (паранойя, конечно, но так все-таки правильнее) единственное что.

да правильно, конечно. ему вообще оно не надо.

а зачем тебе фтп вообще?

Для того, чтобы кидать некоторые файлы с/на чужие телефоны/ноутбуки если девайс по каким-то причинам не умеет самбу, плюс в винде я постоянно в far сижу, а там FTP-клиент есть, удобнее им что-нибудь на линуксовый комп заливать, особенно скачанное с интернета, т.к. на PII браузер все-таки тормозит ощутимо.

бедные люди. больше 10 лет уже, а у них до сих пор scp нет. слушайте, у вас в этой винде (говноиде, иосе) вообще хоть что-нибудь полезное из коробки есть?

да, scp нет :(
А есть ли полезное - ну все от точки зрения зависит. Это вам со Стейнкраузом в комментариях к соседнему посту обсудить надо :)

угу. «проверка подлинности» и notepad. который тоже бесполезен, потому что компилятора не дали.

Можно стихи писать :) И даже в тифаретник выкладывать (интернет испортил ведь тоже из коробки заводится) :)