當前位置: 首頁>>技術教程>>正文


networking – 如何使用Ubuntu桌麵製作家庭服務器?

, ,

問題描述

我當時想在文件服務器中製作我的Ubuntu台式機,以便在家中使用它。我有一台舊筆記本電腦。我可以將其用作文件服務器,以便我的其他4個係統可以從該舊計算機(服務器)下載數據或查看數據。我想使其成為無線設備,並且還希望通過Internet進行訪問,並擁有一個路由器。但是我不知道如何在Ubuntu桌麵或Ubuntu服務器上執行此操作。我不想安裝Ubuntu服務器。

想要共享我的所有雲端硬盤。想要某些密碼或某種安全性來限製某些文件夾的訪問。

*我正在查看逐步指南,以及如何從其他計算機訪問*。

我厭倦了使用filezilla,但在Ubuntu中隻有基於客戶端的應用程序可用。它像ubuntu中的filezilla服務器一樣。

另一個係統在Windows以及Ubuntu上。我是網絡和服務器類型事物的新手,將不勝感激。

最佳辦法

因為您要使用基於GUI的服務器(這是將Ubuntu桌麵轉換為出色的服務器;)),所以在繼續之前隻需執行以下步驟:

  1. 更新所有內容。確保您已經更新和升級了係統sudo apt-get update && sudo apt-get upgrade。這樣,我們在同一頁麵上。

  2. 確保您的無線網卡正常工作。如果您碰巧有一個基於Broadcom的無線網卡,請檢查Installing Broadcom Wireless Drivers。如果還有另一個,很可能會在使用無線網卡名稱搜索後在askubuntu中找到答案。無論如何,我將假定它工作正常。

  3. 按照How to turn on Network Discovery and Share between computers with Samba安裝Samba服務並對其進行配置

  4. 按照How to enable file sharing between two PCs?來安裝SSH服務(主要是為了簡化兩台Ubuntu計算機之間的連接)。如果願意,您也可以在Windows中使用膩子。還提供了How to use SSH (ssh & rsync commands)?指南。

  5. 如果您要通過服務器共享Internet。我的意思是,您的路由器將通過有線電纜連接到服務器,然後與其他計算機無線共享Internet,然後遵循How to Connect & Share your Internet Connection (Wired & Wireless)。否則,如果您想通過連接到另一台計算機來執行此操作,則Sharing Connection to other PCs (Via Wired Ethernet)

  6. 如果您還想與其他計算機共享打印機,則可以遵循What is CUPS server and how to share a printer (Locally or over a network)

  7. 由於您將要製造服務器,因此如果您恰巧通過服務器共享Internet連接,我也建議安裝SQUID PROXY。通常,這將改善帶寬使用情況,並且會提高it will feel like the internet is faster for all client PCs的帶寬。要安裝,請遵循What Updated Web Cache Servers are available (Caching HTTP Proxy)中的第一個答案(由Rinzwind提供)。記住,請在/etc/squid/squid.conf/etc/squid3/squid.conf中為站點權限配置魷魚代理,應反向緩存的內容和其他內容。完成這7個步驟後,我們應該有一個係統

    • 可以與局域網中的其他計算機共享文件夾,並且他們可以看到共享文件夾,而無需太多麻煩,權限或其他步驟。

    • 可以毫無問題地通過SSH或Samba共享連接到服務器。

    • 服務器可以通過無線或有線連接共享Internet。

    • 服務器現在可以將打印機共享給包括Windows之類的所有其他計算機。

讓我知道這些步驟中的任何一個步驟似乎都很難幫助您。

其他東西可能是安裝xbmc並將所有電影放到服務器上。然後通過xbmc配置選項啟用Web服務,以便其餘計算機可以從同一服務器上觀看電影。 ubuntu服務器實際上可以做很多事情。

次佳辦法

好吧,您可以使用samba文件服務器來做到這一點。

您可以通過sudo apt-get install samba安裝它

首先,在/etc/samba/smb.conf的[global]部分中編輯以下鍵/值對:

   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中提供site-specific數據。從技術上講,隻要權限正確即可將Samba共享放置在文件係統上的任何位置,但是建議遵循標準。

瀏覽:使Windows客戶端可以使用Windows資源管理器瀏覽共享目錄。

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

隻讀:確定共享是隻讀的還是授予寫特權。如該示例所示,僅當值為no時才允許寫特權。如果值為yes,則對共享的訪問是隻讀的。

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&有關更多信息,請查看。

第三種辦法

安裝openssh-server將使您能夠通過Internet或從家裏的設備安全地訪問整個驅動器,隻要它們支持sFTP。如果出於某種原因沒有這樣做,則可以在另一個答案中詳細說明,以Samba共享作為補充。這是我設置我的方法:

安裝OpenSSH服務器:apt-get install openssh-server

打開端口22:有多種方法可以使用,我使用gufw(您可能需要安裝它,不確定它是否是默認值)。如果您想稍後將其打開以連接到Internet,則需要將端口22從路由器轉發到服務器。通常,您可以通過路由器上的Web界麵執行此操作。如果可以的話,也在那裏為服務器分配一個靜態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在家庭網絡上是靜態的,則可以在通過該行連接到它的Ubuntu計算機上的/etc/hosts中添加一個條目

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+-似乎合乎邏輯)。

您可以用/etc/hosts中的IP地址替換IP地址。這會將服務器安裝為Nautilus中的驅動器,您可以像瀏覽本地計算機上的文件夾一樣瀏覽這些文件夾。在Windows中,您可以使用FTP軟件(Filezilla等)進行連接。我沒有嘗試過,但我敢肯定Windows Explorer本身中也可能集成了sFTP。

基於密鑰的登錄的另一個好處是,每次連接時都不會提示您輸入密碼(除非您設置一個保護密鑰的密碼)。在使用密碼登錄後(在將其向外界開放之前),您可能希望對其進行研究。

從外部連接:最後一步是查看您是否可以從互聯網(即隔壁或其他任何地方)進行連接。如果您的房屋沒有靜態IP地址,那麽跟上您的IP地址可能會很棘手。我個人使用動態dns服務(http://afraid.org/是免費的),但是您可能會找到其他更好的解決方案。然後,您可以使用指向您的家庭網絡的動態網址替換上述安裝命令中的ipaddress。

最後一個安全提示是,如果要這樣做(/var/log/auth.log),請在SSH日誌上保留選項卡,隻是為了確保沒有發生任何不良情況。如果找到它,則Fail2Ban是一個解決方案(http://www.fail2ban.org/wiki/index.php/Main_Pagehttps://help.ubuntu.com/community/Fail2ban)。為了最大程度地降低風險,您可以更改SSHD偵聽非標準端口(例如500),並更改路由器和服務器防火牆上的相應端口轉發規則(為什麽:https://serverfault.com/questions/189282/why-change-default-ssh-port),盡管我沒有親自測試過gvfs-mount

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/10272.html,未經允許,請勿轉載。