Ubuntuデスクトップを使用してホームサーバーを作成する方法


26

自宅で使用するために、Ubuntuデスクトップマシンをファイルサーバーで作成することを考えていました。古いノートパソコンを1台持っています。それをファイルサーバーとして使用して、他の4つのシステムがデータをダウンロードしたり、古いマシン(サーバー)からデータを表示したりできるようにします。私はそれを無線にして、インターネットでもアクセスしたいです、そして、ルータを持っています。しかし、Ubuntu DesktopまたはUbuntuサーバー上でそれをどのように行うのか分かりません。Ubuntuサーバーをインストールしたくありません。

すべてのドライブを共有したい。アクセスを制限するために、何らかのパスワードか何らかのフォルダーの何らかの種類のセキュリティが欲しいです。

* 私はそれを行う方法と他のコンピューターからアクセスする方法もステップバイステップガイドで見ています*

filezillaを使用するのに疲れましたが、Ubuntuではクライアントベースのアプリケーションしか利用できません。それは、ubuntuのfilezillaサーバーのようなものです。

もう1つのシステムは、WindowsとUbuntuにあります。
私はネットワーキングとサーバータイプのことを初めて知っています。


ネットワークにはどのようなクライアントがいますか?Windows、Linux専用、ポータブルデバイス、メディアプレーヤーなど。どのようなプロトコルとサーバーアプリケーションを作成できるかを推奨するために、これは非常に重要です。
gertvdijk

@gertvdijk:WindowsとLinuxの両方。
-twister_void

1
新しいサーバーGUIベースまたはターミナルベースを使用しますか。つまり、Ubuntuデスクトップをインストールしてからコンピューターをサーバーにするか、Ubuntuサーバーをインストールしてからサービスをインストールします。どちらの場合も多くのことを説明する必要があるので、答えを入力する前に知りたいです。
ルイスアルバラード

@LuisAlvarado、Ubuntu Desktopを使用してシステムGUIサーバーを作成したい。あなたの声明は「Ubuntuデスクトップをインストールしてから、コンピューターをサーバーにする」というものです。答えははるかに高く評価されています。
twister_void

回答:


19

GUIベースのサーバーが必要なので(これは素晴らしいサーバーに変換されたUbuntuデスクトップです;))、続行する前に次の手順を実行してください。

  1. すべてを更新します。システムがすでに更新およびアップグレードされていることを確認してください

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

    このように、同じページにいます。

  2. ワイヤレスカードが正しく機能していることを確認してください。Broadcomベースのワイヤレスカードがある場合は、Broadcomワイヤレスドライバーのインストールを確認してください。別のものがある場合は、ワイヤレスカードの名前で検索した後、askubuntuで答えを見つける可能性が非常に高くなります。とにかく、私はそれが正しく機能していると仮定します。

  3. Sambaをインストールし、Sambaを使用してコンピューター間のネットワーク検出と共有を有効にする方法に従って構成します。

  4. 2台のPC間でファイル共有を有効にする方法に従って、SSHサービスをインストールします(主に2台のUbuntuコンピューター間の移動を容易にするため)。必要に応じて、Windowsでputtyを使用することもできます。A SSH(ssh&rsyncコマンド)の使用方法は?ガイドも利用できます。

  5. サーバー経由でインターネットを共有する場合。つまり、ルーターは有線ケーブルを介してサーバーに接続し、他のコンピューターとワイヤレスでインターネットを共有してから、インターネット接続の接続と共有の方法(有線とワイヤレス)に従います。それ以外の場合は、別のコンピューターに有線で接続して、他のコンピューターとの接続を共有する場合(有線イーサネット経由)

  6. 他のコンピューターとプリンターを共有したい場合は、CUPSサーバーとは何か、プリンターを共有する方法(ローカルまたはネットワーク経由)に従うことができます。

  7. サーバーを作成するので、サーバー経由でインターネット接続を共有する場合は、SQUID PROXYをインストールすることもお勧めします。これにより、一般に帯域幅の使用が改善され、すべてのクライアントPCでインターネットが高速になったように感じられます。インストールするには、更新されたWebキャッシュサーバーの利用可能性(HTTPプロキシのキャッシング)(Rinzwindによる)の最初の回答に従ってください。

    イカプロキシを設定することを忘れないでください/etc/squid/squid.confまたは/etc/squid3/squid.confキャッシュされ、他のものを逆にすべきか、サイトの権限のために。

    この7つのステップを実行した後、次のシステムが必要です。

    • LAN内の他のコンピューターとフォルダーを共有でき、手間や権限、追加の手順をあまり行わずに共有フォルダーを表示できます。

    • SSHまたはSamba共有を介してサーバーに問題なく接続できます。

    • サーバーは、無線または有線接続を介してインターネットを共有できます。

    • サーバーは、Windowsのような他のすべてのコンピューターとプリンターを共有できるようになりました。

この手順のいずれかが途中で支援するのが難しいと思われる場合はお知らせください。

さらに、xbmcをインストールして、すべての映画をサーバーに置くこともできます。次に、xbmc構成オプションを使用して、Webサービスを有効にして、残りのコンピューターが同じサーバーから映画を視聴できるようにします。ubuntuサーバーで実際にできることはたくさんあります。


ワオ!!!!!!!1つにまとめられた9つの質問です
アディティア

なぜそうですか;)。彼の質問には、正しいサーバーのためにこれほど多くの答えが必要でした。
ルイスアルバラード

@LuisAlvarado、ありがとうルイス・アルバラード。良い答え
twister_void

6

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を使用します。これは、Filesystem Hierarchy Standard(FHS)によると、/ srvがサイト固有のデータの提供先であるためです。技術的には、許可が正しい限り、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&詳細については、あなたもそれを見ます。


これは、単にカットアンドペーストです。
-don.joey

2
はい&私はクレジットがどこに行くかについて言及しました。
rɑːdʒɑ

あまりにも。複雑。
Jebeld17

4

インストールopenssh-serverすると、sFTPをサポートしている限り、インターネットまたは自宅のデバイスからドライブ全体に安全にアクセスできます。何らかの理由で何らかの理由がない場合、Samba共有は別の回答で詳述されているようにそれを補足することができます。私が私のものを設定する方法は次のとおりです。

OpenSSHサーバーをインストールしますapt-get install openssh-server

ポート22を開きます:これを行うにはいくつかの方法があります、私は使用しますgufw(インストールする必要があるかもしれません。デフォルトであるかどうかはわかりません)。後の段階でインターネットに公開する場合は、ポート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がホームネットワーク上で静的である場合、次/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コマンドです)

「コマンド:」にそれらを入れて、[適用]をクリックし、[システム設定]> [キーボード]> [ショートカット]> [カスタムショートカット> +(新ショートカット)のボックスを、名前を付け、その後、右の列をクリックし、キーの組み合わせを入力します(CTRL+SHFT++CTRL+SHFT+-それぞれ論理的に見えます) 。

IPアドレスをにあるものに置き換えることができます/etc/hosts。これにより、サーバーがNautilusのドライブとしてマウントされ、ローカルコンピューター上のフォルダーと同じようにフォルダーを参照できます。Windowsでは、FTPソフトウェア(Filezillaなど)を使用して接続できます。試したことはありませんが、おそらくWindowsエクスプローラー自体にもsFTPの統合があると確信しています。

この時点でのキーベースのログインのもう1つの利点は、接続するたびにパスワードの入力を求められないことです(キーを保護するためにパスワードを設定しない限り)。パスワードログインで動作するようになった後(外部に公開する前)に調べてください。

外部からの接続:最後のステップは、インターネットから接続できるかどうか、つまり隣の部屋などを確認することです。自宅の静的IPアドレスを取得していない場合は、IPアドレスを把握するのが難しい場合があります。私は動的なDNSサービス(http://afraid.org/は無料です)を個人的に使用していますが、別のソリューションの方が良いかもしれません。次に、上記のマウントコマンドのipaddressを、ホームネットワークを指す動的なWebアドレスに置き換えます。

最後の1つのセキュリティヒントは、これを実行する場合はSSHログにタブを付けておきます(/var/log/auth.log)。見つかった場合、Fail2Banは1つのソリューションです(http://www.fail2ban.org/wiki/index.php/Main_Pageおよびhttps://help.ubuntu.com/community/Fail2ban)。リスクを最小限に抑えるために、SSHDがリッスンするポートを500などの非標準ポートに変更し、ルーターおよびサーバーのファイアウォールの対応するポート転送ルールを変更できます(理由:https : //serverfault.com/questions/189282 / why-change-default-ssh-port)ですが、私はそれを個人的にテストしていませんgvfs-mount


2

メインのパブリックディレクトリとして使用するフォルダを右クリックして、[共有オプション]に移動します。ホームサーバーの適切な実行、インストール、再起動、繰り返し、フォルダー共有の許可に必要な追加パッケージのインストールプロンプトを示すポップアップダイアログが表示されます。それは簡単!:)


1
ローカルネットワーク上ですべてのドライブとホームフォルダを共有したいのですが、これらのシステムにはUbuntuとWindowsがあります。だからどのように共有します。
twister_void

ターミナルを開きます:「Sudo nautilus」ファイルシステム<ホーム(右クリック)<共有オプション。パーミッションも変更する必要があるかもしれませんが、最初にパーミッションを変更せずに試してください。ホームディレクトリは、共有を推奨する唯一のディレクトリです。他のものは危険すぎるため、ファイルシステムを破損する可能性があります。
Jebeld17
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.