CentOS 7サーバーにCyberPanelをインストールして構成する方法
別のシステムを使用していますか?はじめにCyberPanelは、オープンソースでありOpenLiteSpeedを使用する市場で最初のコントロールパネルの1つです。なんてこった
Icinga2は強力なモニタリングシステムであり、マスタークライアントモデルで使用すると、NRPEベースのモニタリングチェックの必要性を置き換えることができます。マスタークライアントモデルは、さまざまな理由でより安全です。また、チェックを1つのサーバーで変更して他のサーバーに伝達できるようにすることで、より分散した監視が可能になります。また、変更を一元的に管理する場所も提供します。
例:4つの異なる負荷分散Webサーバーがあるとします。ロードスパイクが発生することがわかっている場合(セールなど、多くのアクティビティが予想されるもの)、CPU使用率が高くなるとシステム管理者に警告するレベルを上げることができます。NRPEチェックを使用している場合は、各サーバーにアクセスして、それぞれの/etc/nrpe.d/common_commands.cfg
ドキュメントを変更する必要があります。マスタークライアントモデルでは、/etc/icinga2/repository.d/hosts/
フォルダー内のホスト定義を変更してから、Icingaをリロードします。チェックは各サーバーに伝達され、自動的に取得されます。また、/etc/icinga2/repository.d/services/
ファイルを変更することで非常に簡単にチェックを追加でき、クライアントサーバーにプラグインが存在する限り、チェックは自動的に伝播されて認識されます。
icinga2master.example.com
。icinga2client.example.com
。このガイドの一部は、上記のインストール手順を反映していますが、これはサーバーマシンではなくクライアントマシンで実行する必要があります。
「ICINGA」リポジトリをクライアントシステムに追加して、Icingaパッケージをインストールします。
sudo cat > /etc/yum.repos.d/ICINGA-release.repo << 'EOF'
[icinga-stable-release]
name=ICINGA (stable release for epel)
baseurl=http://packages.icinga.org/epel/$releasever/release/
enabled=1
gpgcheck=1
gpgkey=http://packages.icinga.org/icinga.key
EOF
必要なパッケージをインストールします。
# CentOS 6
sudo yum -y install icinga2 mysql-server mysql icinga2-ido-mysql nagios-plugins-disk nagios-plugins-load nagios-plugins-procs nagios-plugins-ssh nagios-plugins-users nagios-plugins-swap nagios-plugins-ping icingacli
# CentOS 7
sudo yum -y install icinga2 mariadb-server mysql icinga2-ido-mysql nagios-plugins-disk nagios-plugins-load nagios-plugins-procs nagios-plugins-ssh nagios-plugins-users nagios-plugins-swap nagios-plugins-ping icingacli
CentOS 7はMySQLではなくMariaDBを使用するため、必要なパッケージは少し異なります。サービスを開始し、起動時に開始するように設定します。
sudo chkconfig icinga2 on
sudo service icinga2 start
MySQLサービスを起動時に開始するように設定し、今すぐ開始して、セキュリティを確保できるようにします。
# CentOS 6
sudo chkconfig mysqld on
sudo service mysqld start
#CentOS 7
sudo systemctl enable mariadb.service
sudo systemctl start mariadb.service
MySQL / MariaDBインストールを保護します。CentOS 6と7はどちらも同じコマンドを使用します。
sudo mysql_secure_installation
プロセス中に、次の質問に答えます。
Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: $newRootPassword
Re-enter new password: $newRootPassword
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
$newRootPassword
何度か必要になるのでメモしてください。リセットするのは面倒です。
icinga
ユーザー名を作成し、スキーマをデータベースにインポートする必要があります。これは、CentOS 6と7の両方で同じ方法で行われます。
sudo mysql -u root -p
>CREATE DATABASE icinga;
>GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY '$someIcingaPassword';
>exit
次に、作成したデータベースにスキーマをインポートします。
sudo mysql -u root -p icinga < /usr/share/icinga2-ido-mysql/schema/mysql.sql
上記$newRootPassword
のmysql_secure_installation
コマンドで使用したMySQL / MariaDBパスワードを入力する必要があります。作成したばかりのパスワードではなく、$someIcingaPassword
後で使用します。
ido
(データベース)モジュールを有効にします。
sudo icinga2 feature enable ido-mysql
/etc/icinga2/features-enabled/ido-mysql.conf
データベース情報を追加するには、ファイルを編集する必要があります。これは、次のコマンドで実行できます。
sudo vi /etc/icinga2/features-enabled/ido-mysql.conf
そのファイルで、コメントアウトされている行を見つけます(で始まる//
)。
//user = "icinga"
//password = "icinga"
//host = "localhost"
//database = "icinga"
...作成したユーザー/パスワードを使用して編集します。
user = "icinga"
password = "$someIcingaPassword"
host = "localhost"
database = "icinga"
最初の2つのスラッシュを削除して、行のコメントを外してください。
次に、サービスを再起動して変更を反映します。
sudo service icinga2 restart
クライアントサーバーと、構成済みのIcinga2マスター間の接続を追加する必要があります。CentOS 7のFirewalldを使用するか、CentOS 6または7のIPTablesを使用する必要があります。
# CentOS 6
sudo vi /etc/sysconfig/iptables
...
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5665 -j ACCEPT
...
#Icinga2 Master
-A OUTPUT -p tcp -m state --state NEW -m tcp --dport 5665 -j ACCEPT
sudo iptables restart
# CentOS 7
sudo firewall-cmd --add-port=5665/tcp --permanent
sudo firewall-cmd --reload
次に、hostsファイルを編集して、マスターをローカルドメイン名として追加します。
sudo vi /etc/hosts
...
$masterIP icinga2master icinga2master.example.com
この手順は、Icinga2マスターで実行する必要があります。これをマスターとして初期化し、クライアントが通信に使用する証明書署名リクエストを生成する必要があります。
sudo icinga2 node wizard
これにより、ノードウィザードが実行され、いくつかの質問が表示されます。画面は次のようになり、あなたが与える答えが一覧表示されます。
Welcome to the Icinga 2 Setup Wizard!
We'll guide you through all required configuration details.
Please specify if this is a satellite setup ('n' installs a master setup) [Y/n]: n
Starting the Master setup routine...
Please specify the common name (CN) [icinga2-master1.localdomain]: icinga2master.example.com
Checking for existing certificates for common name 'icinga2master.example.com'...
Certificates not yet generated. Running 'api setup' now.
information/cli: Generating new CA.
information/base: Writing private key to '/var/lib/icinga2/ca/ca.key'.
information/base: Writing X509 certificate to '/var/lib/icinga2/ca/ca.crt'.
information/cli: Generating new CSR in '/etc/icinga2/pki/icinga2master.example.com.csr'.
information/base: Writing private key to '/etc/icinga2/pki/icinga2master.example.com.key'.
information/base: Writing certificate signing request to '/etc/icinga2/pki/icinga2master.example.com.csr'.
information/cli: Signing CSR with CA and writing certificate to '/etc/icinga2/pki/icinga2master.example.com.crt'.
information/cli: Copying CA certificate to '/etc/icinga2/pki/ca.crt'.
Generating master configuration for Icinga 2.
information/cli: Adding new ApiUser 'root' in '/etc/icinga2/conf.d/api-users.conf'.
information/cli: Enabling the 'api' feature.
Enabling feature api. Make sure to restart Icinga 2 for these changes to take effect.
information/cli: Dumping config items to file '/etc/icinga2/zones.conf'.
information/cli: Created backup file '/etc/icinga2/zones.conf.orig'.
Please specify the API bind host/port (optional):
Bind Host []: <hit enter>
Bind Port []: <hit enter>
information/cli: Created backup file '/etc/icinga2/features-available/api.conf.orig'.
information/cli: Updating constants.conf.
information/cli: Created backup file '/etc/icinga2/constants.conf.orig'.
information/cli: Updating constants file '/etc/icinga2/constants.conf'.
information/cli: Updating constants file '/etc/icinga2/constants.conf'.
information/cli: Updating constants file '/etc/icinga2/constants.conf'.
Done.
Now restart your Icinga 2 daemon to finish the installation!
次に、Icinga2を再起動して変更を反映します。
sudo service icinga2 restart
これでマスターになりました。これを使用して、証明書署名リクエスト文字列を生成できます。
sudo icinga2 pki ticket --cn icinga2client.example.com
あなたはいくつかの文字列を取得します$pkiString
。クライアントで必要になるので、その文字列をコピーします。
ノードウィザードを実行して証明書を生成し、マスターに接続します。
sudo icinga2 node wizard
上記と同様のページが表示されます。このページは、回答を含めて以下に表示されています。
Welcome to the Icinga 2 Setup Wizard!
We'll guide you through all required configuration details.
Please specify if this is a satellite setup ('n' installs a master setup) [Y/n]: Y
Starting the Node setup routine...
Please specify the common name (CN) [icinga2client.example.com]:
Please specify the master endpoint(s) this node should connect to:
Master Common Name (CN from your master setup): icinga2master.example.com
Do you want to establish a connection to the master from this node? [Y/n]: Y
Please fill out the master connection information:
Master endpoint host (Your master's IP address or FQDN): icinga2master.example.com
Master endpoint port [5665]: 5665
Add more master endpoints? [y/N]: N
Please specify the master connection for CSR auto-signing (defaults to master endpoint host):
Host [icinga2master.example.com]: icinga2master.example.com
Port [5665]: 5665
information/cli: Created backup file '/etc/icinga2/pki/icinga2client.example.com.key.orig'.
information/cli: Created backup file '/etc/icinga2/pki/icinga2client.example.com.crt.orig'.
information/base: Writing private key to '/etc/icinga2/pki/icinga2client.example.com.key'.
information/base: Writing X509 certificate to '/etc/icinga2/pki/icinga2client.example.com.crt'.
information/cli: Fetching public certificate from master (icinga2master.example.com, 5665):
Certificate information:
Subject: CN = icinga2master.example.com
Issuer: CN = Icinga CA
Valid From: Jan 10 21:08:37 2017 GMT
Valid Until: Jan 7 21:08:37 2032 GMT
Fingerprint: FE 72 AB F3 18 A5 12 E0 0C 5D 94 8B 96 C4 57 3B 00 5C E0 04
Is this information correct? [y/N]: Y
information/cli: Received trusted master certificate.
Please specify the request ticket generated on your Icinga 2 master.
(Hint: # icinga2 pki ticket --cn 'icinga2client.example.com'): $pkiString
information/cli: Requesting certificate with ticket '$pkiString'.
warning/cli: Backup file '/etc/icinga2/pki/icinga2client.example.com.crt.orig' already exists. Skipping backup.
information/cli: Writing signed certificate to file '/etc/icinga2/pki/icinga2client.example.com.crt'.
information/cli: Writing CA certificate to file '/etc/icinga2/pki/ca.crt'.
Please specify the API bind host/port (optional):
Bind Host []: <enter key>
Bind Port []: <enter key>
Accept config from master? [y/N]: Y
Accept commands from master? [y/N]: Y
information/cli: Disabling the Notification feature.
Disabling feature notification. Make sure to restart Icinga 2 for these changes to take effect.
information/cli: Enabling the Apilistener feature.
warning/cli: Feature 'api' already enabled.
information/cli: Created backup file '/etc/icinga2/features-available/api.conf.orig'.
information/cli: Generating local zones.conf.
information/cli: Dumping config items to file '/etc/icinga2/zones.conf'.
information/cli: Created backup file '/etc/icinga2/zones.conf.orig'.
information/cli: Updating constants.conf.
information/cli: Created backup file '/etc/icinga2/constants.conf.orig'.
information/cli: Updating constants file '/etc/icinga2/constants.conf'.
information/cli: Updating constants file '/etc/icinga2/constants.conf'.
Done.
Now restart your Icinga 2 daemon to finish the installation!
先に進み、Icinga2を再起動して変更を有効にします。
sudo icinga2 restart
これはすでに行われている可能性がありますが、コマンドとAPI機能が有効になっていることを確認する必要があります。
sudo icinga2 feature enable command
sudo icinga2 feature enable api
有効になっていない場合は、「機能が有効」と表示されるため、Icinga2デーモンを再起動する必要があります。ただし、最初に、/etc/icinga2
ディレクトリ内のファイルの所有権を変更する必要があります。ノードウィザードを実行した後、一部のファイルのアクセス権が正しくないためです。すべての所有者とグループをに設定する必要がありicinga
ます。次のコマンドを使用して、アクセス許可を変更します。
sudo chown -R icinga:icinga /etc/icinga2/
これで、Icinga2デーモンを再起動できます。
sudo service icinga2 restart
クライアント構成では、いくつかの異なるファイルを編集する必要があります。
/etc/icinga2/zones.conf
:エンドポイント(サーバー)とそれらを含むゾーンが含まれます。これは、サーバーが分割される方法です。クライアント名がサーバー名と一致していることを確認してください。/etc/icinga2/icinga2.conf
:マスターからのコマンドと構成を受け入れているため、コマンド定義の重複を避けるために、このファイルを少し編集する必要があります。最初に、zones.conf
ファイルを変更してサーバーとそのゾーンを定義し、すべてのサーバーに固有ではなく(ディスクチェックなど)、すべてのサーバーに共通のコマンド定義用の「グローバル」ゾーンを作成します。 。
sudo vi /etc/icinga2/zones.conf
object Zone clientZone {
endpoints = [ "icinga2master.example.com" ]
}
object Zone "global-templates" { # Add global templates zone
global = true
}
object Endpoint NodeName {
host = "$icinga2clientIP"
}
object Zone ZoneName {
endpoints = [ NodeName ]
parent = clientZone
}
現時点では、ゾーンごとに2つのノードしか存在できないことを知っておくことが重要です。ゾーンはいくつでも作成できますが、ゾーンごとに3つ以上のノードがある場合、Icinga2サービスが正しく機能しない可能性があります。ゾーンclientZone
にすでに2つのノードがある場合を除き、これはクライアントでは問題になりません。その場合、別のゾーン名を作成する必要があります。
次に、/etc/icinga2/icinga2.conf
ファイルに変更を加えます。その行をコメント化する必要がありinclude_recursive "conf.d"
ます。
sudo vi /etc/icinga2/icinga2.conf
...
//include_recursive "conf.d"
...
構成を検証して、すべてが正しくフォーマットされていることを確認します。
sudo icinga2 daemon -C
権限の問題が発生した場合は、アイテムがによって所有されていることが原因である可能性がありますroot:root
。icinga:icinga
解決するためにChown 。
sudo chown -R icinga:icinga /etc/icinga2/
設定には他にも問題があります。通常、sudo icinga2 daemon -C
コマンドの出力から提供される情報は、それらを追跡するのに十分なほど詳細になります。発生するすべての潜在的な問題に対処することは、このガイドの範囲外です。
検証が成功した場合は、先に進んでサービスをリロードします。
sudo service icinga2 restart
icinga
コマンドを実行できるようにするには、ユーザーにsudo権限を付与する必要があります。これらのsudo権限は、特定のプラグインディレクトリに制限されます。これは単にファイルの最後に置くことができます。
sudo vi /etc/sudoers
...
Defaults:icinga !requiretty
icinga ALL=(ALL) NOPASSWD: /usr/lib64/nagios/plugins/
これで、クライアントの構成が正式に完了しました。これ以上変更する必要はありません。サービスチェックはマスターで構成され、クライアントに伝達されます。ただし、必要に応じて追加のプラグインをインストールする必要があります。プラグインは、python、perl、BASH、PHP、およびその他のスクリプト言語を使用して作成することもできます。
クライアントを接続できるように構成するには、マスターに戻る必要があります。実行する必要があるいくつかの手順があります。
repository.d
。ホスト構成が/etc/icinga2/repository.d/hosts/icinga2client.example.com.conf
ファイルに入力されます。
sudo vi /etc/icinga2/repository.d/hosts/icinga2client.example.com.conf
object Host "icinga2client.example.com" {
import "satellite-host"
address = "$icinga2clientIP"
vars.os = "Linux"
}
sudo chown icinga:icinga /etc/icinga2/repository.d/hosts/icinga2client.example.com.conf
これでホストはクライアント構成に存在しますが、ゾーンに配置する必要があります。このゾーンは/etc/icinga2/repository.d/zones
フォルダ内にあり、追跡しやすくするためにゾーン名と同じ名前になります。
sudo vi /etc/icinga2/repository.d/zones/clientZone.conf
object Zone "clientZone" {
endpoints = [ "icinga2client.example.com" ]
parent = "icinga2master.example.com"
}
次に、global-templates
ゾーンを追加する必要があります。
sudo vi /etc/icinga2/repository.d/zones/global-templates.conf
object Zone "global-templates" {
global = true
}
最後に、クライアントエンドポイントを追加して、実行時に「clientZone」エンドポイント配列にデータが入力されるようにします。
sudo vi /etc/icinga2/repository.d/endpoints/icinga2client.example.com.conf
#Change values to match the host you're adding
object Endpoint "icinga2client.example.com" {
host = "$icinga2clientIP"
}
権限の問題がないことを確認するには、先に進んで所有者/グループを再度変更してください。
sudo chown -R icinga:icinga /etc/icinga2
構成の変更を確認して、問題が発生していないことを確認します。
sudo icinga2 daemon -C
検証が成功した場合は、リロードを続行してください。
sudo service icinga2 restart
Icinga2 Webサイトにアクセスすると、サーバーにアクセスできるようになります。
「コマンドが見つかりません」または「定義されていないチェック」に関するエラーが発生する場合があります。これがグローバルテンプレートゾーンの出番です。構成を/etc/icinga2/conf.d/
ファイルにコピーして、ファイルに配置する必要があり/etc/icinga2/zones.d/global-templates/
ます。たとえば、「check_software」コマンドを作成するには、次の操作を行う必要があります。
sudo mkdir /etc/icinga2/zones.d/global-templates
sudo vi /etc/icinga2/zones.d/global-templates/commands.conf
object CheckCommand "check_software" {
import "plugin-check-command"
command = [ "/usr/bin/sudo", PluginDir + "/software_service_check.sh" ]
}
software_service_check.sh
ファイルが内に存在する必要があります/usr/lib64/nagios/plugins
上のフォルダのクライアント。
次に、サービスチェックを/etc/icinga2/repository.d/hosts/services.conf
ファイルに追加します。
sudo vi /etc/icinga2/repository.d/hosts/services/services.conf
apply Service "Check Software Service" {
import "mail-service"
check_command = "check_software" # This check command is the same name as the one you defined in global-templates/commands.conf
assign where host.vars.client_endpoint # This will apply to every client server. If you need it to be more restrictive, you should look into custom variables
}
権限を再度変更する必要があります。
sudo chown -R icinga:icinga /etc/icinga2
次に、構成を再確認します。
sudo icinga2 daemon -C
最後に、成功した場合は、再読み込みします。
sudo service icinga2 restart
おめでとう!これで、マスタークライアントモデルでIcinga2を使用しており、安全でないNRPEチェックを使用する必要がなくなりました。
別のシステムを使用していますか?はじめにCyberPanelは、オープンソースでありOpenLiteSpeedを使用する市場で最初のコントロールパネルの1つです。なんてこった
LinuxおよびUnixのシステム管理者の間では、sudoユーザーを使用してサーバーにアクセスし、コマンドをルートレベルで実行することは非常に一般的です。sudの使用
別のシステムを使用していますか?Netdataは、リアルタイムのシステムメトリックモニタリングの分野における新星です。同じ種類の他のツールと比較すると、Netdata:
このチュートリアルでは、Just Cause 2マルチプレイヤーサーバーのセットアップ方法をよく学びます。前提条件開始する前に、システムが完全に更新されていることを確認してください
別のシステムを使用していますか?このチュートリアルでは、CentOS 7でStarboundサーバーをセットアップする方法を説明します。前提条件このゲームを所有している必要があります。
Go(Golangとも呼ばれます)は、静的に型付けされ、コンパイルされた、Cのようなプログラミング言語で、Googleによって開発されました。シンプルさと多用途性により、b
Djangoは、Webアプリケーションを作成するための一般的なPythonフレームワークです。Djangoを使用すると、ホイールを再発明することなく、アプリケーションをより速く構築できます。あなたが望むなら
別のシステムを使用していますか?TextPattern CMS 4.6.2はシンプルで柔軟な無料のオープンソースコンテンツ管理システム(CMS)であり、Webデザイナーが
別のシステムを使用していますか?Elggはオープンソースのソーシャルネットワーキングエンジンであり、キャンパスのソーシャルネットワークや
Froxlorは、オープンソースの無料で軽量かつ強力なサーバー管理パネルであり、Webホスティングサービスの確立と管理に最適です。ティ
Matrixは、分散型リアルタイム通信用のオープンスタンダードの通信プロトコルです。マトリックスは、上記に分散されているホームサーバーとして実装されています
Vtiger CRMは、企業が売り上げを伸ばし、顧客サービスを提供し、利益を増やすのに役立つ人気の顧客関係管理アプリケーションです。私
はじめにこのチュートリアルでは、Vultr VPSにPufferPanelをインストールしてください。PufferPanelは、オープンソースで自由に使用できるコントロールパネルで、あなたを管理します
この記事では、CentOS 7サーバーにApache 2.4をインストールするプロセスの概要を説明します。前提条件:最新のCentOS 7サーバー。sudoユーザー。Ste
はじめにこのチュートリアルでは、NGINXまたはApacheを使用してPHP 5 *を7に更新する方法について説明します。前提条件始める前に、リポジトリを追加する必要があります
MoinMoinは、Pythonで書かれたオープンソースのファイルシステムベースのWikiエンジンです。今日、MoinMoinはオープンソースコミュニティで広く使用されています。多くのベンダー
別のシステムを使用していますか?SonarQubeは、品質システム開発のためのオープンソースツールです。Javaで書かれており、複数のデータベースをサポートしています。それは提供します
PritunlはOpenVPNのオープンソース管理インターフェイスです。プライベートネットワークが可能で、ネイティブIPv6サポートがあり、使用方法は比較的簡単です。ター
この記事では、Vultrでテンプレートとして提供されるサーバーオペレーティングシステムの概要を説明します。CentOS CentOSはRHEL(Re
phpPgAdminは、広く使用されているPostgreSQL管理ツールです。これを使用して、直感的なWebインターフェイスでPostgreSQLデータベースを管理できます。この記事では、
ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。
最近、Appleは問題を修正するための補足アップデートであるmacOS Catalina 10.15.4をリリースしましたが、このアップデートにより、Macマシンのブリックにつながる問題がさらに発生しているようです。詳細については、この記事をお読みください
原子力は、過去の出来事のために私たちが決して尊重しないことを常に軽蔑していますが、それは必ずしも悪ではありません。詳細については、投稿をお読みください。
これを読んで、人工知能が小規模企業の間でどのように人気を博しているか、そして人工知能がどのように成長し、競合他社に優位に立つ可能性を高めているかを理解してください。
私たちのコンピューターは、ジャーナリングファイルシステムと呼ばれる組織化された方法ですべてのデータを保存します。これは、検索を押すとすぐにコンピューターがファイルを検索して表示できるようにする効率的な方法です。https://wethegeek.com/?p = 94116&preview = true
ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。
LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー
NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します
別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています
HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、