目次

Tentacle プロトコル仕様

Pandora FMS ドキュメント一覧に戻る

Tentacle について

Tentacle is a client/server file transfer protocol that is:

Tentacle は、以下を意識したクライアント/サーバのファイル転送プロトコルです。

Tentacle was created to replace more complex tools like SCP / SSH and FTP for simple file transfer/retrieval, and switch from less safe authentication systems like .netrc, as well as automated interactive logins with expect, and SSH keys, to start using a certification based on the standard X.509, using certificates.

Tentacle は、SCP / SSH および FTP のようなより複雑なツールの置き換えとして、認証の仕組みも .netrc のようなものや、expect を使ったインタラクティブなログインおよび SSH キーなど、X.509 を使ったものから、簡単にファイルを転送できるツールとして作成されました。

The client and server are designed to be run from the command line or called from a shellscript. Since 2008, Tentacle is the default file transfer method for Pandora FMS, replacing SCP.

クライアントとサーバは、コマンドラインやシェルスクリプトから呼び出されて動くように設計されています。2008年以降、Tentacle は SCP に代わって Pandora FMS のデフォルトのファイル転送方式です。

Tentacle is implemented in Perl and ANSI C (MS Windows® platforms included).

Tentacle は、Perl および ANSI C (Windows プラットフォームも含む)で実装されています。

You can download it and find more information at the official Sourceforge project website.

ダウンロードおよび詳細情報の確認は、Sourceforge 上の公式のウェブサイト でできます。

Quick access:

目次:

GNU Linux Tentacle ユーザガイド

PERL 版のインストール

SourceForge からのインストール

To install Tentacle server you must have rights equivalent to root user, after having installed it you can run it as a standard user.

Tentacle サーバをインストールするには、root ユーザ権限が必要です。インストール後は標準ユーザとして実行できます。

Get the file tentacle_server-762.tar.gz from Source Forge Net:

https://sourceforge.net/projects/pandora/files/Tools%20and%20dependencies%20%28All%20versions%29/

For example (you must have wget installed):

wget https://sourceforge.net/projects/pandora/files/Tools%20and%20dependencies%20%28All%20versions%29/tentacle_server-762.tar.gz

SourceForge から tentacle_server-762.tar.gz というファイルを取得します。

https://sourceforge.net/projects/pandora/files/Tools%20and%20dependencies%20%28All%20versions%29/

例 (wget がインストールされている必要があります):

wget https://sourceforge.net/projects/pandora/files/Tools%20and%20dependencies%20%28All%20versions%29/tentacle_server-762.tar.gz

Installing on Rocky Linux 8

Rocky Linux 8 でのインストール

SVN からのインストール

The process consists on downloading the source code through Apache® Subversion® (svn) and compile it. To that end, you will need to have admin or root rights (in this documentation they are the lines that start with the numeral character # ). You are the sole responsible for said key.

この処理は、Apache® Subversion®svn)を用いてソースコードをダウンロードしコンパイルすることで行います。そのためには、admin または root 権限が必要です(このドキュメントでは、# で始まる行です)。

To install both the client and the server version run:

クライアントとサーバの *両方* をインストールするには次のようにします。

 $ svn co http://svn.code.sf.net/p/tentacled/code/trunk/perl/ tentacle
 $ cd tentacle
 $ perl Makefile.PL
 $ make
 # make install

To install just the client, run:

クライアントのみインストールする場合は以下の通りです。

 $ svn co http://svn.code.sf.net/p/tentacled/code/trunk/perl/client
 $ cd client
 $ perl Makefile.PL
 $ make
 # make install

To install just the server, run:

サーバのみインストールする場合は以下の通りです。

 $ svn co http://svn.code.sf.net/p/tentacled/code/trunk/trunk/perl/server
 $ cd server
 $ perl Makefile.PL
 $ make
 # make install

If you want to install to a custom location, replace:

特定の場所にインストールしたい場合は、以下の代わりに

 $ perl Makefile.PL

by:

次のようにします。

 $ perl Makefile.PL PREFIX=/ubication

手動インストール

If make is not available in your system, you can manually copy the files tentacle_client and tentacle_server to the appropriate place (for example, /usr/local/bin).

システムに make が無い場合は、tentacle_clienttentacle_server を手動で適切な場所(例えば /usr/local/bin)にコピーすることもできます。

In this case, if the Perl binary is not located at /usr/bin/perl edit both files and change the first line so that it points to the right path where the Perl binary is. So, for instance, replace ubication by the Perl location in the system to be installed.

このとき、Perl のバイナリが /usr/bin/perl にない場合は、双方のファイルの 1行目を Perl バイナリが置かれている適切なパスに修正します。例えば、Perl がインストールされている場所に ubication を変更します。

#!/ubication/perl

C言語版のインストール

SVN からのインストール

Bearing in mind the prior section, to install the Tentacle client, run:

Tentacle クライアントをインストールするには、次のようにします。

 $ svn co http://svn.code.sf.net/p/tentacled/code/trunk/c/ tentacle
 $ cd tentacle
 $ ./configure
 $ make
 # make install

Make sure to check the configure output for errors, missing headers etc.

configure の出力エラー、ヘッダーファイルの不足などを確認します。

To disable OpenSSL support, enabled by default, replace:

OpenSSL 開発ライブラリがあるとデフォルトで OpenSSL 対応が有効化されますが、無効化したい場合は、以下を

$ ./configure

by:

次のようにします。

$ ./configure –disable-ssl

Tentacle 利用例

To see the available options, execute -h parameter, both in the client and server version:

存在する全オプションを表示するには、クライアント、サーバ共に -h パラメータを付けて実行します。

$ tentacle_client -h
Usage: tentacle_client [options] [file] [file] ...

Tentacle client v0.4.0.

Options:
       -a address      Server address (default 127.0.0.1).
       -b localaddress Local address to bind.
       -c              Enable SSL without a client certificate.
       -e cert         OpenSSL certificate file. Enables SSL.
       -f ca           Verify that the peer certificate is signed by a ca.
       -g              Get files from the server.
       -h              Show help.
       -k key          OpenSSL private key file.
       -p port         Server port (default 41121).
       -q              Quiet. Do now print error messages.
       -r number       Number of retries for network operations (default 3).
       -t time         Time-out for network operations in seconds (default 1s).
       -v              Be verbose.
       -w              Prompt for OpenSSL private key password.
       -x pwd          Server password.
       -y proxy        Proxy server string (user:password@address:port).
$ tentacle_server -h
Usage: /usr/local/bin/tentacle_server -s <storage directory> [options]

Tentacle server v0.6.2. See https://pandorafms.com/docs/ for protocol description.

Options:
        -a ip_addresses IP addresses to listen on (default 0,0.0.0.0).
                        (Multiple addresses separated by comma can be defined.)
        -c number       Maximum number of simultaneous connections (default 10).
        -d              Run as daemon.
        -e cert         OpenSSL certificate file. Enables SSL.
        -f ca_cert      Verify that the peer certificate is signed by a ca.
        -F config_file  Configuration file full path.
        -h              Show help.
        -I              Enable insecure operations (file listing and moving).
        -i              Filters.
        -k key          OpenSSL private key file.
        -l log_file             File to write logs.
        -m size         Maximum file size in bytes (default 2000000b).
        -o              Enable file overwrite.
        -p port         Port to listen on (default 41121).
        -q              Quiet. Do now print error messages.
        -r number       Number of retries for network opertions (default 3).
        -s Storage directory
        -S (install|uninstall|run) Manage the win32 service.
        -t time         Time-out for network operations in seconds (default 1s).
        -v              Be verbose (display errors).
        -V              Be verbose on hard way (display errors and other info).
        -w              Prompt for OpenSSL private key password.
        -x pwd          Server password.
        -b ip_address   Proxy requests to the given address.
        -g port         Proxy requests to the given port.
        -T              Enable tcpwrappers support.
                        (To use this option, 'Authen::Libwrap' should be installed.)

Predefined values for all options will also be shown in the help section.

すべてのオプションで事前定義された値もヘルプに表示されます。

For all of the following examples. the server is located at the address 192.168.1.1 and the client private key is not protected by pasword.

以降の例では、サーバアドレスは 192.168.1.1 で、クライアントの秘密鍵はパスワードで保護されていません。

$ tentacle_server -m 1048576 -s /tmp -v
$ tentacle_client -a 192.168.1.1 -v /home/user/myfile.dat
$ tentacle_server -o -p 65000 -s /tmp -v
$ tentacle_client -a 192.168.1.1 -p 65000 -v /home/user/myfile.dat
$ tentacle_server -x password -s /tmp -v
$ tentacle_client -a 192.168.1.1 -x password -v /home/user/myfile.dat
$ tentacle_server -e cert.pem -k key.pem -w -s /tmp -v
$ tentacle_client -a 192.168.1.1 -c -v /home/user/myfile.dat
$ tentacle_server -e cert.pem -k key.pem -f cacert.pem -w -s /tmp -v
$ tentacle_client -a 192.168.1.1 -e cert.pem -k key.pem -v /home/user/myfile.dat
$ tentacle_server -x password -e cert.pem -k key.pem -f cacert.pem -w -s /tmp -v
$ tentacle_client \
  -a 192.168.1.1 \
  -x password \
  -e cert.pem \
  -k key.pem \
  -v /home/user/myfile.dat

The Tentacle server allows its configuration through a plain text file. All command line options are available through said file. If the same configuration option is specified both in the file and the command line, the value indicated in the latter will have preference. The full path to the configuration file is indicated with the option -F

Tentacle サーバでは、プレーンテキストファイルで設定できます。 すべてのコマンドラインオプションは設定ファイルでも指定できます。ファイルとコマンドラインの両方で同じ設定オプションが指定されている場合、後から設定された値が優先されます。設定ファイルへのフルパスは、オプション -F で指定します。

$ tentacle_server -F /etc/tentacle/tentacle_server.conf

Tentacle プロキシ

The Tentacle server can act as a proxy, communicating many Tentacle clients to an inaccessible Tentacle server.

Tentacle サーバは、多くの tentacle クライアントが直接通信できない tentacle サーバとの通信を中継するプロキシとしても動かすことができます。

The following diagram shows how the Tentacle proxy server works:

以下は、どのように tentacle プロキシが動作するかを示した図です。

The proxy does not have any information, but only sends the information from the clients to the Tentacle server. For example, to launch the Tentacle server in proxy mode use the following parameters:

プロキシは情報を持たず、データをクライアントから tentacle サーバへ転送するだけです。例えば、tentacle サーバをプロキシモードで起動するには、次のようなパラメータを利用します。

$ tentacle_server -b 192.168.200.200 -g 65000

These parameters are IP address (-b) and port (-g) of the unreachable tentacle server. Also add the normal parameters on a single line:

これらのパラメータは、クライアントから直接アクセスできない tentacle サーバの IP アドレス (-b) および ポート (-g) です。通常のパラメータも一緒に指定できます。

$ tentacle_server -a 192.168.100.100 -p 45000 -b 192.168.200.200 -g 65000

The tentacle in proxy mode also supports authentication and encryption parameters.

Tentacle プロキシも、認証 および 暗号化 に対応しています。

Windows 版 PERL のインストール

This brief guide is conceived to help configure and execute Tentacle client and server on MS Windows®.

この簡易ガイドは、MS Windows® で Tentacle クライアントとサーバを設定および実行するためのものです。

Perl 版のインストール

Perl 環境のインストール

Through ActiveState® download ActivePerl 5.8 through the following link https://www.activestate.com/products/downloads/ and execute the installer with the default options.

ActiveState® の https://www.activestate.com/products/downloads/ から、ActivePerl 5.8 をダウンロードし、デフォルトオプションでインストーラを実行します。

モジュール IO-Socket-SSL のインストール

Download and install OpenSSL from:

OpenSSL を以下からダウンロードします。

http://gnuwin32.sourceforge.net/packages/openssl.htm

Download the following perl modules:

以下の perl モジュールをダウンロードします。

http://archive.apache.org/dist/perl/win32-bin/ppms/Net_SSLeay.pm.ppd http://archive.apache.org/dist/perl/win32-bin/ppms/IO-Socket-SSL.ppd

And run from the command prompt in the directory where the .ppd files are located:

.ppd ファイルがあるディレクトリでコマンドプロンプトから以下を実行します。

ppm install Net_SSLeay.pm.ppd ppm install IO-Socket-SSL.ppd

Tentacle クライアントとサーバの実行

The execution is similar to that of systems Unix/Linux, just enter the Perl command at the beginning, followed by the whole syntax, for instance:

実行は、Unix/Linux システムと似ており、最初に perl コマンド、その後に実行プログラムを指定します。例:

> perl tentacle_client -v c:\file> perl tentacle_server -q -s c:\tmp

Tentacle プロトコル定義

The Tentacle protocol itself is very simple and straightforward. Some important characteristics are:

Tentacle プロトコル自体は非常に簡単です。いくつかの重要な特徴は次の通りです。

'?[]/\=+<>:;',*~'

ASCII sequence diagrams will be used to illustrate use cases. Commands are enclosed in single quotes.

ASCII 文字でのシーケンス図でユースケースを説明します。コマンドはシングルクォートでくくります。

ファイル送信

A successful file transfer is shown first.

まず最初に、正しくファイル転送できた場合を示します。

To allow multiple file transfers within the same session, a new SEND command may be sent after a successful file transfer and before a QUIT.

一つのセッションで複数のファイル転送ができるように、一つのファイル転送が完了したあとQUIT の前に新たな SEND コマンドを送ることができます。

If the server refuses to accept a file, a generic error message is sent back to the client. For security reasons, no details are provided. This happens if the file:

もし、サーバがファイルの受け取りを拒否する場合は、クライアントにエラーメッセージが返されます。セキュリティ上の理由により詳細は示しませんが、ファイルが以下の場合に発生します。

ファイル受信

Single files can be requested from the server.

単一のファイルをサーバから要求できます。

The client has the chance to reject the file after the server reports its size.

クライアントは、サーバがサイズを報告してきた後にファイル受け取り拒否が可能です。

As with SEND, a new RECV command may be sent after a successful file retrieval (even if the file was rejected by the client) and before a QUIT command. A generic error message is sent if the server refuses to send the file. The latter happens if the file:

SEND と同様に、一つのファイルの受け取りが完了した後に、QUIT の前に(クライアントがファイル受信を拒否した場合でも)新たな RECV コマンドを送信することができます。サーバがファイル送信を拒否した場合は、エラーメッセージが送られます。ファイルが次のような場合に発生します。

パスワード認証

If the server requires a password, the client must authenticate before sending any other command.

サーバがパスワードを要求した場合、クライアントはコマンド送信前に認証を行う必要があります。

A double MD5 of the password is sent to hide the actual password, but bear in mind that this does NOT add any extra security under an unencrypted connection. If you need secure file transfers always enable SSL-encrypted connections.

パスワードを隠蔽するためにパスワードの 2段階の md5 が送信されます。しかし、非暗号化接続では、それ以上のセキュリティは ない ことに注意してください。セキュアなファイル転送が必要な場合には、常に SSL を有効化してください。

エラー処理

Under any error condition the server will shut down the connection without giving any explanation. Be it because of a bad command, a bad password, more data than that reported being sent, etc.

エラー状態になると、サーバは何らかの説明を行うことなく接続を切ります。不正なコマンド、不正なパスワード、送信すると通知したものよりも多くのデータ送信などの場合です。


By default, the Tentacle log is configured at /dev/null.


デフォルトでは、Tentacle のログ出力先は /dev/null になっています。

OpenSSL 証明書クイックガイド

This is just a quick guide that will get you started with OpenSSL certificates. See http://www.openssl.org/docs/ for documentation.

これは、OpenSSL 証明書を使う場合のクイックガイドです。http://www.openssl.org/docs/ もあわせて参照してください。

証明書の作成

Preparing the environment:

環境の準備をします。

$ mkdir demoCA
$ mkdir demoCA/newcerts
$ mkdir demoCA/private

Remember to set in place, for safety reasons, writing and reading permissions of the different users in your system in the recently created folders.

セキュリティ上の理由から、作成したフォルダに必要なユーザの書き込みと読み取りのアクセス権限を設定することを忘れないでください。

The following step is make a self-signed CA certificate and move it to the created directories:

次の手順では、自己署名 CA 証明書を作成し、作成したディレクトリに移動します。

$ openssl req -new -x509 -keyout cakey.pem -out cacert.pem
$ mv cakey.pem demoCA/private/
$ mv cacert.pem demoCA/

Fill in the requested fields for the certificate and remember them because you will need them again later on, exactly the same ones. Now create a certificate request:

証明書の要求されたフィールドに入力し、後で同じ情報を使うため、それを記録しておいてください。 次に、証明書署名要求を作成します。

$ openssl req -new -keyout tentaclekey.pem -out tentaclereq.pem -days 360

Sign the certificate request, setting in addition a consecutive serial as a control and aduting system:

証明書署名要求に署名し、連続したシリアルを設定して制御および監査システムに設定します。

$ cat tentaclereq.pem tentaclekey.pem> tentaclenew.pem
$ touch demoCA/index.txt
$ echo "01">> demoCA/serial
$ openssl ca -out tentaclecert.pem -in tentaclenew.pem

Bear on mind that if the random load file presents some inconvenient, you may delete it with root user rights: sudo rm ~/.rnd. That way it may be created again with your own writing and reading permissions. You are the sole responsible for said root key.

ランダムファイル に不便な点がある場合は、root ユーザで削除できます: sudo rm ~/.rnd そうすれば、書き込みおよび読み取り権限のあるユーザで再度作成できます。 あなたが、上記の root キーの唯一の責任者です。

自己証明書の作成

$ openssl req -new -x509 -keyout tentaclekey.pem -out tentaclecert.pem -days 360

RSA 秘密鍵の作成

This is very useful to avoid having to enter a password on the client side using Tentacle.

これは、クライアント側で Tentacle 利用の際にパスワードの入力をする必要が無く便利です。

Generate the key:

鍵生成:

$ openssl genrsa -out tentaclekey.pem

And replace -keyout with -key on the previous steps.

上記の手順で -keyout-key に置き換えます。

証明書の他のフォーマットへのエクスポート

Certificates can be required in DER format instead of PEM for some operative systems (such as Ubuntu® or Windows®). If that is the case, you may obatin the certificate of said format through the generated PEM:

一部のオペレーティングシステム(Ubuntu® や Windows® など)では、PEM ではなく DER 形式の証明書が必要になる場合があります。 その場合は、生成された PEM を介して上記の形式の証明書を取得できます。

openssl x509 -outform der -in tentaclecert.pem -out tentaclecert.der

セキュリティオプション付での Tentacle 設定ガイド

This guide will explain step by step how to configure both Agent Software and Tentacle server to ensure safe communication.

このガイドでは、安全な通信を確保するために エージェントソフトウェアTentacle サーバ の両方を設定する方法を段階的に説明します。

First, it is recommended to carry out manual tests from the devices to make sure configuration, parameters and certificates are correct.

まず、デバイスから手動テストを実行して、設定、パラメータ、および証明書が正しいことを確認することをお勧めします。

Then configure permanently the according configuration files:

次に、それに応じた次の設定ファイルを永続的に設定します。

Tentacle servers

Tentacle サーバ

/etc/tentacle/tentacle_server.conf

Unix/Linux software agents

Unix/Linux ソフトウエアエージェント

/etc/pandora/pandora_agent.conf

MS Windows® software agents

MS Windows® ソフトウエアエージェント

%ProgramFiles%\pandora_agent\pandora_agent.conf

Satellite servers

サテライトサーバ

ect/pandora/satellite_server.conf

Tentacle Proxy servers

Tentacle プロキシサーバ

/etc/tentacle/tentacle_server.conf

Remember to restart the according services after any modification. In the case of Unix/Linux, you may also use the option TENTACLE_EXT_OPTS located at /etc/init.d/tentacle_serverd (you may check the rest of the options for said daemon in this link ).

変更後は関連するサービスを再起動するこを忘れないようにしてください。Unix/Linux の場合は /etc/init.d/tentacle_serverdTENTACLE_EXT_OPTS オプションを使うこともできます。(その他のオプションについては こちらのリンク を確認してください。)

通信の暗号化

Both the Tentacle server and the Software Agents can use a secure communication with certificates and password, either direct communication between both, or through a Tentacle Proxy server.

Tentacleサーバーとソフトウェアエージェントの両方が、証明書とパスワードを使用した安全な通信を使用できます。両方の間で直接通信するか、Tentacle プロキシサーバを介して通信します。

It is ALWAYS necessary to indicate in the parameters the absolute paths where the certificates are located, e.g. /etc/ssl/tentaclecert.pem


常に証明書がある場所は絶対パスで指定する必要があります。例: /etc/ssl/tentaclecert.pem


To use Tentacle's secure options, please verify that the package perl(IO::Socket::SSL) is installed on your system.

Tentacle の暗号化オプションを利用するには、システムに perl(IO::Socket::SSL) パッケージがインストールされていることを確認してください。

In the previous sections the various combinations are explained in detail; in this section the password options, Tentacle Proxy server and the use of TENTACLE_EXT_OPTS para fijar configuraciones. to set configurations are added. Also review in this earlier section the certificate names and keys on each side. A simplified syntax is used for didactic purposes only:

前の章では、さまざまな組み合わせについて詳しく説明しました。 この章では、パスワードオプション、Tentacle プロキシサーバ、および設定を追加するための TENTACLE_EXT_OPTS パラメータについて説明します。また、前述の、証明書名とキーを確認してください。説明の目的で簡略化した表現をしています。

Simple transfer with password-based authentication:

パスワード認証での単純な転送:

Extra parameter in the server for password:

パスワード認証のためのサーバのパラメータ:

 -x password

Extra parameter in the client for password ( TENTACLE_EXT_OPTS ):

パスワード認証のためのクライアントのパラメータ( TENTACLE_EXT_OPTS ):

 -x password

Secure transfer, without client certificate:

クライアント証明無しでの暗号化転送:

Extra parameters on the server:

サーバのパラメータ:

 -e tentacle_cert -k tentacle_key

Secure transfer with customer certificate

クライアント証明有りでの暗号化転送:

Extra parameters on the server:

サーバのパラメータ:

 -e tentacle_cert -k tentacle_key -f ca_cert

Extra parameters in the client ( TENTACLE_EXT_OPTS ):

クライアントのパラメータ ( TENTACLE_EXT_OPTS ):

 -e tentacle_client_cert -k tentacle_client_key

Secure transfer with client certificate and additional password authentication:

クライアント証明書およびパスワード認証での暗号化転送:

Extra parameters on the server:

サーバのパラメータ:

 -x password -e tentacle_cert -k tentacle_key -f ca_cert

Extra parameters in the client ( TENTACLE_EXT_OPTS ):

クライアントのパラメータ ( TENTACLE_EXT_OPTS ):

 -x password -e tentacle_client_cert -k tentacle_client_key

証明書を用いて Tentacle サーバが任意のクライアントからの暗号化接続を受け付ける設定

For this configuration, just enter the certificate and key used for encryption in Tentacle server configuration.

この設定では、Tentacle サーバの設定で暗号化に使用する証明書とキーを入力するだけです。

When laucnhing the server manually, include the parameters -e and -k:

手動で サーバ を起動する際に、-e および -k パラメータを指定します。

$ su - pandora -s /bin/bash
# tentacle_server -v -e tentacle_cert -k tentacle_key -s /tmp

Launch in the client manually, include the -c parameter:

クライアント を手動で起動する際には、-c パラメータを指定します。

$ echo test> file.txt
$ tentacle_client -v -c -a 192.168.70.125 file.txt

If this manual execution works properly, you may continue with the permanent configuration in the appropriate file:

手動実行で正しく動作することが確認できたら、それで動作するように設定を行います。

ssl_cert tentacle_cert
ssl_key tentacle_key
server_opts -c
server_opts -c

Tentacle サーバが特定の CA の署名がされたクライアントの検証をして接続を受け付ける設定

For this configuration, indicate de certificate and key used for encryption in Tentacle server configuration and client encryption certificates.

この設定では、Tentacle サーバの暗号化設定とクライアントに使用される証明書とキーを指定します。

When launching the server manually, include the -e and -k parameters:

サーバを手動で起動する際に、-e および -k パラメータを指定します。

 # su - pandora -s /bin/bash
 # tentacle_server -v -e tentacle_cert -k tentacle_key -s /tmp

When launching the client manually, include the -e and -f parameters:

クライアントを手動で起動する際は、-e および -f パラメータを指定します。

 # echo test> file.txt
 # tentacle_client -v -e tentacle_client_cert -f ca_cert -a 192.168.70.125 file.txt

If this manual execution works properly, permanent configuration will be possible in the appropriate file.

手動実行で正しく動作することが確認できたら、それで動作するように設定を行います。

 ssl_cert tentacle_cert
 ssl_key tentacle_key
server_opts -e tentacle_client_cert -f ca_cert
server_opts -e tentacle_client_cert -f ca_cert

特定の CA の署名をされた Tentacle サーバへクライアントが検証し接続する設定

For this configuration, indicate the certificates and keys used for encryption in Tentacle server and client configuration.

この設定では、Tentacle サーバとクライアントの設定で暗号化に使用される証明書とキーを設定します。

When launching the server manually, include the -e, -k and -f parameters:

サーバを手動で起動する際に、-e-k-f パラメータを指定します。

 # su - pandora -s /bin/bash
 # tentacle_server -v -e tentacle_cert -k tentacle_key -f ca_cert -s /tmp

When launching the client manually, include the -e and -k parameters (notice the use of the line connector \:

ライアントを手動で起動する際は、-e および -k パラメータを指定します。(改行のため \ を使っています)

 # echo test> file.txt
 # tentacle_client -v \
            -e tentacle_client_cert \
            -k tentacle_client_key \
            -a 192.168.70.125 file.txt

If this manual execution works properly, permanent configuration will be possible in the appropriate file.

手動実行で正しく動作することが確認できたら、それで動作するように設定を行います。

 ssl_cert tentacle_cert
 ssl_ca ca_cert
 ssl_key tentacle_key
server_opts -e tentacle_client_cert -k tentacle_client_key
server_opts -e tentacle_client_cert -k tentacle_client_key

Tentacle サーバおよびクライアントの双方が特定の CA の署名を検証する接続設定

For this configuration, indicate the certificates and keys used for encryption in Tentacle server and client configuration.

この設定では、Tentacle サーバとクライアントの双方で暗号化に使用される証明書と鍵を設定します。

When launching the server manually, include the -e, -k and -f parameters:

サーバを手動で起動する際に、-e-k-f パラメータを指定します。

 # su - pandora -s /bin/bash
 # tentacle_server -v -e tentacle_cert -k tentacle_key -f ca_cert -s /tmp

When launching the client manually, include the -e, -k and -f parameters:

クライアントを手動で起動する際は、-e-k-f パラメータを指定します。

 # echo test> file.txt
 # tentacle_client -v -e tentacle_client_cert -k tentacle_client_key -f ca_cert -a 192.168.70.125 file.txt

If this manual execution works properly, permanent configuration will be possible.

手動実行で正しく動作することが確認できたら、それで動作するように設定を行います。

 ssl_cert tentacle_cert
 ssl_ca ca_cert
 ssl_key tentacle_key
server_opts -e tentacle_client_cert -k tentacle_client_key -f ca_cert
server_opts -e tentacle_client_cert -k tentacle_client_key -f ca_cert

Tentacle 暗号化設定

Both the Tentacle server and the software agents can use safe communication through certificates and password, either directly between them or through a Tentacle Proxy.

Tentacle サーバとソフトウェアエージェントの両方が、証明書とパスワードを介して、直接または Tentacle プロキシを介して安全な通信を使用できます。

ALWAYS indicate in the parameters the absolute paths where the certificates are found, for example /etc/ssl/tentaclecert.pem


常に、証明書の絶対パスをパラメーターに指定します。例えば、 /etc/ssl/tentaclecert.pem です。

To use Tentacle safe options, please verify the package perl(IO::Socket::SSL) is installed on your system.

Tentacle 暗号化オプションを使用するには、システムにパッケージ perl(IO::Socket::SSL) がインストールされていることを確認してください。


In previous sections, the different combinations are explained in detail; in this section we add options such as password, Tentacle Proxy server and the use of TENTACLE_EXT_OPTS Check in the previous section the names of the certificates and the keys on each side. A simplified syntax is used just for learning purposes:

前の章では、さまざまな組み合わせについて詳しく説明しました。 この章では、パスワードオプション、Tentacle プロキシサーバ、および設定を追加するための TENTACLE_EXT_OPTS パラメータについて説明します。また、前述の、証明書名とキーを確認してください。説明の目的で簡略化した表現をしています。

Simple transfer with password-based authentication:

パスワード認証での単純な転送:

Extra parameter in the server for password:

パスワード認証のためのサーバのパラメータ:

 -x password

Extra parameter in the client for password ( TENTACLE_EXT_OPTS ):

パスワード認証のためのクライアントのパラメータ( TENTACLE_EXT_OPTS ):

 -x password

Safe transfer, with no client certificate:

クライアント証明無しでの暗号化転送:

Extra server parameters:

サーバのパラメータ:

 -e tentacle_cert -k tentacle_key

Safe transfer with client certificate

クライアント証明有りでの暗号化転送:

Extra server parameters:

サーバのパラメータ:

 -e tentacle_cert -k tentacle_key -f ca_cert

Extra client parameters ( TENTACLE_EXT_OPTS ):

クライアントのパラメータ( TENTACLE_EXT_OPTS ):

 -e tentacle_client_cert -k tentacle_client_key

Safe transfer with client certificate and additional authentication with password:

クライアント証明書およびパスワード認証での暗号化転送:

Extra server parameters:

サーバのパラメータ:

 -x password -e tentacle_cert -k tentacle_key -f ca_cert

Extra client parameters ( TENTACLE_EXT_OPTS ):

クライアントのパラメータ( TENTACLE_EXT_OPTS ):

 -x password -e tentacle_client_cert -k tentacle_client_key

Tentacle プロキシを使った暗号化設定例

You are explained step by step how to configure both software agents as well as the Tentacle server for safe communication, using the Tentacle Proxy server too. Check out in the previous section the names of the certificates and the keys on each side. Check the available parameters in this section.

Tentacle プロキシサーバを利用した暗号化通信のためのソフトウェアエージェントと Tentacle サーバ両方の設定方法を段階的に説明します。 前の章で述べた証明書の名前と鍵を確認してください。パラメータに関しても確認してください。

Manual tests:

手動テスト:

1. Start tentacle_server manually:

1. tentacle_server を手動起動します:

  sudo -u user tentacle_server \
            -x password \
            -e tentacle_cert \
            -k tentacle_key \
            -f ca_cert -s /tmp -v

2. Start the proxy manually:

2. プロキシを手動起動します:

sudo -u user tentacle_server -b ip_server -g 41124

3. Start tentacle_client manually:

3. tentacle_client を手動で起動します:

  sudo -u user tentacle_client \
             -a ip_proxy/ip_server \
             -x password \
             -e tentaclecert.pem \
             -k tentaclekey.pem \
             -v file

Once you have checked that the file was sent successfully, proceed to configure tentacle_server permanently as well as the clients.

ファイルが正常に送信されたことを確認したら、tentacle_server とクライアントの永続的な設定に進みます。

To configure tentacle_server with the certificate options, edite the starting script of the service tentacle_serverd, usually located at /etc/init.d/tentacle_serverd. An intermidate point should be configured similarly to work as a proxy. To configure software agents to use Tentacle safe communication, edit the configuration files pandora_agent.conf, usually located at /etc/pandora/pandora_agent.conf.

暗号化オプション付きで tentacle_server を設定するには、通常 /etc/init.d/tentacle_serverd にあるサービス tentacle_serverd の起動スクリプトを編集します。 中間点は、プロキシとして機能するように設定する必要があります。Tentacle 暗号化通信を使用するようにソフトウェアエージェントを設定するには、通常は /etc/pandora/pandora_agent.conf にある設定ファイル pandora_agent.conf を編集します。

Permanent configuration:

永続的な設定

1. Start the server with SSL. Modify the booting script /etc/tentacle/tentacle_server.conf and uncomment and complete the lines password, ssl_cert, ssl_key, ssl_ca with the valid values or paths for your certificate:

1. SSL つきでサーバを開始します。起動スクリプト /etc/init.d/tentacle_serverd を編集します。TENTACLE_EXT_OPTS の行を探し、以下を追加します。

Remember that each time you make changes to the tentacle configuration file, it is necessary to restart the service for the changes to take effect: /etc/init.d/tentacle_serverd start .


Tentacle 設定ファイルに変更を加えた際は、それを有効にするためにサービスを再起動する必要があることに注意してください: /etc/init.d/tentacle_serverd start


2. Start the proxy. As in the previous point number 1, modify the configuration file /etc/tentacle/tentacle_server.conf of the machine that is going to act as proxy. Also, uncomment and complete the lines proxy_ip y proxy_port with the configuration valid in your environment:

2. プロキシを開始します。1. ど同様に、プロキシとして動作させるマシンで起動スクリプト /etc/init.d/tentacle_serverd を編集します。同様に TENTACLE_EXT_OPTS の行を探し、以下を追加します。

Remember that each time you make changes to the tentacle configuration file, it is necessary to restart the service for the changes to take effect: /etc/init.d/tentacle_serverd start .

Tentacle 設定ファイルに変更を加えた際は、それを有効にするためにサービスを再起動する必要があることに注意してください: /etc/init.d/tentacle_serverd start

3. Start the Software Agent with the corresponding options. Modify the file pandora_agent.conf, find the line server_opts and add:

3. 対応するオプションをつけてソフトウエアエージェントを開始します。pandora_agent.conf を編集し、server_opts という行を探し、以下を追加します。

-x password -e tentacle_client_cert -k tentacle_client_key

Remember that the token server_ip must be configurated pointing to Proxy's IP direction instead main server's IP direction:

server_ip で指定するアドレスは、監視サーバではなくプロキシサーバの IP にすることに注意してください。server_ops の行全体は次のようになります。

server_opts -x password -e tentacle_client_cert -k tentacle_client_key


If you do not want to use any of the options, such as the password, simply do not use the corresponding parameter.

パスワードなどの一部のオプションを使用したくない場合は、対応するパラメーターを使用しないでください。

Tentacle データ圧縮


Version NG 725 or superior.



バージョン NG 725 以上


Tentacle allows enabling data compression with the option -z of the command line, reducing the size of the transferred data at the expense of the CPU load.

Tentacle では、コマンドラインのオプション -z を使用してデータ圧縮を有効にすると、CPU 負荷は上がりますが、転送されるデータのサイズを削減できます。

Pandora FMS エージェント

Edit the file /etc/pandora/pandora_agent.conf and add -z to server_opts:

/etc/pandora/pandora_agent.conf を編集し、server_opts-z を追加します。

server_opts -z

サテライトサーバ

Edit the file /etc/pandora/satellite_server.conf and add -z to server_opts:

/etc/pandora/satellite_server.conf を編集し、server_opts-z を追加します。

server_opts -z

設定ファイル要素

By default the Tentacle configuration file is located at /etc/tentacle/tentacle_server.conf.

デフォルトでは、tentacle の設定ファイルは、/etc/tentacle/tentacle_server.conf にあります。

Remember that each time you make changes to the Tentacle configuration file, it is necessary to restart the service for the changes to take effect:
/etc/init.d/tentacle_serverd start .

Tentacle の設定ファイルに変更を加えるたびに、変更を有効にするためにはサービスを再起動する必要があることに注意してください。
/etc/init.d/tentacle_serverd start

addresses

# [-a] IPv4 address to listen on. Several IP address can be selected separating it by comma.
addresses 0.0.0.0

port

# [-p] Port to listen on
port 41121

max_connections

# [-c] Maximum number of simultaneous connections
max_connections 10

daemon

# [-d] Run as daemon. 1 true, 0 false
daemon 1

insecure

# [-I] Enable insecure mode
insecure 0

filters

# Filters (regexp:dir;regexp:dir...)
filters .*\.conf:conf;.*\.md5:md5;.*\.zip:collections;.*\.lock:trans;.*\.rcmd:commands;.*\.agent_setup\.exe:agent;.*\.agent_setup\.tar\.gz:agent

When upgrading to version 777, the Tentacle server must be restarted to take all the new filters installed.

バージョン 777 にアップグレードする場合、インストールされたすべての新しいフィルターを有効にするために、Tentacle サーバを再起動する必要があります。

max_size

# [-m] Maximum file size allowed by the server in bytes
max_size 2000000

overwrite

# [-o] Accept files with a repeated name. 1 true, 0 false.
overwrite 0

quiet

# [-q] Do not output error messages.
quiet 0

retries

# [-r] Number of retries for socket read/write operations
retries 3

directory

# [-s] Storage directory
directory /var/spool/pandora/data_in

proxy_ip

# [-b] IP address to proxy client requests to
proxy_ip 127.0.0.1

proxy_port

# [-g] Port number to proxy client requests to
proxy_port 41121

timeout

# [-t] Timeout for socket read/write operations in seconds
timeout 1

verbose

# [-v and -V] Verbose level
#   0: Do not display any informative messages
#   1: Display only important messages [-v]
#   2: Display all messages [-V]
verbose 0

log_file

# [-l] Log file
log_file /dev/null

password

# [-x] Server password
# password PASSWORD

ssl_cert

# [-e] SSL certificate file full path
# ssl_cert /path/to/ssl/cert

ssl_ca

# [-f] SSL CA file full path
# ssl_ca /path/to/ssl/ca

ssl_key

# [-k] SSL private key file
# ssl_key /path/to/private/key/file

ssl_password

# [-w] SSL password. Set to 1 to ask for password by command line
# ssl_password 0

use_libwrap

# [-T] Use libwrap library (Authen::Libwrap perl module). 1 true, 0 false
# use_libwrap 0

Pandora FMS ドキュメント一覧に戻る