LinuxForum.Fans
Тема

Как нормально загружать файлы на сервер?

Автор: Ozze 20 сообщений 3629 просмотров
#118440

Интересен ответ от сколько-нибудь опытных администраторов. Как вменяемым способом загружать с другого компа файлы в директории, у которых владелец root?
К примеру:
Есть сервер на ubuntu 10, apache 2. Нужно удобным способом загружать/удалять/заменять файлы в /var/www/host1/ (host2, host3). Да в общем не важно где. Единственное, что пришло в голову подключаться по ssh, менять владельца, по sftp грузть/редактировать файлы, менять владельца опять на root. Но это клиникой попахивает)) Есть нормальные варианты? Как делаете Вы?

#118445

Ozze, есть такая утилита - scp. И не нужно ничего монтировать =). Одной строкой рекурсивно всю нужную директорию копируете на другой компьютер =).

#118447
Ozze написал:
Нужно удобным способом загружать/удалять/заменять файлы в /var/www/host1/ (host2, host3).

а зачем вы эти директории сделали рутовыми? для защиты? ну повесьте на дверь своего туалета 734 замка. И открывайте, как приспичит...

#118462

есть такая утилита - scp. И не нужно ничего монтировать

Насколько я понимаю, проблему рутового владельца оно не решит.

а зачем вы эти директории сделали рутовыми? для защиты? ну повесьте на дверь своего туалета 734 замка. И открывайте, как приспичит...

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

#118465

Создаёте пользователя вася ток чтоб без шелла (это важно)!!! Назначаете права chown vasya:user /var/www/host1/ и сможет заливать через SCP, или как вариант при создании пользователя укажите что домашняя папка /var/www/host1/ но этого не советую. А идеальный вариант поднять фтп.

#118470

Kettler, спасибо. Вполне себе решение. И простое)

Насколько знаю, в ftp все команды передаются без шифрования и пароли в том числе. Хотя кому это может быть нужно...

#118472
Ozze написал:
А что тогда посоветуете? Включать в убунте рутовый логин? Или действительно отдать их другому пользователю, тогда проблема решена. Я пока еще только разбираюсь и не хотелось бы когда приспичит открывать туалет, и обнаруживать, что он вымазан фикалиями без 734 замков...

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

Для апача сделайте третьего юзверя. И при необходимости рулите через него. Пусть апач работает от этого юзера, и ещё сделайте удалённый вход (авторизация по ключу, запрет рута, порт $RAND).

На системе, с которой управляете, настройте конфиги так, что-бы можно было просто набрать
[console]ssh drbatty[/console]
и попасть на свой сервер (примерно так я и попадаю на свой. У вас это не сработает. Что плохо, и неудобно. Конечно у меня работает и scp file.zzz drbatt:directory/, причём без всяких паролей. Зачем они?)

#118474
Kettler написал:
Создаёте пользователя вася ток чтоб без шелла (это важно)!!! Назначаете права chown vasya:user /var/www/host1/ и сможет заливать через SCP, или как вариант при создании пользователя укажите что домашняя папка /var/www/host1/ но этого не советую. А идеальный вариант поднять фтп.

почему без шелла? зачем такое?

Ozze написал:
Насколько знаю, в ftp все команды передаются без шифрования и пароли в том числе. Хотя кому это может быть нужно...

да, в FTP без шифрования. и именно этот протокол и НУЖНО использовать, если секретность и скрытность не к чему. Я практически всегда поднимаю sshd и proftpd. Большие файлы я передаю по FTP, кроме того, я передаю по FTP файлы, когда секретности не нужно. scp я использую лишь в очень особых случаях.

#118476

DrBatty а на фига он нужен обычному юзеру? Ему залить да и хорош (ток думаю придёться прописать sshd и всё).

#118478

Kettler, хз.
Помощь системному администратору » Как нормально загружать файлы на сервер?
для администратора, и для загрузки файлов на сервер - нужно. для хомячков - на винфак животное :lol:

#118482
drBatty написал:

на винфак животное :lol:

?

#118489

Kettler, вы научитесь читать пост ЦЕЛИКОМ, или будете и далее рвать цитаты?
я сейчас начну рвать отдельные буквы из ваших постов, доказывая любое, наперёд заданное заключение. Что вам доказать?

Понравилось выражение? Тихо пофапайте в уголочке.

#118874

Можно и так:

text
#генерим себе ключ:
ssh-keygen 
#легче без пароля.
#потом смотрим на его публичную часть
cat ~/.ssh/id_rsa.pub
#или
ssh-keygen -y

#на удаленном сервере sudo bash -c 'mkdir /root/.ssh; echo "полученная выше строка">>/root/.ssh/authorized_keys'

#теперь можно и заходить в гости на сервер ssh root@server

#или копировать файлы через mc #f9 - Правая(левая) панель - Shell-соединение #потом запомнить путь ctrl+\

Так проще всего. При желании можно кидать свой открытый ключ кому угодно в ~/.ssh/authorized_keys. И подключаться от его имени.

#118886
kroxa90 написал:
Можно и так:

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

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

#118888
kroxa90 написал:
Так проще всего. При желании можно кидать свой открытый ключ кому угодно в ~/.ssh/authorized_keys. И подключаться от его имени.

что-бы кинуть ключ в ~vasya/.ssh для начала нужно подключится с именем этого васи, или с именем root'а.

#118898

Почему надо бояться рута?
Надо просто осознавать, что рут может что-то сломать. Но ломать при этом ничего не надо.

ИМХО, потерять пользовательские данные - это в сотни раз опаснее, чем сломать систему. Систему сейчас поставить минутное дело, если еще и репы локальные, то вообще без проблем, а если еще изредка делать sudo bash -c 'cd /; tar -zc --files=etc`date +%Y_%m_%d-%H-%M`.tar.gz /etc' (и ему подобное), то на систему вообще плевать с колокольни.
Делайте каждодневные резервные копии и пусть система хоть сгинет в пучине адовой.
Но вот учитывая, что пользовательские файлы меняются чуть-ли не ежеминутно. Даже ежечасное резервное копирование может не избавить от горя.

#118909
kroxa90 написал:
Почему надо бояться рута?
Надо просто осознавать, что рут может что-то сломать. Но ломать при этом ничего не надо.

ИМХО, потерять пользовательские данные - это в сотни раз опаснее, чем сломать систему

дык в том-то и дело!!!
имея права рута вы с лёгкостью прибьёте ЛЮБЫЕ данные.
любых пользователей. хоть всех сразу.

kroxa90 написал:
Систему сейчас поставить минутное дело,

оно и раньше было минутным делом, для тех, у кого есть бекап. Но вы учтите, тут удалённый вход, а значит, вам придётся ехать к этому серверу. Это хорошо, если сервер рядом. А если сейчас 3 часа ночи, а сервер - в другом городе? Как вы его подымете? И толку с ваших данных, если этот сервер рухнул?

kroxa90 написал:
а если еще изредка делать sudo bash -c 'cd /; tar -zc --files=etc`date +%Y_%m_%d-%H-%M`.tar.gz /etc' (и ему подобное)

/etc это конечно хорошо. Но этого мало. Кроме того, вы не подумали о том, что в этом бекапе лежат все ваши секретные ключики?

kroxa90 написал:
Но вот учитывая, что пользовательские файлы меняются чуть-ли не ежеминутно. Даже ежечасное резервное копирование может не избавить от горя.

кто мешает юзать DCVS?

#118931
drBatty написал:
а сервер - в другом городе? Как вы его подымете?

Легко, если есть sc или rsc. smile

#118955
i2ks написал:
Легко, если есть sc или rsc.

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

#119009
drBatty написал:
угу. в соседней ветке человеку комп на балконе не запустить. расскажите ему, как это делать blink

дык, думаю у него mb не поддерживает rsc(sc) =) Хотя тому челу проще на пол дня арендовать у соседа монитор, поставить ОС в минимальной конфигурации, что бы ssh был,а дальше допилить. В общем извратиться можно будет. А про rsc почему я сказал, дык, сервера на солярке так поднимал, удаленно, с помощью jumpstart =) но это уже другая история

Войдите или зарегистрируйтесь, чтобы ответить.