Как сделать домашний сервер используя рабочий стол Ubuntu?

26

Я думал сделать свой настольный компьютер Ubuntu на файловом сервере для домашнего использования. У меня есть один старый ноутбук. Могу ли я использовать его в качестве файлового сервера, чтобы моя другая система могла загружать данные или просматривать данные со старого компьютера (сервера). Я хочу сделать его беспроводным, также хочу получить доступ к Интернету и иметь маршрутизатор. Но я понятия не имею, как это сделать на Ubuntu Desktop или на сервере Ubuntu. Я не хочу устанавливать сервер Ubuntu.

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

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

Я устал от использования filezilla, но в Ubuntu доступно только клиентское приложение. Это что-то вроде сервера filezilla в Ubuntu.

Другая система на окнах, а также Ubuntu.
Я новичок в сети и тип сервера, что любая помощь будет оценена.

twister_void
источник
Какие клиенты у вас в сети? Windows, только для Linux, портативные устройства, медиаплееры и т. Д. Это очень важно для того, чтобы дать рекомендацию о том, какой тип протокола и серверного приложения можно создать.
gertvdijk
@gertvdijk: Windows и Linux оба.
twister_void
1
Вы спросите, будете ли вы использовать свой новый сервер на основе графического интерфейса или терминала. Я имею в виду, вы установите Ubuntu Desktop и затем сделаете компьютер сервером, или вы установите сервер Ubuntu и затем установите службы. Я хочу знать, прежде чем начать вводить ответ, так как в обоих случаях мне нужно многое объяснить.
Луис Альварадо
@ LuisAlvarado, я хочу сделать свой системный сервер графического интерфейса с помощью Ubuntu Desktop. Ваше заявление «установите Ubuntu Desktop, а затем сделайте компьютер сервером». Ответ гораздо ценнее.
twister_void

Ответы:

19

Поскольку вам нужен сервер на основе графического интерфейса (который представляет собой Ubuntu Desktop, превращенный в замечательный сервер;)), просто выполните следующие шаги, прежде чем продолжить:

  1. Обнови все. Убедитесь, что вы уже обновили и обновили систему

    sudo apt-get update && sudo apt-get upgrade

    Таким образом, мы находимся на одной странице.

  2. Убедитесь, что ваша беспроводная карта работает правильно. Если у вас есть беспроводная карта на базе Broadcom, проверьте установку драйверов Broadcom Wireless . Если у вас есть другой, очень вероятно, что вы найдете ответ в askubuntu после поиска по названию беспроводной карты. В любом случае я буду считать, что он работает правильно.

  3. Установите службу Samba и настройте ее, следуя инструкциям Как включить обнаружение сети и обмен между компьютерами с помощью Samba.

  4. Установка службы SSH (в основном, чтобы облегчить переход между двумя компьютерами Ubuntu), следуя инструкциям Как включить обмен файлами между двумя компьютерами? , Вы также можете использовать замазку в Windows, если хотите. A Как использовать SSH (команды ssh & rsync)? Руководство также доступно.

  5. Если вы собираетесь делиться интернетом через сервер. Под этим я подразумеваю, что ваш маршрутизатор подключится к серверу через проводной кабель, а затем поделится беспроводным доступом в Интернет с другими компьютерами, а затем выполните инструкции « Как подключиться к Интернету и поделиться им» (проводной и беспроводной) . Иначе, если вы хотите сделать это через проводную связь с другим компьютером, то используйте общий доступ к другим компьютерам (через проводной Ethernet).

  6. Если вы также хотите использовать принтер совместно с другими компьютерами, вы можете узнать, что такое сервер CUPS и как использовать принтер (локально или по сети).

  7. Так как вы будете делать сервер, я также рекомендую установить SQUID PROXY, если вы используете общий доступ к интернет-соединению через сервер. Это улучшит использование полосы пропускания в целом и создаст ощущение, что интернет быстрее для всех клиентских ПК . Для установки следуйте первому ответу в разделе « Какие обновленные серверы веб-кэша» доступны (Кэширующий HTTP-прокси) (Автор: Rinzwind)

    Не забудьте настроить прокси-сервер squid в /etc/squid/squid.confили /etc/squid3/squid.confдля разрешений сайта, что должно быть обращено в кеш и другие вещи.

    После выполнения этих 7 шагов у нас должна быть система, которая

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

    • Может подключиться к серверу через SSH или общий доступ Samba без проблем.

    • Сервер может совместно использовать интернет через беспроводное или проводное соединение.

    • Теперь сервер может использовать принтер для всех других компьютеров, включая Windows, например.

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

Дополнительным материалом может быть установка xbmc и размещение всех фильмов на сервере. Затем с помощью параметров конфигурации xbmc включите веб-службу, чтобы остальные компьютеры могли смотреть фильмы с одного и того же сервера. Есть много вещей, которые вы действительно можете сделать с сервером Ubuntu.

Луис Альварадо
источник
Вау!!!!!!! Это 9 вопросов, свернутых в 1.
Адитья
Почему да это;). На его вопрос нужно было много ответов для правильного сервера.
Луис Альварадо
@ LuisAlvarado, спасибо Луис Альварадо. Хороший ответ
twister_void
6

ну, вы можете сделать это с файловым сервером Samba.

Вы можете установить его по sudo apt-get install samba

Сначала отредактируйте следующие пары ключ / значение в разделе [global] файла /etc/samba/smb.conf:

   workgroup = EXAMPLE
   ...
   security = user

Параметр безопасности находится ниже в разделе [global] и комментируется по умолчанию. Кроме того, измените EXAMPLE, чтобы лучше соответствовать вашей среде.

Создайте новый раздел внизу файла или раскомментируйте один из примеров для общего каталога:

[share]
    comment = Ubuntu File Server Share
    path = /srv/samba/share
    browsable = yes
    guest ok = yes
    read only = no
    create mask = 0755

    comment: a short description of the share. Adjust to fit your needs.

    path: the path to the directory to share.

В этом примере используется / srv / samba / sharename, поскольку в соответствии со стандартом иерархии файловой системы (FHS) в / srv должны передаваться данные, специфичные для сайта. Технически общие ресурсы Samba могут быть размещены в любом месте файловой системы, если права доступа правильные, но рекомендуется придерживаться стандартов.

browsable: позволяет клиентам Windows просматривать общий каталог с помощью проводника Windows.

guest ok: allows clients to connect to the share without supplying a password.

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

create mask: determines the permissions new files will have when created.

Теперь, когда Samba настроен, необходимо создать каталог и изменить разрешения. С терминала введите:

sudo mkdir -p /srv/samba/share
sudo chown nobody.nogroup /srv/samba/share/

[Note]  

The -p switch tells mkdir to create the entire directory tree if it doesn't exist. Change the share name to fit your environment.

Наконец, перезапустите службы samba, чтобы включить новую конфигурацию:

sudo restart smbd
sudo restart nmbd

Кредит идет здесь: Samba & для получения дополнительной информации также вы смотрите это.

rɑːdʒɑ
источник
Это просто вырезать и вставить.
don.joey
2
да и я упомянул, где кредит идет.
r13d 13:
СЛИШКОМ. СЛОЖНЫЙ.
Jebeld17
4

Установка openssh-serverпозволит вам получить безопасный доступ ко всему диску через Интернет или с устройств в вашем доме, если они поддерживают sFTP. Если по какой-либо причине это не так, акция Samba может дополнить это, как подробно описано в другом ответе. Вот как я это сделал:

Установите сервер OpenSSH :apt-get install openssh-server

Откройте порт 22 : я использую несколько способов сделать это gufw(возможно, вам придется установить его, я не уверен, по умолчанию ли он). Если вы хотите открыть его в Интернете на более позднем этапе, вам нужно будет перенаправить порт 22 на сервер с вашего маршрутизатора. Обычно вы можете сделать это через веб-интерфейс на маршрутизаторе. Если вы можете, назначьте серверу статический ip тоже там (т.е. отключите DHCP для сервера).

Отредактируйте настройки конфигурации ssh : создайте резервную копию и откройте файл /etc/ssh/sshd_configи измените / добавьте настройки

PermitRootLogin no
AllowUsers guarav_java other_user_if_necessary

Для максимальной безопасности вы можете настроить вход на основе ключей, как описано здесь https://help.ubuntu.com/community/SSH/OpenSSH/Keys , но этого будет достаточно, если вы просто установите действительно надежный пароль и сохраните его в каждая клиентская машина.

Вы можете создать пользователя для каждого подключающегося. Если вы сделаете это, вы можете добавить их всех в одну группу (скажем, ssh_users) и разрешить всем в этой группе подключаться с помощью AllowGroups ssh_users. (Для получения дополнительной информации см. Http://knowledgelayer.softlayer.com/learning/how-do-i-permit-specific-users-ssh-access )

Проверьте правильность настроек : вы можете проверить, не допустили ли вы синтаксическую ошибку в файле конфигурации, с помощьюsshd –t

Подключиться с сервера к себе : на этом этапе вы сможете подключиться к машине с самого себя через терминал ssh localhost(при условии, что у вас уже есть openssh-client). Затем попробуйте с другой машины в вашей сети ssh <ip-address>.

Если IP-адрес сервера является статическим в вашей домашней сети, вы можете добавить запись /etc/hostsна компьютер с Ubuntu, подключив к нему линию

server_ip_address        theserver

Это будет означать, что вы можете просто подключиться ssh theserver, или как вы это называете. Вы можете сделать то же самое для Windows (см. Здесь: http://helpdeskgeek.com/windows-7/windows-7-hosts-file/ )

Подключение через sFTP : Если вы можете подключиться к серверу с другого компьютера в вашей домашней сети через терминал, вы можете подключиться к нему через sFTP и безопасно просматривать и передавать файлы. Лично я настроил сочетание клавиш, чтобы я мог подключать / отключать сервер с помощью команд клавиатуры (в Ubuntu):

gvfs-mount sftp://user@ipaddress
gvfs-mount -u sftp://user@ipaddress

( -uФлаг является командой umount)

Поместите их в поле «Command:» Системных настроек> Клавиатура> Сочетания клавиш> Пользовательские сочетания клавиш> + (Новый ярлык), присвойте ему имя, нажмите «Применить», затем щелкните по правому столбцу и введите комбинацию клавиш ( CTRL+SHFT++и CTRL+SHFT+-соответственно кажутся логичными) ,

Вы можете заменить IP-адрес на то, что в /etc/hosts. Это смонтирует сервер как диск в Nautilus, и вы сможете просматривать папки точно так же, как и на вашем локальном компьютере. В Windows вы можете подключиться с помощью программного обеспечения FTP (Filezilla и т. Д.). Я не пробовал, но уверен, что, возможно, интеграция sFTP в самом проводнике Windows тоже.

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

Подключение извне : последний шаг - посмотреть, сможете ли вы подключиться через Интернет, то есть по соседству или что-то еще. Если у вас нет статического IP-адреса для вашего дома, это может быть сложно поспевать за тем, каков ваш IP-адрес. Я лично использую динамический DNS-сервис ( http://afraid.org/ - бесплатный), но вы можете найти другое решение лучше. Затем вы должны заменить ipaddress в приведенных выше командах монтирования на динамический веб-адрес, который указывает на вашу домашнюю сеть.

Последний совет по безопасности: следите за своим журналом SSH, если вы хотите использовать это ( /var/log/auth.log), просто чтобы убедиться, что ничего плохого не происходит. Если вы обнаружите, что это так, Fail2Ban является одним из решений ( http://www.fail2ban.org/wiki/index.php/Main_Page и https://help.ubuntu.com/community/Fail2ban ). Чтобы минимизировать риск, вы можете изменить порт, который прослушивает SSHD, на что-то нестандартное, например 500, и изменить соответствующие правила переадресации портов на маршрутизаторе и брандмауэре сервера (почему: /server/189282 / why-change-default-ssh-port ), хотя я лично не проверял это с gvfs-mount.

mtdevans
источник
2

Щелкните правой кнопкой мыши папку, которую вы хотите использовать в качестве основного общего каталога, перейдите к «Параметры общего доступа». Появится всплывающее диалоговое окно с инструкциями по установке дополнительных пакетов, необходимых для правильной работы домашнего сервера, установки, перезагрузки, повторения и разрешения общего доступа к папкам. Это так просто! :)

Jebeld17
источник
1
Я хочу поделиться всеми своими дисками и домашней папкой через локальную сеть, на этих системах установлены Ubuntu и Windows. Так как я могу поделиться.
twister_void
Откройте терминал: Файловая система «Sudo nautilus» <Домашняя страница (щелкните правой кнопкой мыши) <Параметры общего доступа. Возможно, вам также придется изменить разрешения, но попробуйте сначала не изменять разрешения. Домашний каталог - это единственный каталог, которым я бы порекомендовал поделиться. Другие слишком рискованны и могут повредить вашу файловую систему.
Jebeld17