紹介
新しいサーバーに最小限の設定を行った後、ほとんどのケースで推奨される追加の手順があります。このガイドでは、サーバーの設定を続け、いくつかの推奨されるが任意の手順に取り組んでいきます。
前提条件と目標
このガイドを始める前に、CentOS 7 初期サーバー設定ガイドを実行してください。これは、ユーザーアカウントを設定し、sudo
を使用して権限昇格を設定し、セキュリティのためにSSHをロックダウンするために必要です。
上記のガイドを完了したら、この記事を続けて読んでください。このガイドでは、推奨されるが任意のコンポーネントの設定に焦点を当てます。これにより、ファイアウォールとスワップファイルを設定し、ネットワークタイムプロトコルの同期を設定することになります。
基本的なファイアウォールの設定
with open(‘translation.txt’, ‘w’) as f:
f.write(‘ファイアウォールは、サーバーに対して基本的なセキュリティレベルを提供します。これらのアプリケーションは、承認したポート/サービスを除き、サーバーのすべてのポートに対するトラフィックを拒否する責任があります。CentOSには、firewalld
というファイアウォールが付属しています。firewall-cmd
というツールを使用して、ファイアウォールポリシーを設定できます。私たちの基本的な戦略は、開放する正当な理由がないすべてをロックダウンすることです。まず、firewalld
をインストールします:
firewalld
サービスは、現在の接続を切り捨てずに変更を加える能力があり、そのため、例外を作成する前にそれをオンにすることができます:
サービスが起動し运行しているので、firewall-cmd
ユーティリティを使用して、ファイアウォールのポリシー情報を取得および設定することができます。firewalld
アプリケーションは、ネットワーク上の他のホストの信頼性をラベル付けするために「ゾーン」という概念を使用します。このラベリングにより、ネットワークへの信頼度に応じて異なるルールを割り当てることができます。
このガイドでは、デフォルトゾーンのポリシーを調整するだけです。ファイアウォールをリロードすると、これがインターフェースに適用されるゾーンになります。ファイアウォールに承認されたサービスの例外を追加することから始めるべきです。これらの中でも最も重要なのはSSHで、サーバーに対するリモート管理アクセスを保持する必要があるためです。
SSHデーモンが実行されているポートを変更していない場合、サービスを名前で有効にするために以下を入力します:’)
SSHのポートを変更した場合、新しいポートを明示的に指定する必要があります。また、サービスが使用しているプロトコルも含める必要があります。SSHサーバーが既に新しいポートを使用するために再起動された場合にだけ以下を入力してください。
これはサーバーに管理者アクセスを保持するために最低限必要なものです。 additional servicesを実行する计划がある場合、それらにもファイアウォールを開く必要があります。
従来のHTTPウェブサーバーを実行する计划がある場合、http
サービスを有効にする必要があります。
SSL/TLSを有効にしたWebサーバーを実行する计划がある場合、https
のトラフィックを許可する必要があります。
SMTPメールを有効にしたい場合、以下を入力します。
名前で追加のサービスを有効にすることができる一覧を見るには、以下を入力します。
終了したら、実行する例外の一覧を見るには以下を入力します。
変更を実行準備ができたら、ファイアウォールを再読み込みします。
テスト後、すべてが期待通り動く場合、ファイアウォールが起動時に開始されるように确认します。
後で構成する追加のサービスについては、ファイアウォールを明示的に開く(サービスやポートを使用して)必要があることをご記録ください。
時間帯とネットワーク時間プロトコル同期の設定
次の手順は、あなたのサーバーの地元化設定を調整し、ネットワークタイムプロトコル(NTP)同期を設定することです。
最初の手順は、あなたのサーバーが正しい時帯で動作することを保証します。2番目の手順は、あなたのシステムをNTPサーバーのグローバルネットワークによって維持される標準時間に、そのシステム時計を同期させるように設定します。これにより、時計の同期を取れていないために起こりうる不具合を防ぐことができます。
時間帯を設定する
私たちの最初の手順は、サーバーの時間帯を設定することです。これは非常に簡単な手順で、timedatectl
コマンドを使用することで実現できます。
まず、以下のように入力して利用可能な時間帯を確認します。
これは、あなたのサーバー用に利用可能な時間帯の一覧を表示します。サーバー用の正しい地域/時間帯設定を見つけ、以下のように入力して設定します。
たとえば、アメリカの東部時間を設定するには、以下のように入力します。
あなたのシステムは選択した時間帯を使用するよう更新されます。これを確認するには、以下のように入力します。
NTP同期を設定する
現在、時間帯を設定した後はNTPを設定する必要があります。これにより、お使いの计算机は他のサーバーと保持していた正确な時間を持つことができます。これにより操作の predictable性 を高めます。
NTPの同期を行うには、CentOSの標準 repository から ntp
服务をinstall します。
次に、本会话中に service を起動し、会話終了後も自動 startup させる必要があります。これを実現するには以下のコマンドを打ち込む:
お使いのサーバーは自動的に全球のサーバーと时间を同期し、正しく機能することができます。
Swap ファイルの作成
Linux サーバー上で Swap を使用することは、运行中のプログラムの少し less 頻繁にアクセスされるデータを RAM からディスクへ移動することを可能にします。ディスクへのアクセスは RAM 相比で非常に遅いですが、Swap の存在は常に应用程序の生存と crash を防げます。特に、DBMS を host する場合には非常有用です。
Swap 空间の大きさは、情報源によって大きく異なります。一般に、RAM 大小の2倍や同数を分配することは良い startersize です。
Swap 空間を allocation するには、fallocate
实用工具を使用します。例えば、4 GiB の swap ファイルを /swapfile
に作成する場合は以下のコマンドを打ち込む:
ファイルを作成した後、他のユーザーやプロセスがその内容を見られないようにファイルへのアクセスを制限する必要があります:
今や適切な権限を持つファイルをお持ちでいます。システムにスワップファイルとしてファイルをフォーマットするよう指示するには、以下のように入力できます:
次に、以下のように入力してシステムにスワップファイルを使用するよう指示します:
現在のセッションではスワップファイルを使用していますが、サーバーがブート時に自動的にこれを行うようにシステムファイルを修正する必要があります。これは以下のように入力して行えます:
この追加を行うと、システムは各ブート時にスワップファイルを自動的に使用するようになります。
ここからどこへ行きましょうか?
今やLinuxサーバーの非常に良い初期設定が整いました。ここからはいくつかの進め方があります。まず、現在の設定状態でサーバーのスナップショットを取ることができます。
現在の設定のスナップショットを取る
設定に満足して、将来的なインストールの基盤としてこれを使用したい場合、DigitalOceanのコントロールパネルを通じてサーバーのスナップショットを取ることができます。2016年10月から、スナップショットは利用されているファイルシステム内のスペースに基づいて月額0.05ドル/ギガバイトになりました。
サーバーをコマンドラインから shutdown します。実行可能ですが、运行中のシステムは快照に保存することもできます:
次に、DigitalOcean コントロールパネルでは、「Snapshots」タブを見てください。そ那から运行中の系统を快照することはできませんが、電源オフは确保しておくと、ディスク上の全てのファイルが一致した状態になります:
快照を取った後、後期のインストALLlation時に使用するために、「My Snapshots」タブから快照を選択してください:
次のスteps
次の手順は決して全ての配置ではないが、多くのユーザーが次の手順を踏み入れることがあります:
- LAMP (Linux, Apache, MySQL/MariaDB, PHP) スタックの設定
- LEMP (Linux, Nginx, MySQL/MariaDB, PHP) スタックの設定
- WordPress CMSのインストALLlation
- Node.jsのインストール
- Puppetを使って infrastrukturmanagement
結論
これまで、新しいサーバーの設定に成功したと思う。希望になりますが、次のステップも考えておくと良いです。自由にサイトを探してみて、その上で実行可能なアイディアを見つけましょう。