Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
サーバーのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
サーバー
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:ウェブサーバー]] [[en:Server]] [[it:Small Business Server]] このガイドでは最も一般的なサーバーについての概要と選択肢、管理やセキュリティに関するガイドラインを提供します。 == 序文 == === サーバーとは何か? === かいつまんで言うと、サーバーとは遠隔地のクライアントと関係するサービスを実行するコンピューターのことです。全てのコンピューターは何らかのサービスを実行しています、例えば: Arch をデスクトップとして使っている場合、ネットワークに接続するにはネットワークサービスを動かす必要があります。ただし、サーバーは外部のクライアントと関わりを持つサービスを実行します、例えば: ウェブサーバーはインターネットを介して、またはローカルネットワーク上のどこかから見ることができるウェブサイトを管理します。 === サーバー OS としての Arch Linux === 次のような批評または主張を見たことがあるかもしれません: ''Arch Linux はサーバーのオペレーティングシステムには全く向いていない!''。これはある意味で真実です: Arch Linux にサーバー専用のインストールディスクというものは存在していません。他のディストリビューションでは用意されているようなディスクのことです。これは Arch Linux には最小限の (しかしながら堅実な) ベースシステムしか含まれていないためで、初めからインストールされているデスクトップまたはサーバーとしての機能は、ほんのわずかしかありません。ただし、このことは Arch Linux をサーバーとして使うべきでないということを意味しません。むしろ'''正反対'''です。Arch のコアインストール環境はセキュアかつ有能な基礎です。少数の機能しかプリインストールされてないからこそ、Linux サーバーのベースとして簡単に使うことができます。人気のサーバーソフトウェア ([[Apache]], [[MySQL]]/[[MariaDB]], [[PHP]], [[Samba]] など) は全て公式リポジトリからインストールすることができ、さらに多くのソフトウェアが [[Arch User Repository|AUR]] には存在します。さらに、ソフトウェアをセットアップするための方法を記した詳細なドキュメントが wiki にはあります。また、[https://www.archlinuxjp.org/ archlinuxjp.org] は Arch Linux で[https://kusakata.com/powered-by-arch-linux/ 稼働しています]。 == 要件 == サーバーで Arch Linux を使うには、まず Arch Linux を[[インストールガイド|インストール]]しておく必要があります。 ほとんどの GNU/Linux サーバーオペレーティングシステムには、2つの選択肢があります: * OS の'テキスト'バージョン (全てをコマンドラインから実行する) * OS の GUI バージョン ([[GNOME]]/[[KDE]] などのデスクトップインターフェイスを使用する). {{Note|GUI で管理するサービスをサーバー上で動作させる場合や、リモートで管理ができない場合、2番目の方法を取るしかありません。}} Arch Linux のインストールについては、[[インストールガイド]]や[[一般的な推奨事項]]の記事を参照してください。ただし GUI を必要としない場合は[[一般的な推奨事項#グラフィカルユーザーインターフェース|このセクション]]以降は不要です。 サーバーにリモートからアクセスするには、固定 IP アドレスやドメイン名、あるいは [http://www.noip.com No-Ip] のようなものが必要です。 == 基本的なセットアップ == "基本的な"セットアップとは: * サーバーへのリモートアクセス。 管理作業をするためにサーバーにリモートでログインできるようにすると良いでしょう。サーバーがどこか別のところにあったり、モニターが取り付けられていない場合: ファイルの削除や追加、設定オプションの変更やサーバーの再起動など、全ての作業はリモートでサーバーにログインしないかぎり実行することが不可能です。SSH がこの機能を提供します。 * Arch '''L'''inux サーバー。 * ウェブページを公開するために必要な http サーバー ('''A'''pache)。 * アドレス帳、フォーラム、またはブログの文章などのデータを保存するのによく使われるデータベースサーバー ('''M'''ySql/'''M'''ariaDB)。 * ブログ、フォーラム、コンテンツ管理システムなどのウェブスクリプトで使われている人気のスクリプト言語である '''P'''HP スクリプト言語。 太字でわかるように、このアプリケーションの組み合わせには名前が付けられています: LAMP。 以下のセクションでは上述の基本機能のセットアップのインストールと設定をガイドします。 === HTTP === 複数の HTTP サーバーから選ぶことができます: * {{App|[[Apache]]|高性能な Unix ベースの HTTP サーバー。|http://www.apache.org/dist/httpd|{{Pkg|apache}}}} * {{App|[[Caddy]]|自動的に HTTPS が使えるサーバー。|https://caddyserver.com/|{{Pkg|caddy}}}} * {{App|[[Hiawatha]]|セキュアかつ先進的なウェブサーバー。|https://www.hiawatha-webserver.org/|{{Pkg|hiawatha}}}} * {{App|[[Lighttpd]]|セキュア・高速・標準準拠・高機能なウェブサーバー。|http://www.lighttpd.net/|{{Pkg|lighttpd}}}} * {{App|[[nginx]]|軽量な HTTP サーバーと IMAP/POP3 プロキシサーバー。|https://nginx.org/|{{Pkg|nginx}}}} * {{App|[[Webfs]]|静的コンテンツに向いているシンプルですぐ使える HTTP サーバー。|http://linux.bytesex.org/misc/webfs.html/|{{Pkg|webfs}}}} [[w:Comparison of web server software]] も参照してください。 === SSH === SSH は '''S'''ecure '''Sh'''ell の略です。SSH を使うことで SSH クライアントでサーバーにログインでき、見覚えのあるターミナルのようなインターフェイスを使うことができます。SSH によるリモートログインのアクセス権限をシステムのユーザーに与えることで、サーバーのリモート管理ができるようになります。 インストールと設定方法は [[SSH]] のページに書かれています。 === LAMP === [[LAMP]] サーバーは合理的で標準的なウェブサーバーです。 'P' が何を意味するのかということについてはよく議論があります。ある人は [[PHP]] だと言い、またある人は Perl のことだと言い、また、[[Python]] だと主張する人もいます。このガイドでは P は PHP ということにしますが、Linux には素晴らしい Perl や Python モジュールが存在するので、同じように Perl や Python をインストールすることもできます。 とは言え、ここに書くにはあまりに多くのことがありすぎます。 インストールや設定の方法は [[LAMP]] の wiki ページを見てください。 == 他のウェブサービス == === E-Mail === メールサーバーのインストールと設定については[[:カテゴリ:メールサーバー]]のページを参照してください。 === FTP === FTP は '''F'''ile '''T'''ransfer '''P'''rotocol の略です。FTP クライアント (FileZilla, gftp など) や FTP 対応のブラウザを使って遠隔地からファイルシステムにアクセスすることができるサービスを提供します。FTP を使うことで、遠隔地からファイルを追加・削除できるだけでなく、chmod コマンドを適用してファイルに特定のパーミッションを設定することもできます。 FTP のアクセスはシステム上のユーザーアカウントに関連付けられるため、権限の管理をシンプルに行なえます。FTP は遠隔地からウェブサーバーにファイルを追加するのによく使われているツールです。 複数の FTP デーモンが存在します。[[アプリケーション一覧#FTP サーバー]]を見てください。 また、SSH を介して FTP を使うという方法もあります。[[SFTP]] を参照。 === DAViCal === [[DAViCal]] はカレンダーやリマインダー、連絡先の管理に使用する CalDAV や CardDAV プロトコルを実装したサーバーです。 === WebDAV === [[WebDAV]] (Web Distributed Authoring and Versioning) は HTTP 1.1 の拡張です。HTTP 1.1 プロトコルを通じて読み書きを行う手段を提供します。NFS や SMB を使うかわりに、WebDAV を使えば HTTP でファイルを転送できます。 === DLNA === [[ReadyMedia]] (旧名 '''MiniDLNA''') は [[wikipedia:Digital_Living_Network_Alliance|DLNA]]/[[wikipedia:Universal_Plug_and_Play|UPnP]] クライアントと完全な互換性を持つサーバーソフトウェアで、ネットワーク上のクライアントにメディアファイル (音楽, 画像, 動画) を転送できます。 === ウェブキャッシュ === [[Squid]] は HTTP, HTTPS, FTP などでウェブコンテンツをキャッシュするプロキシです。キャッシュを活用して頻繁にリクエストされるウェブページを再利用することにより、帯域幅を減らして反応時間を速くします。Squid にはアクセスを制御したりサーバーアクセラレータを作成するための機能も備わっています。 == ローカルネットワークサービス == === Zeroconf === [[Avahi]] はフリーの [[Wikipedia:Zero-configuration networking|Zero-configuration networking]] (zeroconf) 実装で、マルチキャスト DNS/DNS-SD サービスを探知するシステムが含まれています。個別に設定をすることなく、ローカルネットワーク上でサービスやホストをプログラムから公開することを可能にします。例えばネットワークに接続して即座に印刷を行うプリンターを確認したりできます。 === CUPS (印刷) === CUPS ('''C'''ommon '''U'''NIX '''P'''rinting '''S'''ystem) は多数のユーザーが印刷に使用する中心を提供します。例えば、複数のプリンタ (たとえば3台) と印刷をしたいユーザーがローカルネットワークに存在するとします。すべてのプリンタを個々のユーザーのコンピューターに追加することもできますが、CUPS が動いているサーバーにプリンタを追加して、サーバーを全てのクライアントに追加することもできます。24時間365日オンラインの集中型印刷システムを作ることができ、ネットワーク機能がないプリンタには特に有用です。 インストールと設定については [[CUPS]] の wiki ページを参照してください。 === Samba (Windows 互換のファイル・プリンタ共有) === Samba は SMB/CIFS ネットワークプロトコルのオープンソース実装であり、Linux と Windows システム間で効率的にファイルやプリンタを共有することができます。Samba は共有を公開して認証を必要とさせることもできます。 インストールと設定については [[Samba]] の wiki ページを参照してください。 === DNS === [[:カテゴリ:Domain Name System]] には Domain Name System (DNS) プロトコルの様々な実装の記事があります。 == セキュリティ == === ファイアウォール === ファイアウォールソフトウェアに関する詳細は[[ファイアウォール]]を参照してください。 === SSH の保護 === 管理目的で SSH でリモートログインできるようにすることは良いことですが、サーバーのセキュリティに脅威となる可能性もあります。ブルートフォース攻撃の対象としてよく狙われるため、SSH のアクセスは適切に制限して第三者がサーバーにアクセスできないようにする必要があるでしょう。設定方法は [[Secure_Shell#SSH の保護]] を見てください。 === SELinux === インストールと設定については [[SELinux]] の wiki ページを参照してください。 == 管理とメンテナンス == ==== アクセシビリティ ==== '''[[SSH]]''' は '''S'''ecure '''SH'''ell の略で、サーバーにリモート接続して、まるで物理的にコンピュータの前に居るように管理コマンドを実行することができます。[[Screen]] と組み合わせることで SSH はリモート作業や管理になくてはならないツールになります。SSH をインストールだけではあまりセキュアとは言えず、設定を加えないとサーバーがロックダウンしてしまう可能性があるので注意してください。root ログインの無効化や、パスワードによるログインの無効化、ファイアウォールのルールの設定などが必要です。さらに、[[sshguard]] や [[fail2ban]] などのデーモンを利用することで SSH デーモンのセキュリティを補足することもできます。怪しい行動がないかログファイルを常時監視したり、なんどもログインに失敗した IP アドレスを接続できないようにします。 '''X フォワーディング'''は SSH を使って X セッションを転送することでデスクトップの GUI にリモートからログインできるようにします。この機能を使用するには SSH と X サーバーをサーバーにインストールする必要があります。また、クライアント側でも X サーバーをインストールして、サーバーと接続します。詳しくは [[SSH]] の記事にある [[SSH#X11_フォワーディング|X フォワーディング]]のセクションを参照してください。 ===ローカルパッケージリポジトリ=== [https://github.com/vodik/repose Repose] を使うことで本番環境にデプロイする前にパッケージの品質と信頼性を確認する必要があるローカルのサーバークラスタ用にパッケージリポジトリを作成することができます。 == 参照 == * [[Virtual Private Server]] - Arch を用意している VPS プロバイダのリスト
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:App
(
ソースを閲覧
)
テンプレート:Broken package link
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
サーバー
に戻る。
検索
検索
サーバーのソースを表示
話題を追加