Jak zrobić serwer domowy za pomocą pulpitu Ubuntu?


26

Myślałem, aby zrobić moją maszynę stacjonarną Ubuntu na serwerze plików do używania jej w domu. Mam jednego starego laptopa. Czy mogę użyć go jako serwera plików, aby mój inny 4 system mógł pobierać dane lub wyświetlać dane z tego starego komputera (serwera). Chcę, aby był bezprzewodowy i chcę mieć dostęp przez Internet, a także mieć router. Ale nie mam pojęcia, jak to zrobić na Ubuntu Desktop lub serwerze Ubuntu. Nie chcę instalować serwera Ubuntu.

Chcę udostępnić cały mój Dysk. Chcesz hasła lub jakiegoś zabezpieczenia dla jakiegoś folderu, aby ograniczyć dostęp.

* Widzę w Przewodniku krok po kroku, jak mogę to zrobić i jak uzyskać dostęp z innego komputera * .

Mam dość korzystania z filezilli, ale w Ubuntu jest dostępna tylko aplikacja kliencka. Jest coś takiego jak serwer Filezilla w Ubuntu.

Drugi system działa w systemie Windows, podobnie jak w Ubuntu.
Jestem nowy w tworzeniu sieci i serwerów. Każda pomoc byłaby mile widziana.


Jakiego rodzaju klientów masz w swojej sieci? Windows, tylko Linux, urządzenia przenośne, odtwarzacze multimedialne itp. Jest to bardzo istotne, aby sformułować zalecenie dotyczące rodzaju protokołu i aplikacji serwera.
gertvdijk

@gertvdijk: Windows i Linux Zarówno.
twister_void

1
Możesz zapytać, czy będziesz używać nowego serwera opartego na graficznym interfejsie użytkownika, czy opartego na terminalu. Mam na myśli to, czy zainstalujesz Ubuntu Desktop, a następnie uczynisz komputer serwerem, czy zainstalujesz serwer Ubuntu, a następnie zainstalujesz usługi. Chcę wiedzieć, zanim zacznę pisać odpowiedź, ponieważ w obu przypadkach muszę wyjaśnić wiele rzeczy.
Luis Alvarado

@LuisAlvarado, chcę zrobić mój systemowy serwer GUI przy użyciu Ubuntu Desktop. Twoje oświadczenie „zainstaluj Ubuntu Desktop, a następnie uczyń komputer serwerem”. Odpowiedź jest o wiele bardziej doceniana.
twister_void

Odpowiedzi:


19

Ponieważ chcesz serwer oparty na graficznym interfejsie użytkownika (który jest Ubuntu Desktop przekształcony w niesamowity serwer;)), po prostu wykonaj następujące kroki przed kontynuowaniem:

  1. Zaktualizuj wszystko. Upewnij się, że już zaktualizowałeś i zaktualizowałeś system

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

    W ten sposób jesteśmy na tej samej stronie.

  2. Upewnij się, że karta bezprzewodowa działa poprawnie. Jeśli masz kartę bezprzewodową opartą na Broadcom, sprawdź Instalowanie sterowników bezprzewodowych Broadcom . Jeśli masz inny, jest bardzo prawdopodobne, że znajdziesz odpowiedź w askubuntu po wyszukaniu jej z nazwą karty bezprzewodowej. W każdym razie założę, że działa poprawnie.

  3. Zainstaluj usługę Samba i skonfiguruj ją, postępując zgodnie z instrukcjami dotyczącymi włączania funkcji wykrywania sieci i udostępniania między komputerami za pomocą Samby

  4. Instalowanie usługi SSH (głównie w celu ułatwienia sobie przejścia między 2 komputerami Ubuntu), postępując zgodnie z instrukcją Jak włączyć udostępnianie plików między dwoma komputerami? . Możesz także użyć szpachli w systemie Windows, jeśli chcesz. A Jak korzystać z SSH (komendy ssh & rsync)? przewodnik jest również dostępny.

  5. Jeśli zamierzasz udostępniać Internet przez serwer. Mam na myśli to, że router połączy się z serwerem za pomocą kabla przewodowego, a następnie udostępni bezprzewodowo Internet innym komputerom, a następnie postępuje zgodnie z instrukcją Podłączanie i udostępnianie połączenia internetowego (przewodowe i bezprzewodowe) . Jeśli chcesz to zrobić za pomocą połączenia przewodowego z innym komputerem, to Udostępnianie połączenia innym komputerom (przez przewodową sieć Ethernet)

  6. Jeśli chcesz również udostępnić drukarkę innym komputerom, możesz śledzić serwer Co to jest CUPS i jak udostępniać drukarkę (lokalnie lub przez sieć)

  7. Ponieważ będziesz tworzył serwer, zalecam również zainstalowanie SQUID PROXY, jeśli zdarzy ci się dzielić połączenie internetowe za pośrednictwem serwera. Poprawi to ogólnie wykorzystanie przepustowości i poczujesz, że Internet jest szybszy dla wszystkich komputerów klienckich . Aby zainstalować, postępuj zgodnie z pierwszą odpowiedzią na stronie Co dostępne są zaktualizowane serwery pamięci podręcznej WWW (buforowanie serwera proxy HTTP) (autor: Rinzwind)

    Pamiętaj, aby skonfigurować proxy Squid w /etc/squid/squid.conflub /etc/squid3/squid.confdla uprawnień strony, co powinno być odwrócone buforowane i inne rzeczy.

    Po wykonaniu tych 7 kroków powinniśmy mieć system, który

    • Mogą udostępniać folder innym komputerom w sieci LAN i mogą wyświetlać folder współdzielony bez nadmiernego wysiłku, uprawnień lub dodatkowych kroków.

    • Może bez problemu łączyć się z serwerem przez SSH lub Samba.

    • Serwer może współdzielić Internet za pośrednictwem połączenia bezprzewodowego lub przewodowego.

    • Serwer może teraz udostępniać drukarkę wszystkim innym komputerom, w tym Windows.

Daj mi znać, jeśli któryś z tych kroków wydaje się trudny, aby ci pomóc.

Dodatkową rzeczą może być instalacja xbmc i umieszczenie wszystkich filmów na serwerze. Następnie za pomocą opcji konfiguracji xbmc włącz usługę internetową, aby pozostałe komputery mogły oglądać filmy z tego samego serwera. Istnieje wiele rzeczy, które możesz zrobić z serwerem Ubuntu.


Łał!!!!!!! To 9 pytań w 1
Aditya

Dlaczego tak jest;). Jego pytanie wymagało tylu odpowiedzi, by serwer działał poprawnie.
Luis Alvarado,

@LuisAlvarado, Dzięki Luis Alvarado. Dobra odpowiedź
twister_void

6

cóż, możesz to zrobić za pomocą serwera plików Samba.

możesz go zainstalować przez sudo apt-get install samba

Najpierw edytuj następujące pary klucz / wartość w sekcji [global] /etc/samba/smb.conf:

   workgroup = EXAMPLE
   ...
   security = user

Parametr bezpieczeństwa znajduje się dalej w sekcji [globalnej] i jest domyślnie komentowany. Zmień także PRZYKŁAD, aby lepiej pasował do środowiska.

Utwórz nową sekcję na dole pliku lub usuń komentarz z jednego z przykładów, aby udostępnić katalog:

[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.

W tym przykładzie użyto / srv / samba / sharename, ponieważ zgodnie ze standardem hierarchii systemów plików (FHS), / srv to miejsce, w którym powinny być podawane dane specyficzne dla witryny. Technicznie udziały Samby można umieszczać w dowolnym miejscu w systemie plików, o ile uprawnienia są prawidłowe, ale zalecane jest przestrzeganie standardów.

przeglądalny: umożliwia klientom Windows przeglądanie udostępnionego katalogu za pomocą Eksploratora Windows.

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

tylko do odczytu: określa, czy udział jest tylko do odczytu lub czy przyznane są uprawnienia do zapisu. Uprawnienia do zapisu są dozwolone tylko wtedy, gdy wartość jest równa no, jak pokazano w tym przykładzie. Jeśli wartość wynosi tak, dostęp do udziału jest tylko do odczytu.

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

Teraz, gdy Samba jest skonfigurowana, katalog musi zostać utworzony, a uprawnienia zmienione. Z terminala wpisz:

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.

Na koniec zrestartuj usługi samba, aby włączyć nową konfigurację:

sudo restart smbd
sudo restart nmbd

Kredyt trafia tutaj: Samba i aby uzyskać więcej informacji, również to przeglądasz.


To jest po prostu wyciąć i wkleić.
don.joey

2
tak i wspomniałem, dokąd trafia kredyt.
rɑːdʒɑ

ZBYT. SKOMPLIKOWANE.
Jebeld17

4

Zainstalowanie openssh-serverumożliwi bezpieczny dostęp do całego dysku przez Internet lub z urządzeń w domu, o ile obsługują one sFTP. Jeśli jakikolwiek nie z jakiegokolwiek powodu, udział Samby może uzupełnić to, jak szczegółowo opisano w innej odpowiedzi. Oto jak skonfigurowałem mój:

Zainstaluj serwer OpenSSH :apt-get install openssh-server

Otwórz port 22 : Używam tego na wiele sposobów gufw(być może trzeba go zainstalować, nie jestem pewien, czy to domyślny). Jeśli chcesz otworzyć go w Internecie na późniejszym etapie, musisz przekierować port 22 na serwer z routera. Zwykle można to zrobić za pośrednictwem interfejsu internetowego na routerze. Jeśli możesz, przypisz do serwera również statyczny adres IP (tj. Wyłącz DHCP dla serwera).

Edytuj ustawienia konfiguracji ssh : Utwórz kopię zapasową i otwórz plik /etc/ssh/sshd_configoraz zmień / dodaj ustawienia

PermitRootLogin no
AllowUsers guarav_java other_user_if_necessary

Aby zapewnić maksymalne bezpieczeństwo, możesz skonfigurować loginy oparte na kluczach, jak opisano tutaj https://help.ubuntu.com/community/SSH/OpenSSH/Keys , ale wystarczyłoby ustawić naprawdę silne hasło i zapisać je na każda maszyna klienta.

Możesz utworzyć użytkownika dla każdej łączącej się osoby. Jeśli to zrobisz, możesz dodać je wszystkie do tej samej grupy (powiedzmy ssh_users) i zezwolić wszystkim w tej grupie na łączenie się przy użyciu AllowGroups ssh_users. (Aby uzyskać więcej informacji, zobacz http://knowledgelayer.softlayer.com/learning/how-do-i-permit-specific-users-ssh-access )

Sprawdź, czy ustawienia są prawidłowe : Możesz sprawdzić, czy popełniłeś błąd składniowy w pliku konfiguracyjnym za pomocąsshd –t

Połącz z serwera do siebie : W tym momencie powinieneś być w stanie połączyć się z maszyną od samego siebie w terminalu ssh localhost(zakładając, że już masz openssh-client). Następnie spróbuj go z innego komputera w sieci, ssh <ip-address>.

Jeśli adres IP serwera jest stały w sieci domowej, możesz dodać wpis /etc/hostsna komputerze Ubuntu łączącym się z nim za pomocą linii

server_ip_address        theserver

Będzie to oznaczało, że możesz połączyć się po prostu ssh theserverlub jakkolwiek to nazwiesz. Możesz zrobić to samo dla systemu Windows (patrz tutaj: http://helpdeskgeek.com/windows-7/windows-7-hosts-file/ )

Łączenie przez sFTP : Jeśli możesz połączyć się z serwerem z innego urządzenia w sieci domowej w terminalu, możesz połączyć się z nim przez sFTP oraz bezpiecznie przeglądać i przesyłać pliki. Osobiście skonfigurowałem skrót klawiaturowy, aby móc montować / odmontowywać mój serwer za pomocą poleceń klawiaturowych (w systemie Ubuntu):

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

( -uFlaga to polecenie umount)

Umieść je w polu „Polecenie:” w Ustawieniach systemu> Klawiatura> Skróty> Skróty niestandardowe> + (Nowy skrót), nadaj mu nazwę, kliknij Zastosuj, a następnie kliknij prawą kolumnę i wprowadź kombinację klawiszy ( CTRL+SHFT++i CTRL+SHFT+-odpowiednio wydają się logiczne) .

Możesz zastąpić adres IP tym, co jest w /etc/hosts. Spowoduje to zamontowanie serwera jako dysku w Nautilus i będziesz mógł przeglądać foldery tak samo jak te na twoim komputerze lokalnym. W systemie Windows można połączyć się za pomocą oprogramowania FTP (Filezilla itp.). Nie próbowałem tego, ale jestem pewien, że prawdopodobnie sama integracja sFTP również istnieje w Eksploratorze Windows.

Kolejną zaletą logowania opartego na kluczach w tym momencie jest to, że nie jest monitowany o hasło za każdym razem, gdy się łączysz (chyba że skonfigurujesz je w celu ochrony klucza). Możesz zajrzeć do niego po tym, jak zaczniesz pracować z logowaniem się hasłem (i przed otwarciem go na zewnątrz).

Łączenie z zewnątrz : Ostatnim krokiem byłoby sprawdzenie, czy możesz połączyć się z Internetem, tj. Obok lub cokolwiek innego. Jeśli nie masz statycznego adresu IP dla swojego domu, może być trudne śledzenie adresu IP. Korzystam z dynamicznej usługi dns ( http://afraid.org/ jest darmowy) osobiście, ale możesz znaleźć inne rozwiązanie lepiej. Następnie zastąpiłbyś ipaddress w powyższych poleceniach montowania dynamicznym adresem internetowym wskazującym twoją sieć domową.

Jeszcze jedna wskazówka dotycząca bezpieczeństwa: zachowaj kontrolę nad dziennikiem SSH, jeśli zdecydujesz się na to ( /var/log/auth.log), aby upewnić się, że nic się nie dzieje. Jeśli okaże się, że jest, Fail2Ban jest jednym z rozwiązań ( http://www.fail2ban.org/wiki/index.php/Main_Page i https://help.ubuntu.com/community/Fail2ban ). Aby zminimalizować ryzyko, możesz zmienić port SSHD nasłuchuje na coś niestandardowego, na przykład 500, i zmienić odpowiednie reguły przekierowania portów na routerze i zaporze ogniowej serwera (Dlaczego: /server/189282 / dlaczego-change-default-ssh-port ), chociaż osobiście tego nie testowałem gvfs-mount.


2

Kliknij prawym przyciskiem myszy folder, którego chcesz użyć jako głównego katalogu publicznego, przejdź do „Opcje udostępniania”. Pojawi się wyskakujące okienko dialogowe z instrukcjami instalacyjnymi dotyczącymi dodatkowych pakietów potrzebnych do prawidłowego uruchomienia serwera domowego, instalacji, ponownego uruchomienia, powtórzenia i umożliwienia udostępniania folderów. To takie proste! :)


1
Chcę udostępnić cały mój dysk, a także folder domowy przez moją sieć lokalną, te systemy mają Ubuntu i Windows. Jak więc udostępnić.
twister_void 30.01.2013

Otwórz terminal: System plików „Sudo nautilus” <Dom (kliknij prawym przyciskiem myszy) <Opcje udostępniania. Być może będziesz musiał zmienić uprawnienia, ale spróbuj najpierw bez zmiany uprawnień. Katalog domowy to TYLKO katalog, który polecam udostępnić. Inne są zbyt ryzykowne i mogą uszkodzić system plików.
Jebeld17,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.