サーバ設定項目
#
設定項目一覧hcpdデーモンの設定項目は以下の通りです。
システム動作環境設定・通信方式関連
説明 | 項目名 |
---|---|
プロトコルバージョン(2固定) | ProtocolVersion |
TCPサービス待機アドレスやポート番号などの設定 | TCPListenAddress |
HpFPサービス待機アドレスやポート番号などの設定 | HPFPListenAddress |
HpFPポート分離型サービス待機アドレスやポート番号などの設定(廃止予定) | UDPListenAddress |
WebSocket(SSL/TLS)サービス待機アドレスやポート番号などの設定 | WSSListenAddress |
OpenSSLオプションの指定(WebSocket(SSL/TLS)通信時) | WSSOptions |
OpenSSLのCipher Suites オプション指定(WebSocket(SSL/TLS)通信時、TLS 1.3で使用) | WSSCipherSuites |
OpenSSLのCipher List オプション指定(WebSocket(SSL/TLS)通信時、TLS 1.2 以前で使用) | WSSCipherList |
WebSocket(平文通信)サービス待機アドレスやポート番号などの設定 | WSListenAddress |
複数サービスのボンディング設定(多重接続時) | ListenServiceBonding |
通信データ圧縮機能
説明 | 項目名 |
---|---|
ヘッダブロックの圧縮設定(予約) | HeaderCompress |
コンテントブロックの圧縮設定(予約) | ContentCompress |
データフロー制御・帯域制御
説明 | 項目名 |
---|---|
受信帯域制限(システム全体) | MaxTotalReceiveRate |
送信帯域制限(システム全体) | MaxTotalSendRate |
受信帯域制限(接続単位) | MaxReceiveRatePerConnection |
送信帯域制限(接続単位) | MaxSendRatePerConnection |
データフロー制御・ファイルロック機能
説明 | 項目名 |
---|---|
ファイルロック使用設定 | FileLock |
獲得試行回数の設定 | FileLockTrials |
要求間隔(秒)の設定 | FileLockTrialInterval |
データフロー制御・一時ファイル保存機能(アトミック(不可分)ファイル保存)
説明 | 項目名 |
---|---|
一時ファイルを経由する二段階保存の設定 | AtomicLikeSaving |
実行するファイルサイズの閾値指定 | AtomicLikeSavingThreshold |
一時ファイル上書き要求の拒否 | AtomicLikeSavingRejectOverwriteRequest |
データフロー制御・データバッファ設定
説明 | 項目名 |
---|---|
バッファメモリ割当サイズ制限(システム全体) | MaxTotalBufferSize |
バッファメモリ割当サイズ制限(接続単位) | MaxBufferSizePerConnection |
送信バッファサイズ設定(TCP通信時) | TCPServiceSocketSendBuffer |
拡張バッファサイズ設定(HpFPサービス使用時) | UDPServiceExtensionBufferSize |
データフロー制御・転送ファイルサイズ制限
説明 | 項目名 |
---|---|
受信可能ファイルサイズの最大値設定 | MaxReceiveFileSize |
送信可能ファイルサイズの最大値設定 | MaxSendFileSize |
データフロー制御・通信メッセージサイズ制御
説明 | 項目名 |
---|---|
転送するヘッダブロックの初期サイズ設定 | InitHeaderBlockSize |
転送するコンテントブロックの初期サイズ設定 | InitContentBlockSize |
ヘッダブロックの拡張可能上限サイズ設定 | MaxHeaderBlockSize |
コンテントブロックの拡張可能上限サイズ設定 | MaxContentBlockSize |
一括で送信できるファイル要求数の最大値設定 | MaxRequestFileEntryAtOnce |
データフロー制御・ディスクI/O速度制御
説明 | 項目名 |
---|---|
読み込み速度の上限設定(接続単位) | MaxReadRatePerConnection |
書き込み速度の上限設定(接続単位) | MaxWriteRatePerConnection |
コード変換・通信エンコードネゴシエーション
説明 | 項目名 |
---|---|
通信時に使用できる文字列エンコーディング方式の設定 | TransportCharEncoding |
コード変換・ホスト文字エンコード対応
説明 | 項目名 |
---|---|
ホストで使用されている文字列エンコーディング方式の指定 | HostEncoding |
認証
説明 | 項目名 |
---|---|
LPA(Local Password Authentication)認証設定 | LocalPasswordAuthentication |
PAM(Pluggable Authenticaton Module)認証設定 | PAMAuthentication |
RSA(Rivest-Shamir-Adleman cryptosystem)認証設定 | PubkeyAuthentication |
Windows認証設定 | WinLogonUserAuthentication |
システム認証(PAM認証、Windows認証)実行制御 | PerformSystemAuthenticationRegardlessUsers |
公開鍵探索ディレクトリの指定(RSA認証) | AuthorizedKeysSearchDir |
公開鍵ファイルパスの指定(RSA認証) | AuthorizedKeysFile |
公開鍵参照コマンドの指定(RSA認証) | AuthorizedKeysCommand |
公開鍵参照コマンド実行ユーザの指定(RSA認証) | AuthorizedKeysCommandUser |
CA(Certificate Authorities)証明書の保管先ファイルパス指定 | CACertificateFile |
CA(Certificate Authorities)証明書の保管先ディレクトリ指定(予約) | CACertificatePath |
CRL(証明書失効リスト)の保管先ファイルパス指定 | CARevocationFile |
CRL(証明書失効リスト)の保管先ディレクトリ指定(予約) | CARevocationPath |
OCSP(オンライン証明書失効検査)実施の設定(クライアント認証時) | OCSPRevocationEnabled |
ユーザ定義ファイルパス指定 | LocalUserFile |
LPA(Local Password Authentication)認証のパスワード定義ファイルパス指定 | LocalPasswordFile |
ログイン許可するユーザ名のパターン設定 | AllowUsers |
ログイン許可するグループ名のパターン設定 | AllowGroups |
ログイン拒否するユーザ名のパターン設定 | DenyUsers |
ログイン拒否するグループ名のパターン設定 | DenyGroups |
暗号
説明 | 項目名 |
---|---|
通信メッセージ暗号化に使用できる暗号方式の設定 | AcceptableCryptMethod |
通信データ及びファイルの検証に使用するダイジェスト(ハッシュ)方式の設定 | AcceptableDigestMethod |
MAC(Message Authentication Code)による通信メッセージ検査要求 | RequireDataIntegrityChecking |
暗号化通信セキュリティネゴシエーション
説明 | 項目名 |
---|---|
サーバ証明書セキュリティ機能の設定 | UseServerCertificateSecurity |
クライアントに対するサーバ証明書セキュリティ機能の要求設定 | RequireServerCertificateSecurity |
サーバ証明書セキュリティ機能で使用するサーバ秘密鍵のファイルパス指定 | ServerKeyFile |
サーバ証明書のファイルパス指定 | ServerCertificateFile |
サーバ証明書の中間証明書指定(複数可) | ServerCertificateChainFile |
アクセス制御
説明 | 項目名 |
---|---|
ユーザ領域ディレクトリからの後退動作制御(後方互換オプション) | UserDirectoryFallbackAvailable |
ユーザホームディレクトリを発見できない場合のアクセス拒否設定 | RejectOnUserHomeDirectoryNotFound |
アクセス制御・特権分離
説明 | 項目名 |
---|---|
特権分離の設定 | UsePrivilegeSeparation |
セッション実行可能なUIDの最小値設定 | PrivilegeSeparationMinimumUID |
セッション実行可能なGIDの最小値設定 | PrivilegeSeparationMinimumGID |
デフォルトユーザ資格情報設定(ユーザ権限が特定されない場合に適用) | PrivilegeSeparationUser |
Umask値設定(ユーザ認証が行われて分離されたプロセスに適用) | PrivilegeSeparationUmask |
Umask値設定(ユーザ認証が行われずに分離されたプロセスに適用(匿名ユーザ)) | PrivilegeSeparationUmaskAnonymous |
認証されたユーザの権限を転送先ファイルパーミッションへ適用(特権分離しない場合) | ApplyUserPermission |
補助グループ無効化 | NoSupplementalGroupInPrivilegeSeparation |
アクセス制御・ACL(Access Control List)機能
説明 | 項目名 |
---|---|
ACL(Access Control List)の定義 | AccessList |
ACL 許可アクセスの定義 | Allow |
ACL 拒否アクセスの定義 | Deny |
アクセス制御・アドミッション制御(入場制限)
説明 | 項目名 |
---|---|
接続数制限(全体) | MaxTotalConnection |
接続数制限(TCP通信時) | MaxTcpConnection |
接続数制限(UDP (HpFP)通信時) | MaxUdpConnection |
接続数制限(WebSocket通信時) | MaxWsConnection |
接続数制限(1ユーザあたり) | MaxConnectionPerUser |
接続数制限(1秒あたり) | MaxConnectionPerSec |
アクセス制御・ドキュメントポイント
説明 | 項目名 |
---|---|
ドキュメントポイントの定義 | DocPoint |
ドキュメントポイントが指すディレクトリパスの指定 | DocPath |
ドキュメントポイントでの読み込みアクセス設定 | PermitAccessRead |
ドキュメントポイントでの書き込みアクセス設定 | PermitAccessWrite |
ドキュメントポイントでの上書きアクセス設定 | PermitAccessOverwrite |
ドキュメントポイントでの削除アクセス設定 | PermitAccessDelete |
ドキュメントポイントでのランダム読み込みアクセス設定(予約) | PermitAccessRandomRead |
ドキュメントポイントでのランダム書き込みアクセス設定(予約) | PermitAccessRandomWrite |
各種監視機能・タイムアウト制御
説明 | 項目名 |
---|---|
トランスポートのタイムアウト時間設定 | TransportTimeout |
アイドル状態のタイムアウト時間設定 | IdleTimeout |
性能評価機能
説明 | 項目名 |
---|---|
メモリ転送並列設定(ローカルI/O抑制モード実行時) | MemoryTransferConcurrency |
ログ管理機能
説明 | 項目名 |
---|---|
syslogオプションの設定 | SyslogOption |
syslogファシリティの設定 | SyslogFacility |
システムログの設定 | SystemLog |
システムログのログレベル設定 | SystemLogLevel |
アプリケーション統計ログの取得と設定 | ApplicationStatLog |
トランスポート統計ログの取得と設定 | TransportStatLog |
システム統計ログの取得と設定 | SystemStatLog |
ファイル操作ログの取得と設定 | FileOperationLog |
各種統計ログをユーザ毎に記録(特権分離時) | StatLogPerUserInPrivilegeSeparation |
アプリ統計ログ セキュリティ関連の詳細情報出力設定 | ApplicationStatLogSecurityEx |
システム動作環境設定・CPUスレッド制限
説明 | 項目名 |
---|---|
使用スレッド数の制限(Linux) | MaxConcurrentThread |
システム動作環境設定・アプリケーション連携機能
説明 | 項目名 |
---|---|
アプリ実行終了時の呼び出しスクリプト設定 | CallbackScript |
その他
説明 | 項目名 |
---|---|
宛先ディレクトリの獲得保証(後方互換オプション) | EnsureDestinationInFileTransfer |
#
システム動作環境設定・通信方式関連#
TCPListenAddress=========================================================================対応OS : Linux.x86 / Windows書式 : TCPListenAddress <tcp_service_addr>[:<tcp_service_port>[:<mcd>]][ <acl_name>]-------------------------------------------------------------------------tcp_service_addr既定値 : なし値の範囲 : IPアドレス-------------------------------------------------------------------------tcp_service_port書式 : <decimal_number>既定値 : 874値の範囲 : decimal_numberは、1 - 65535の範囲-------------------------------------------------------------------------mcd既定値 : 物理コア数 + 1, 論理コア数/2 + 1, 25 or 1値の範囲 : 1 - 65535-------------------------------------------------------------------------acl_name既定値 : なし値の範囲 : 設定ファイル中に記述されたアクセスコントロールリストの名前=========================================================================
クライアントからの接続を受け付けるTCPサービスを定義します。
tcp_service_addrは、TCPサービスのIPアドレスを指定します。
tcp_service_portは、同サービスのポート番号を指定します。
mcdは、オプショナルです。このサービスでクライアントに提供するセッションあたりの接続の数を指定します。1を指定した場合は、セッションは単一の接続で動作します。2以上を指定した場合は、接続の受付とセッションのネゴシエーションが完了した後に、指定された数から1を差し引いた数だけ追加で接続が行われ並列で通信を行います。 指定しない場合は、CPUの物理コア数、論理コア数及びライセンスから次の何れかの値に決まります。
- 物理コア数 + 1 (物理コア数 \< 論理コア数 かつ 物理コア数 > 1の場合。但し、最大25)
- 論理コア数/2 + 1 (物理コア数 = 論理コア数 かつ 論理コア数/2 > 1の場合。但し、最大25)
- 1(物理コア数もしくは論理コア数/2が1の場合やライセンスに多重化機能が含まれない場合)
acl_nameは、オプショナルです。このTCPサービスに設定するアクセスコントロールリストを名前で指定します。このオプションを省略した場合、もしくは指定された名前がいずれのアクセスコントロールリストの名前と一致しない場合は、無名のアクセスコントロールリストがサービスに設定されます。
--例:TCPListenAddress 0.0.0.0:1874--
#
HPFPListenAddress=========================================================================対応OS : Linux.x86 / Windows書式 : HPFPListenAddress <hpfp_service_addr>[:<hpfp_service_port>[:<hpfp_sndbuf>[:<hpfp_rcvbuf>[:<hpfp_mss>[:<mcd>]]]]][ <acl_name>]-------------------------------------------------------------------------hpfp_service_addr既定値 : なし値の範囲 : IPアドレス値-------------------------------------------------------------------------hpfp_service_port書式 : <decimal_number>既定値 : 65520値の範囲 : decimal_numberは、1 - 65535の範囲-------------------------------------------------------------------------hpfp_sndbuf書式 : ( DEFAULT | D | <decimal_number>[[(T|G|M|K)]B] )既定値 : 100MB値の範囲 : バイト換算で符号なし倍長整数の範囲。 DはDEFAULTの略記。-------------------------------------------------------------------------hpfp_rcvbuf書式 : ( DEFAULT | D | <decimal_number>[[(T|G|M|K)]B] )既定値 : 200MB値の範囲 : バイト換算で符号なし倍長整数の範囲。 DはDEFAULTの略記。-------------------------------------------------------------------------hpfp_mss書式 : ( DEFAULT | D | NONE | N | <decimal_number>[[(T|G|M|K)]B] )既定値 : NONE値の範囲 : バイト換算で符号なし整数の範囲。DはDEFAULTの略記。NはNONEの略記。-------------------------------------------------------------------------mcd既定値 : 物理コア数 + 1, 論理コア数/2 + 1, 25 or 1値の範囲 : 1 - 65535-------------------------------------------------------------------------acl_name既定値 : なし値の範囲 : 設定ファイル中に記述されたアクセスコントロールリストの名前=========================================================================
クライアントからの接続を受け付けるHpFPサービスを定義します。
hpfp_service_addrは、HpFPサービスのIPアドレスを指定します。
hpfp_service_portは、オプショナルです。HpFPプロトコルで使用するUDPトランスポートのポート番号を指定します。
hpfp_sndbufは、オプショナルです。HpFPプロトコルで使用する送信バッファのサイズを指定します。Dを指定すると既定値を使用します。
hpfp_rcvbufは、オプショナルです。HpFPプロトコルで使用する受信バッファのサイズを指定します。Dを指定すると既定値を使用します。
hpfp_mssは、オプショナルです。HpFPプロトコルで使用するMSSを指定します。Dを指定すると既定値を使用します。Nを指定した場合、HpFPプロトコルによるMTU探索を行い値を決定します。
mcdは、オプショナルです。このサービスでクライアントに提供するセッションあたりの接続の数を指定します。1を指定した場合は、セッションは単一の接続で動作します。2以上を指定した場合は、接続の受付とセッションのネゴシエーションが完了した後に、指定された数から1を差し引いた数だけ追加で接続が行われ並列で通信を行います。 指定しない場合は、CPUの物理コア数、論理コア数及びライセンスから次の何れかの値に決まります。
- 物理コア数 + 1 (物理コア数 \< 論理コア数 かつ 物理コア数 > 1の場合。但し、最大25)
- 論理コア数/2 + 1 (物理コア数 = 論理コア数 かつ 論理コア数/2 > 1の場合。但し、最大25)
- 1(物理コア数もしくは論理コア数/2が1の場合やライセンスに多重化機能が含まれない場合)
acl_nameは、オプショナルです。このHpFPサービスに設定するアクセスコントロールリストを名前で指定します。このオプションを省略した場合、もしくは指定された名前がいずれのアクセスコントロールリストの名前と一致しない場合は、無名のアクセスコントロールリストがサービスに設定されます。
--例:HPFPListenAddress 0.0.0.0:10000--
#
UDPListenAddress=========================================================================対応OS : Linux.x86 / Windows書式 : UDPListenAddress <hpfp_service_addr>[:<hpfp_service_port>[:<hpfp_udp_port>[:<hpfp_sndbuf>[:<hpfp_rcvbuf>[:<hpfp_mss>[:<mcd>]]]]]][ <acl_name>]-------------------------------------------------------------------------hpfp_service_addr既定値 : なし値の範囲 : IPアドレス値-------------------------------------------------------------------------hpfp_service_port書式 : <decimal_number>既定値 : 884値の範囲 : decimal_numberは、1 - 65535の範囲-------------------------------------------------------------------------hpfp_udp_port書式 : ( DEFAULT | D | <decimal_number> )既定値 : 65520値の範囲 : decimal_numberは、1 - 65535の範囲。DはDEFAULTの略記。-------------------------------------------------------------------------hpfp_sndbuf書式 : ( DEFAULT | D | <decimal_number>[[(T|G|M|K)]B] )既定値 : 100MB値の範囲 : バイト換算で符号なし倍長整数の範囲。 DはDEFAULTの略記。-------------------------------------------------------------------------hpfp_rcvbuf書式 : ( DEFAULT | D | <decimal_number>[[(T|G|M|K)]B] )既定値 : 200MB値の範囲 : バイト換算で符号なし倍長整数の範囲。 DはDEFAULTの略記。-------------------------------------------------------------------------hpfp_mss書式 : ( DEFAULT | D | NONE | N | <decimal_number>[[(T|G|M|K)]B] )既定値 : NONE値の範囲 : バイト換算で符号なし整数の範囲。DはDEFAULTの略記。NはNONEの略記。-------------------------------------------------------------------------mcd既定値 : 物理コア数 + 1, 論理コア数/2 + 1, 25 or 1値の範囲 : 1 - 65535-------------------------------------------------------------------------acl_name既定値 : なし値の範囲 : 設定ファイル中に記述されたアクセスコントロールリストの名前=========================================================================
本設定項目は、廃止予定(deprecated)です。
クライアントからの接続を受け付けるHpFP(UDP)サービスを定義します。この設定項目は、サービスのポート番号とUDPトランスポート番号を分離する方式のHpFPサービスを定義する方法を提供します。
hpfp_service_addrは、HpFPサービスのIPアドレスを指定します。
hpfp_service_portはオプショナルです。サービスのポート番号を指定します。
hpfp_udp_portは、オプショナルです。HpFPプロトコルで使用するUDPトランスポートのポート番号を指定します。Dを指定すると既定値を使用します。
hpfp_sndbufは、オプショナルです。HpFPプロトコルで使用する送信バッファのサイズを指定します。Dを指定すると既定値を使用します。
hpfp_rcvbufは、オプショナルです。HpFPプロトコルで使用する受信バッファのサイズを指定します。Dを指定すると既定値を使用します。
hpfp_mssは、オプショナルです。HpFPプロトコルで使用するMSSを指定します。Dを指定すると既定値を使用します。 Nを指定した場合、HpFPプロトコルによるMTU探索を行い値を決定します。
mcdは、オプショナルです。このサービスでクライアントに提供するセッションあたりの接続の数を指定します。1を指定した場合は、セッションは単一の接続で動作します。2以上を指定した場合は、接続の受付とセッションのネゴシエーションが完了した後に、指定された数から1を差し引いた数だけ追加で接続が行われ並列で通信を行います。 指定しない場合は、CPUの物理コア数、論理コア数及びライセンスから次の何れかの値に決まります。
- 物理コア数 + 1 (物理コア数 \< 論理コア数 かつ 物理コア数 > 1の場合。但し、最大25)
- 論理コア数/2 + 1 (物理コア数 = 論理コア数 かつ 論理コア数/2 > 1の場合。但し、最大25)
- 1(物理コア数もしくは論理コア数/2が1の場合やライセンスに多重化機能が含まれない場合)
acl_nameは、オプショナルです。このHpFP(UDP)サービスに設定するアクセスコントロールリストを名前で指定します。このオプションを省略した場合、もしくは指定された名前がいずれのアクセスコントロールリストの名前と一致しない場合は、無名のアクセスコントロールリストがサービスに設定されます。
--例:UDPListenAddress 0.0.0.0:1884:10000--
#
WSSListenAddress=========================================================================対応OS : Linux.x86 / Windows書式 : WSSListenAddress <wss_service_addr>[:<wss_service_port>[:<wss_opt_name>[:<wss_cs_name>[:<wss_clist_name>[:<wss_privkey_name>[:<wss_cert_name>[:<mcd>[:<use_hcpcm>]]]]]]]][ <acl_name>]-------------------------------------------------------------------------wss_service_addr既定値 : なし値の範囲 : IPアドレス値-------------------------------------------------------------------------wss_service_port既定値 : 443値の範囲 : ポート番号-------------------------------------------------------------------------wss_opt_name書式 : ( DEFAULT | D | <opt_name> )既定値 : 空文字列値の範囲 : WSSOptionsの名前。DはDEFAULTの略記-------------------------------------------------------------------------wss_cs_name書式 : ( DEFAULT | D | <cipher_suites_name> )既定値 : 空文字列値の範囲 : WSSCipherSuitesの名前。DはDEFAULTの略記-------------------------------------------------------------------------wss_clist_name書式 : ( DEFAULT | D | <cipher_list_name> )既定値 : 空文字列値の範囲 : WSSCipherLlistの名前。DはDEFAULTの略記-------------------------------------------------------------------------wss_privkey_name書式 : ( DEFAULT | D | <server_key_file_name> )既定値 : 空文字列値の範囲 : ServerKeyFileの名前-------------------------------------------------------------------------wss_cert_name書式 : ( DEFAULT | D | <server_cert_file_name> )既定値 : 空文字列値の範囲 : ServerCertificateFileの名前-------------------------------------------------------------------------mcd既定値 : 物理コア数 + 1, 論理コア数/2 + 1, 25 or 1値の範囲 : 1 - 65535-------------------------------------------------------------------------use_hcpcm既定値 : no値の範囲 : yes, no-------------------------------------------------------------------------acl_name既定値 : なし値の範囲 : 設定ファイル中に記述されたアクセスコントロールリストの名前=========================================================================
クライアントからの接続を受け付けるWebSocketサービス(SSL/TLS)を定義します。
wss_service_addrは、WebSocetサービス(SSL/TLS)のIPアドレスを指定します。
wss_service_portは、オプショナルです。同サービスのポート番号を指定します。省略した場合は443が使用されます。
wss_opt_nameは、オプショナルです。WSSOptionsの名前を指定します。Dを指定すると既定値を使用します。名前が指定されない場合(空文字列)は、無名のWSSOptionsが使用されます。
wss_cs_nameは、オプショナルです。WSSCipherSuitesの名前を指定します。Dを指定すると既定値を使用します。名前が指定されない場合(空文字列)は、無名のWSSCipherSuitesが使用されます。
wss_clist_nameは、オプショナルです。WSSCipherListの名前を指定します。Dを指定すると既定値を使用します。名前が指定されない場合(空文字列)は、無名のWSSCipherListが使用されます。
wss_privkey_nameは、オプショナルです。SSL/TLS通信で使用するサーバ鍵(秘密鍵)を設定したServerKeyFileの名前を指定します。Dを指定すると既定値を使用します。名前が指定されない場合は、無名のServerKeyFileが使用されます。
wss_cert_nameは、オプショナルです。SSL/TLS通信で使用するサーバ証明書を設定したServerCertificateFileの名前を指定します。Dを指定すると既定値を使用します。名前が指定されない場合は、無名のServerCertificateFileが使用されます。
mcdは、オプショナルです。このサービスでクライアントに提供するセッションあたりの接続の数を指定します。1を指定した場合は、セッションは単一の接続で動作します。2以上を指定した場合は、接続の受付とセッションのネゴシエーションが完了した後に、指定された数から1を差し引いた数だけ追加で接続が行われ並列で通信を行います。 指定しない場合は、CPUの物理コア数、論理コア数及びライセンスから次の何れかの値に決まります。
- 物理コア数 + 1 (物理コア数 \< 論理コア数 かつ 物理コア数 > 1の場合。但し、最大25)
- 論理コア数/2 + 1 (物理コア数 = 論理コア数 かつ 論理コア数/2 > 1の場合。但し、最大25)
- 1(物理コア数もしくは論理コア数/2が1の場合やライセンスに多重化機能が含まれない場合)
use_hcpcmは、オプショナルです。SSL/TLS通信をする際にアプリケーションで処理する暗号化処理(AcceptableCryptMethod)を適用するか設定します。Dを指定すると既定値を使用します。
acl_nameは、オプショナルです。このWebSocketサービス(SSL/TLS)に設定するアクセスコントロールリストを名前で指定します。このオプションを省略した場合、もしくは指定された名前がいずれのアクセスコントロールリストの名前と一致しない場合は、無名のアクセスコントロールリストがサービスに設定されます。
--例:WSSListenAddress 0.0.0.0:8443--
#
WSSOptions=========================================================================対応OS : Linux.x86 / Windows書式 : WSSOptions <opt_value>[ <opt_name>]-------------------------------------------------------------------------opt_value書式 : ( NONE | <openssl_opt_values> )既定値 : NONE値の範囲 : OpenSSLで規定されるSSL/TLSオプション名のリスト-------------------------------------------------------------------------opt_name既定値 : なし値の範囲 : 文字列=========================================================================
SSL/TLS通信を実行する際に設定するOpenSSLオプションを指定します。指定するオプションの名前は下記URLに規定される名前を使用します。
https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_set_options.htmlSSL_CTX_set_options
--例:WSSOptions SSL_OP_NO_COMPRESSION:SSL_OP_NO_SSLv3--
#
WSSCipherSuites=========================================================================対応OS : Linux.x86 / Windows書式 : WSSCipherSuites <cs_value>[ <cs_name>]-------------------------------------------------------------------------cs_value書式 : ( NONE | <openssl_cipher_suite_values> )既定値 : NONE値の範囲 : OpenSSLで規定されるCipher Suitesパラメータのリスト-------------------------------------------------------------------------cs_name既定値 : なし値の範囲 : 文字列=========================================================================
SSL/TLS通信を実行する際に設定するOpenSSLのCipher Suitesオプションを指定します(TLS 1.3で使用されます)。指定するオプションの名前は下記URLに規定される名前を使用します。
https://www.openssl.org/docs/man1.1.1/man1/ciphers.htmlciphers
"TLS v1.3 cipher suites"で定められた暗号スイート(Cipher Suite)名。
--例:WSSCipherSuites TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256--
#
WSSCipherList=========================================================================対応OS : Linux.x86 / Windows書式 : WSSCipherList <clist_value>[ <clist_name>]-------------------------------------------------------------------------clist_value書式 : ( NONE | <openssl_cipher_list> )既定値 : NONE値の範囲 : OpenSSLで規定されるCipher Listパラメータ-------------------------------------------------------------------------clist_name既定値 : なし値の範囲 : 文字列=========================================================================
SSL/TLS通信を実行する際に設定するOpenSSLのCipher Listオプションを指定します(TLS 1.2もしくはそれ以前で使用されます)。指定するオプションの名前は下記URLに規定される名前を使用します。
https://www.openssl.org/docs/man1.1.1/man1/ciphers.htmlciphers
"CIPHER LIST FORMAT"及び"CIPHER STRINGS"で定められた書式の暗号リスト(Cipher List)。
--例:WSSCipherList RC4-MD5:RC4-SHA:AES128-SHA:AES256-SHA:HIGH:!DSS:!aNULL--
#
WSListenAddress=========================================================================対応OS : Linux.x86 / Windows書式 : WSListenAddress <ws_service_addr>[:<ws_service_port>[:<mcd>]][ <acl_name>]-------------------------------------------------------------------------ws_service_addr既定値 : なし値の範囲 : IPアドレス-------------------------------------------------------------------------ws_service_port既定値 : 80値の範囲 : 1 - 65535-------------------------------------------------------------------------mcd既定値 : 物理コア数 + 1, 論理コア数/2 + 1, 25 or 1値の範囲 : 1 - 65535-------------------------------------------------------------------------acl_name既定値 : なし値の範囲 : 設定ファイル中に記述されたアクセスコントロールリストの名前=========================================================================
クライアントからの接続を受け付けるWebSocketサービス(平文通信)を定義します。
ws_service_addrは、WebSocketサービスのIPアドレスを指定します。
ws_service_portは、同サービスのポート番号を指定します。
mcdは、オプショナルです。このサービスでクライアントに提供するセッションあたりの接続の数を指定します。1を指定した場合は、セッションは単一の接続で動作します。2以上を指定した場合は、接続の受付とセッションのネゴシエーションが完了した後に、指定された数から1を差し引いた数だけ追加で接続が行われ並列で通信を行います。指定しない場合は、CPUの物理コア数、論理コア数及びライセンスから次の何れかの値に決まります。
- 物理コア数 + 1 (物理コア数 \< 論理コア数 かつ 物理コア数 > 1の場合。但し、最大25)
- 論理コア数/2 + 1 (物理コア数 = 論理コア数 かつ 論理コア数/2 > 1の場合。但し、最大25)
- 1(物理コア数もしくは論理コア数/2が1の場合やライセンスに多重化機能が含まれない場合)
acl_nameは、オプショナルです。このWebSocketサービス(平文通信)に設定するアクセスコントロールリストを名前で指定します。このオプションを省略した場合、もしくは指定された名前がいずれのアクセスコントロールリストの名前と一致しない場合は、無名のアクセスコントロールリストがサービスに設定されます。
--例:WSListenAddress 0.0.0.0:8080--
#
ListenServiceBonding=========================================================================対応OS : Linux / Windows書式 : ListenServiceBonding <service_name>[ ... <service_name>]-------------------------------------------------------------------------service_name既定値 : なし値の範囲 : 設定したTCPListenAddressもしくはUDPListenAddressの名前=========================================================================
セッションの多重接続機能において複数のサービスを結束(ボンディング)する設定を行います。結束したいサービス名を一つ以上指定します。サービス名は、-tオプションで確認します。
セッションでTCP及びHpFPをハイブリッドで使用する場合などに利用します。
本オプションは、設定ファイル中に一つのみ記述可能です。
クライアントからの接続は通常通りサーバのホスト名とポート番号(TCPもしくはHpFPのいずれかのポート番号)を指定して行います。セッション確立後は、指定されたサービスで利用可能な接続数の合計から1を差し引いた数だけ追加で接続が行われます。
--例:ListenServiceBonding tcp1 udp1--
#
通信データ圧縮機能#
HeaderCompress (予約)#
ContentCompress (予約)#
データフロー制御・帯域制御#
MaxTotalReceiveRate=========================================================================対応OS : Linux.x86 / Windows書式 : MaxTotalReceiveRate <bandwidth>-------------------------------------------------------------------------bandwidth既定値 : 10Gbit値の範囲 : 符号なし倍長整数=========================================================================
トランスポートの受信帯域のシェーピング(制限)を設定します(システム全体)。アプリケーション層で制限が掛かります(トランスポート層の通信バッファや伝送制御などの状態は反映されません)。
--例:MaxTotalReceiveRate 1Gbit--
本機能は、TCP/HpFP(UDP)層とアプリケーション層の間で帯域制限を行います。指定値が5Gbpsを超える場合は、無制限(シェーピングなし)に設定されます(他の帯域シェーピングオプションも同様)。
#
MaxTotalSendRate=========================================================================対応OS : Linux.x86 / Windows書式 : MaxTotalSendRate <bandwidth>-------------------------------------------------------------------------bandwidth既定値 : 10Gbit値の範囲 : 符号なし倍長整数=========================================================================
トランスポートの送信帯域のシェーピング(制限)を設定します(システム全体)。アプリケーション層で制限が掛かります(トランスポート層の通信バッファや伝送制御などの状態は反映されません)。
--例:MaxTotalSendRate 1Gbit--
#
MaxReceiveRatePerConnection=========================================================================対応OS : Linux.x86 / Windows書式 : MaxReceiveRatePerConnection <bandwidth>-------------------------------------------------------------------------bandwidth既定値 : 10Gbit値の範囲 : 符号なし倍長整数=========================================================================
クライアントセッション毎のトランスポート受信帯域のシェーピング(制限)を設定します(接続単位)。アプリケーション層で制限が掛かります(トランスポート層の通信バッファや伝送制御などの状態は反映されません)。
--例:MaxReceiveRatePerConnection 100Mbit--
#
MaxSendRatePerConnection=========================================================================対応OS : Linux.x86 / Windows書式 : MaxSendRatePerConnection <bandwidth>-------------------------------------------------------------------------bandwidth既定値 : 10Gbit値の範囲 : 符号なし倍長整数=========================================================================
クライアントセッション毎のトランスポート送信帯域のシェーピング(制限)を設定します(接続単位)。アプリケーション層で制限が掛かります(トランスポート層の通信バッファや伝送制御などの状態は反映されません)。
--例:MaxSendRatePerConnection 100Mbit--
#
データフロー制御・ファイルロック機能#
FileLock=========================================================================対応OS : Linux.x86 / Windows書式 : FileLock <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
ファイルの読み書きにファイルロックを使用するか設定します。
yesを設定した場合、ファイルロックを獲得してからファイルの読み書きを行います。Linuxプラットフォームではアドバイザリロックを使用するため、本ソフトウェア間もしくは同じロック機構を使用するソフトウェアの間で有効に働きます。
noに設定した場合は、ファイルのロックを獲得せずにファイルデータの読み書きを実行します。 NFSなどのネットワークファイルシステムでハングアップが発生する場合やロック獲得時にエラーが発生する場合は、noに設定します。noで使用する場合は、hcpコマンドで指定する宛先の重複にご注意ください。
ロック要求の処理は適切に動作していて、単にロックの獲得を待機している場合は、次の様なログが記録されるか(FileLockTrialsが0)、
2018/07/05 16:34:10 00007f638bd97740:INFO :Acquiring a lock to the file was rejected at the first trial.2018/07/05 16:34:13 00007f638bd97740:INFO :Acquiring a lock to the file continues to be rejected about few seconds.
試行回数の上限に達したことを検出して処理を中断します(FileLockTrialsが0以上)。
--例:FileLock yes--
#
FileLockTrials=========================================================================対応OS : Linux.x86 / Windows書式 : FileLockTrials <num-trials>-------------------------------------------------------------------------num-trials既定値 : 0値の範囲 : 符号なし整数=========================================================================
ファイルロックの獲得を試行する回数を設定します。0を指定するとロックを獲得するまで待機(ブロック)します。
--例:FileLockTrials 5--
旧名FileLockRetriesも使用可能です。
#
FileLockTrialInterval=========================================================================対応OS : Linux.x86 / Windows書式 : FileLockTrialInterval <trial-interval>-------------------------------------------------------------------------trial-interval既定値 : 3値の範囲 : 符号なし整数=========================================================================
ファイルロックの要求間隔を設定します(秒単位)。
--例:FileLockTrialInterval 10--
旧名FileLockRetryIntervalも使用可能です。
#
データフロー制御・一時ファイル保存機能(アトミック(不可分)ファイル保存)#
AtomicLikeSaving=========================================================================対応OS : Linux.x86 / Windows書式 : AtomicLikeSaving <flag-available> <temp-file-suffix>[ <temp-file-prefix>]-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no-------------------------------------------------------------------------temp-file-suffix既定値 : .tmp値の範囲 : 16文字までの文字列, NONE, RANDn-------------------------------------------------------------------------temp-file-prefix既定値 : NONE値の範囲 : 16文字までの文字列, NONE, RANDn=========================================================================
ファイル転送時のファイル書き込みで行われるアトミックライクな保存(一時ファイルを経由する二段階保存)の設定を行います。
flag-availableは、この設定を有効にするか指定します。
temp-file-suffixは、生成される一時ファイルの接尾辞(サフィックス)を指定します。"NONE"を指定した場合は、接尾辞を付加しません。"RANDn"を指定した場合は、n文字の乱数生成された文字列を付加します。文字数を指定しない場合は6文字の文字列を生成します。
temp-file-prefixは、生成される一時ファイルの接頭辞(プレフィックス)を指定します。"NONE"を指定した場合は、接頭辞を付加しません。"RANDn"を指定した場合は、n文字の乱数生成された文字列を付加します。文字数を指定しない場合は6文字の文字列を生成します。
Linux版では一時ファイルを生成する際に、最終的な書込み先に書込みを行う権限があるか検査されます。
また、再開機能(-rオプション)を使用する場合、途中まで転送していたファイルは先頭から再度転送しなおします。
接頭辞及び接尾辞の文字列を乱数生成する場合は、既存のファイルと名前が重複しない文字列が使用されます。
#
AtomicLikeSavingThreshold=========================================================================対応OS : Linux.x86 / Windows書式 : AtomicLikeSavingThreshold <threshold>-------------------------------------------------------------------------threshold既定値 : 100KB値の範囲 : 符号付倍長整数=========================================================================
アトミックライクな保存を適用するファイルの閾値をサイズで指定します。
指定したサイズ未満のファイルにはこの保存方法は適用されません。0バイトを指定した場合は、全てのファイルに適用されます。
#
AtomicLikeSavingRejectOverwriteRequest=========================================================================対応OS : Linux.x86 / Windows書式 : AtomicLikeSavingRejectOverwriteRequest <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
アトミックライクな保存において生成される一時ファイルを上書きする要求(クライアントのコマンドで指定します)を拒否するかどうか設定します。
アプリケーションのファイル名の規則と接尾辞や接頭辞の構成により一時ファイルとの衝突の恐れがない場合などに、noに変更しクライアントからの上書き要求を許可するように設定します。
#
データフロー制御・データバッファ設定#
MaxTotalBufferSize=========================================================================対応OS : Linux.x86 / Windows書式 : MaxTotalBufferSize <max-total-buf-size>-------------------------------------------------------------------------max-total-buf-size既定値 : 4GB値の範囲 : 符号付き倍長整数=========================================================================
ファイルのデータ処理に使用できる最大のメモリバッファサイズを設定します。
--例:MaxTotalBufferSize 8GB--
#
MaxBufferSizePerConnection=========================================================================対応OS : Linux.x86 / Windows書式 : MaxBufferSizePerConnection <max-buf-size-per-con>-------------------------------------------------------------------------max-buf-size-per-con既定値 : 100MB値の範囲 : 符号なし倍長整数=========================================================================
クライアントセッション毎のファイルのデータ処理に使用できる最大のメモリバッファサイズを設定します。
--例:MaxBufferSizePerConnection 512MB--
#
TCPServiceSocketSendBuffer=========================================================================対応OS : Linux.x86 / Windows書式 : TCPServiceSocketSendBuffer <snd-buf-size>-------------------------------------------------------------------------snd-buf-size書式 : <decimal_number>[[(T|G|M|K)]B]既定値 : 0値の範囲 : 符号なし倍長整数 (バイト単位)=========================================================================
TCP通信で指定する送信バッファのサイズ(バイト単位)を設定します。0を指定すると未指定となります。
100G環境などでTCP通信性能のチューニングが必要な場合などに使用します。通常は変更する必要はありません。
--例:TCPServiceSocketSendBuffer 128MB--
#
UDPServiceExtensionBufferSize=========================================================================対応OS : Linux.x86 / Windows書式 : UDPServiceExtensionBufferSize <ext-buf-size>-------------------------------------------------------------------------ext-buf-size既定値 : 2GB値の範囲 : 符号なし倍長整数 (バイト単位)=========================================================================
HpFP(UDP)サービスで使用する拡張バッファのサイズを指定します。
HpFPセッションでは、遅延やロス及び通信量の増加などに伴い通信用のバッファを指定されたサイズ(UDPListenAddressのhpfp_sndbuf及びhpfp_rcvbuf)に拡張します。この拡張するバッファの合計容量を指定された値で制限します。
0を指定した場合は、この制限を行いません。
また、バッファの初期サイズ(拡張される前のバッファのサイズ)は1MBです。
--例:UDPServiceExtensionBufferSize 4GB--
#
データフロー制御・転送ファイルサイズ制限#
MaxReceiveFileSize=========================================================================対応OS : Linux.x86 / Windows書式 : MaxReceiveFileSize <file-size>-------------------------------------------------------------------------file-size既定値 : 8EB - 1B (符号付倍長整数最大値。制限なし)値の範囲 : 符号付き倍長整数=========================================================================
受信を許可する最大のファイルサイズを設定します。
--例:MaxReceiveFileSize 1GB--
#
MaxSendFileSize=========================================================================対応OS : Linux.x86 / Windows書式 : MaxSendFileSize <file-size>-------------------------------------------------------------------------file-size既定値 : 8EB - 1B (符号付倍長整数最大値。制限なし)値の範囲 : 符号付き倍長整数=========================================================================
送信を許可する最大のファイルサイズを設定します。
--例:MaxSendFileSize 1GB--
#
データフロー制御・通信メッセージサイズ制御#
InitHeaderBlockSize=========================================================================対応OS : Linux.x86 / Windows書式 : InitHeaderBlockSize <block-size>-------------------------------------------------------------------------block-size既定値 : 50KB値の範囲 : 符号なし倍長整数=========================================================================
Archaea toolsは、通信を開始すると消費帯域を評価して形成可能なヘッダブロックのサイズを増減させます。ヘッダブロックは、転送するデータのうち、ファイル要求などのメッセージを複数含むヘッダ部分です。本オプションは、通信開始直後に適用するヘッダブロックの初期サイズを設定します。
--例:InitHeaderBlockSize 10KB--
#
InitContentBlockSize=========================================================================対応OS : Linux.x86 / Windows書式 : InitContentBlockSize <block-size>-------------------------------------------------------------------------block-size既定値 : 1MB値の範囲 : 符号なし倍長整数=========================================================================
Archaea toolsは、通信を開始すると消費帯域を評価して形成可能なコンテントブロックのサイズを増減させます。コンテントブロックは、転送するデータのうち、ファイルのデータを複数含む部分です。本オプションは、通信開始直後に適用するコンテントブロックの初期サイズを設定します。
10Gbpsを超える環境などで通信性能が頭打ちになった場合などに、MaxContentBlockSizeと併せて変更すると性能が改善する場合があります。
--例:InitContentBlockSize 2MB--
#
MaxHeaderBlockSize=========================================================================対応OS : Linux.x86 / Windows書式 : MaxHeaderBlockSize <block-size>-------------------------------------------------------------------------block-size既定値 : 50KB値の範囲 : 符号なし倍長整数=========================================================================
Archaea toolsは、通信を開始すると消費帯域を評価して形成可能なヘッダブロックのサイズを増減させます。本オプションは、ヘッダブロックのサイズを増加できる上限値を設定します。
--例:MaxHeaderBlockSize 100KB--
#
MaxContentBlockSize=========================================================================対応OS : Linux.x86 / Windows書式 : MaxContentBlockSize <block-size>-------------------------------------------------------------------------block-size既定値 : 1MB値の範囲 : 符号なし倍長整数=========================================================================
Archaea toolsは、通信を開始すると消費帯域を評価して形成可能なコンテントブロックのサイズを増減させます。本オプションは、コンテントブロックのサイズを増加できる上限値を設定します。
10Gbpsを超える環境などで通信性能が頭打ちになった場合などに、InitContentBlockSizeと併せて変更すると性能が改善する場合があります。
--例:MaxContentBlockSize 4MB--
#
MaxRequestFileEntryAtOnce=========================================================================対応OS : Linux.x86 / Windows書式 : MaxRequestFileEntryAtOnce <max-file-req-at-once>-------------------------------------------------------------------------max-file-req-at-once既定値 : 50値の範囲 : 符号付き整数=========================================================================
ファイル要求の一括送信を許可する最大の数を設定します。
--例:MaxRequestFileEntryAtOnce 1000--
#
データフロー制御・ディスクI/O速度制御#
MaxReadRatePerConnection=========================================================================対応OS : Linux.x86 / Windows書式 : MaxReadRatePerConnection <read-rate>-------------------------------------------------------------------------read-rate既定値 : 10Ebit (無制限)値の範囲 : 符号なし倍長整数(10Ebitまで)=========================================================================
ファイル転送時にディスクからファイルを読み込む速度の上限を設定します。この設定はファイル転送のセッション毎に適用されます。bps単位で符号付倍長整数の最大値もしくはそれを超える値が指定された場合は無制限と設定されます。
SSDなどを使用する際に長時間の読み書きを高レートで行うとオーバーヒートを起こすことがあり(特に書き込み側)、それを抑制する場合などにこの設定を使用します。
--例:MaxReadRatePerConnection 10Gbit--
#
MaxWriteRatePerConnection=========================================================================対応OS : Linux.x86 / Windows書式 : MaxWriteRatePerConnection <write-rate>-------------------------------------------------------------------------write-rate既定値 : 10Ebit (無制限)値の範囲 : 符号なし倍長整数(10Ebitまで)=========================================================================
ファイル転送時にディスクへファイルを書き込む速度の上限を設定します。この設定はファイル転送のセッション毎に適用されます。bps単位で符号付倍長整数の最大値もしくはそれを超える値が指定された場合は無制限と設定されます。
SSDなどを使用する際に長時間の読み書きを高レートで行うとオーバーヒートを起こすことがあり(特に書き込み側)、それを抑制する場合などにこの設定を使用します。
--例:MaxWriteRatePerConnection 10Gbit--
#
コード変換・通信エンコードネゴシエーション#
TransportCharEncoding=========================================================================対応OS : Linux.x86 / Windows書式 : TransportCharEncoding <encodings>-------------------------------------------------------------------------encodings書式 : <encoding>[ ...]既定値 : UTF8-------------------------------------------------------------------------encoding値の範囲 : US-ASCII, UTF8, UTF16, UTF32=========================================================================
トランスポートで使用する文字列のエンコーディング方式を指定します。
--例:TransportCharEncoding UTF8 UTF16 US-ASCII--
クライアントとの間で交換するファイルパスなどの文字列に適用されます。どのエンコーディングが使用されるかは、クライアントの設定と併せて評価し、一致したエンコーディングを使用します。
#
コード変換・ホスト文字エンコード対応#
HostEncoding=========================================================================対応OS : Linux.x86 / Windows書式 : HostEncoding <encoding>-------------------------------------------------------------------------encoding既定値 : UTF-8 (Linux) CP932 (Windows)値の範囲 : システムかつエンコーディング変換ライブラリでサポートされるエンコーディング名(プラットホーム依存)=========================================================================
ホストで使用されている文字列エンコーディングを指定します。
--例:HostEncoding EUC-JP--
ファイルパスなどをソフトウェアの内部文字列表現へ変換する際に使用されます。
#
認証#
LocalPasswordAuthentication=========================================================================対応OS : Linux.x86 / Windows書式 : LocalPasswordAuthentication <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
LPA(Local Password Authentication)認証を設定します。yesを指定するとLPA認証を有効にします。本認証方式を含め、一つでも認証を有効にした場合、クライアントからアクセスするには認証が必要になります(匿名アクセス禁止)。
--例:LocalPasswordAuthentication yes--
#
PAMAuthentication=========================================================================対応OS : Linux.x86書式 : PAMAuthentication <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
PAM(Pluggable Authenticaton Module)認証を設定します。yesを指定するとPAM認証を有効にします。
--例:PAMAuthentication no--
PAM認証は、Linuxプラットホーム向けのRPMパッケージで配布されるソフトウェアで有効です。
PAM認証は、システムの構成に依存します。サービスが動作するオペレーティングシステムの環境にあわせて、次の様なPAM設定ファイルを適切に構成します。
/etc/pam.d/hcpd
#
PubkeyAuthentication=========================================================================対応OS : Linux.x86 / Windows書式 : PubkeyAuthentication <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes (Linux.x86), no (Windows)値の範囲 : yes, no=========================================================================
RSA(Rivest-Shamir-Adleman cryptosystem)認証を設定します。yesを指定するとRSA認証を有効にします。
--例:PubkeyAuthentication no--
#
WinLogonUserAuthentication=========================================================================対応OS : Windows書式 : WinLogonUserAuthentication <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
Windows認証を設定します。yesを指定するとWindows認証を有効にします。
--例:WinLogonUserAuthentication no--
Windows認証は、Windowsプラットホーム向けに配布されるソフトウェアで有効です。
Windows認証は、システム標準のAPIの認証機能へ入力されたユーザID(ドメイン名を含む)とパスワードをそのまま引き渡して行われます。
#
PerformSystemAuthenticationRegardlessUsers=========================================================================対応OS : Linux.x86 / Windows書式 : PerformSystemAuthenticationRegardlessUsers <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
システムの認証(PAM認証、Windows認証)をユーザ定義ファイル(/etc/hcp/users)の指定に関わらず実行するか設定します。
--例:PerformSystemAuthenticationRegardlessUsers yes--
#
AuthorizedKeysSearchDir=========================================================================対応OS : Linux.x86 / Windows書式 : AuthorizedKeysSearchDir <search-dir>-------------------------------------------------------------------------search-dir既定値 : /etc/hcp/authkeys (Linux.x86) C:/ProgramData/Clealink/HCP Tools/authkeys (Windows)値の範囲 : ファイルシステムのパス文字列 もしくは NONE=========================================================================
RSA認証の際にユーザの公開鍵を特定するために探索するディレクトリを指定します。この探索を行わないようにする場合は、NONEを指定します。
--例:AuthorizedKeysSearchDir /etc/hcp/authkeys--
指定されたディレクトリで次の様なファイル名を公開鍵が保管されたファイルと見做して探索します。
<ユーザ名>.pub
旧名AuthorizedKeySearchDirも使用可能です。
#
AuthorizedKeysFile=========================================================================対応OS : Linux.x86 / Windows書式 : AuthorizedKeysFile <file-path>-------------------------------------------------------------------------file-path既定値 : ~/.hcp/authorized_keys (Linux.x86) ~/_hcp/authorized_keys (Windows)値の範囲 : ユーザディレクトリを表すパス表記(~、チルダ)を含むファイルパス もしくは NONE=========================================================================
RSA認証の際にユーザの公開鍵を特定するために探索するユーザホームディレクトリ内の鍵保管ファイルを指定します。この探索を行わないようにする場合は、NONEを指定します。
sshd_configでサポートされているTOKENSについては、%h, %U, %uに対応しています。
https://man7.org/linux/man-pages/man5/sshd_config.5.htmlTOKENS - AuthorizedKeysFile
旧名AuthorizedKeyFileも使用可能です。
#
AuthorizedKeysCommand=========================================================================対応OS : Linux.x86書式 : AuthorizedKeysCommand <cmd-path>-------------------------------------------------------------------------cmd-path既定値 : なし値の範囲 : ユーザの公開鍵を参照するためのコマンド(またはスクリプト)のパス=========================================================================
RSA認証の際にユーザの公開鍵を特定するために呼び出すコマンド(またはスクリプト)のパスを指定します。指定したコマンドには引数としてユーザ名が渡されます。また、本設定を有効にした場合は、AuthorizedKeysCommandUserの設定が必要となります。
--例:AuthorizedKeysCommand /usr/bin/sss_ssh_authorizedkeys--
sshd_configでサポートされているTOKENSについては、%h, %U, %uに対応しています。
https://man7.org/linux/man-pages/man5/sshd_config.5.htmlTOKENS - AuthorizedKeysCommand
#
AuthorizedKeysCommandUser=========================================================================対応OS : Linux.x86書式 : AuthorizedKeysCommandUser <username>-------------------------------------------------------------------------username既定値 : なし値の範囲 : ユーザの公開鍵を参照するためのコマンドを実行するユーザ名=========================================================================
AuthorizedKeysCommandで指定された公開鍵を参照するためのコマンドを実行するユーザの名前を指定します。
--例:AuthorizedKeysCommandUser nobody--
一般的には、この公開鍵の参照のみを行う(他の役割をもたない)アカウントを指定することが推奨されます。
https://man7.org/linux/man-pages/man5/sshd_config.5.htmlAuthorizedKeysCommandUser
#
CACertificateFile=========================================================================対応OS : Linux.x86 / Windows書式 : CACertificateFile <file-path>-------------------------------------------------------------------------file-path既定値 : /etc/hcp/cacert.pem (Linux.x86) C:/ProgramData/Clealink/HCP Tools/cacert.pem (Windows)値の範囲 : ファイルシステムのパス文字列=========================================================================
クライアント認証に使用するCA証明書(中間証明書含む)が保管されているファイルを指定します。
--例:CACertificateFile /etc/hcp/cacert.pem--
PEM形式の証明書をサポートします。
#
CACertificatePath (予約)=========================================================================対応OS : Linux.x86 / Windows書式 : CACertificatePath <dir-path>-------------------------------------------------------------------------dir-path既定値 : /etc/ssl (Linux.x86) C:/ProgramData/Clealink/HCP Tools/ssl (Windows)値の範囲 : ファイルシステムのパス文字列=========================================================================
クライアント認証に使用するCA証明書(中間証明書含む)が保管されているディレクトリを指定します。
--例:CACertificatePath /etc/ssl--
PEM形式の証明書をサポートします。
#
CARevocationFile=========================================================================対応OS : Linux.x86 / Windows書式 : CARevocationFile <file-path>-------------------------------------------------------------------------file-path既定値 : /etc/hcp/crl.pem (Linux.x86) C:/ProgramData/Clealink/HCP Tools/crl.pem (Windows)値の範囲 : ファイルシステムのパス文字列 =========================================================================
クライアント認証に使用するCRLが保管されているファイルを指定します。
--例:CARevocationFile /etc/hcp/crl.pem--
PEM形式の失効リスト(CRL)をサポートします。
#
CARevocationPath (予約)=========================================================================対応OS : Linux.x86 / Windows書式 : CARevocationPath <dir-path>-------------------------------------------------------------------------dir-path既定値 : /etc/ssl (Linux.x86) C:/ProgramData/Clealink/HCP Tools/ssl (Windows)値の範囲 : ファイルシステムのパス文字列=========================================================================
クライアント認証に使用するCRLが保管されているディレクトリを指定します。
--例:CARevocationPath /etc/ssl--
PEM形式の失効リスト(CRL)をサポートします。
#
OCSPRevocationEnabled=========================================================================対応OS : Linux.x86 / Windows書式 : OCSPRevocationEnabled <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
クライアント認証で使用するOCSP(オンライン証明書失効検査プロトコル)を設定します。yesを指定すると有効にします。クライアントを認証する際、OCSP(オンライン証明書失効検査)を実施します。
--例:OCSPRevocationEnabled no--
#
LocalUserFile=========================================================================対応OS : Linux.x86 / Windows書式 : LocalUserFile <file-path>[ <usage>]-------------------------------------------------------------------------file-path既定値 : /etc/hcp/users (Linux.x86) C:/ProgramData/Clealink/HCP Tools/users (Windows)値の範囲 : ファイルシステムのパス文字列-------------------------------------------------------------------------usage既定値 : overwrite値の範囲 : overwrite, define=========================================================================
ユーザ情報を定義したファイルと利用方法を指定します。
file-pathには定義ファイルのパスを指定します。
usageにはこの定義ファイルの使用方法を次のいずれかで指定します。
- overwrite
- define
overwriteを指定した場合は、ユーザの認証を行う際に既存のシステムユーザの認証方法を上書きする情報として認識します。
defineを指定した場合は、本ソフトウェアで扱うと許可されたユーザ情報として認識します。ファイルに記載されないユーザについては認証を拒否します。
--例:LocalUserFile /etc/hcp/users define--
#
LocalPasswordFile=========================================================================対応OS : Linux.x86 / Windows書式 : LocalPasswordFile <file-path>-------------------------------------------------------------------------file-path既定値 : /etc/hcp/passwd (Linux.x86) C:/ProgramData/Clealink/HCP Tools/passwd (Windows)値の範囲 : ファイルシステムのパス文字列=========================================================================
LPA認証で使用されるユーザの資格情報(パスワードハッシュ)を定義したファイルを指定します。
--例:LocalPasswordFile /etc/hcp/passwd--
#
AllowUsers=========================================================================対応OS : Linux.x86書式 : AllowUsers [<username-pattern>...]-------------------------------------------------------------------------username-pattern書式 : <name-pattern>[@<host-pattern>]-------------------------------------------------------------------------name-pattern既定値 : なし値の範囲 : ワイルドカード("*"及び"?")を含む文字列-------------------------------------------------------------------------host-pattern既定値 : なし値の範囲 : CIDR形式のネットワークアドレス文字列=========================================================================
ログインを許可するシステムユーザ名のパターンを設定します(複数可)。
username-patternには、ユーザ名のパターンとオプションとしてCIDR形式のネットワークアドレスを指定します。
name-patternには、ユーザ名を表すパターン文字列を指定します。 このパターンには、任意の文字列を表すワイルドカード"*"と任意の一文字を表すワイルドカード"?"を使用することができます。接続したユーザが入力したユーザ名がこのパターンに一致するとログインが許可され認証が実行されます。
host-patternには、CIDR形式のネットワークアドレス文字列を指定します。このネットワークアドレス文字列が指定された場合は、ユーザ名が一致し、かつアクセス元ホストが指定されたネットワークアドレスに含まれる場合にログインが許可されます。
このパターンの評価で一致することが確認されると、その時点で全体の評価が終了しログインは許可されます。DenyUsersが指定された場合は、DenyUsers, AllowUsersの順に評価されます。AllowUsersまたはAllowGroupsが指定された場合、いずれの評価でもパターンの一致が確認されなかった場合は、ログインは拒否されます。
この項目が設定されると、次の設定項目は無効となります。
- PrivilegeSeparationMinimumUID
- PrivilegeSeparationMinimumGID
--例:AllowUsers seg1-*@192.168.0.0/24--
#
AllowGroups=========================================================================対応OS : Linux.x86書式 : AllowGroups [<groupname-pattern>...]-------------------------------------------------------------------------groupname-pattern既定値 : なし値の範囲 : ワイルドカード("*"及び"?")を含む文字列=========================================================================
ログインを許可するシステムグループ名のパターンを設定します(複数可)。
groupname-patternには、グループ名を表すパターン文字列を指定します。任意の文字列を表すワイルドカード"*"と任意の一文字を表すワイルドカード"?"を使用することができます。所属するプライマリグループ名もしくは補助グループ名が指定したパターンに一致するとログインが許可され認証が実行されます。
このパターン評価で一致することが確認されると、その時点で全体の評価が終了しログインは許可されます。DenyGroupsが指定された場合は、DenyGroups, AllowGroupsの順に評価されます。AllowUsersまたはAllowGroupsが指定された場合、いずれの評価でもパターンの一致が確認されなかった場合は、ログインは拒否されます。
この項目が設定されると、次の設定項目は無効となります。
- PrivilegeSeparationMinimumUID
- PrivilegeSeparationMinimumGID
--例:AllowGroups seg1-users--
#
DenyUsers=========================================================================対応OS : Linux.x86書式 : DenyUsers [<username-pattern>...]-------------------------------------------------------------------------username-pattern書式 : <name-pattern>[@<host-pattern>]-------------------------------------------------------------------------name-pattern既定値 : なし値の範囲 : ワイルドカード("*"及び"?")を含む文字列-------------------------------------------------------------------------host-pattern既定値 : なし値の範囲 : CIDR形式のネットーワークアドレス文字列=========================================================================
ログインを許可しないシステムユーザ名のパターンを設定します(複数可)。
username-patternには、ユーザ名のパターンとオプションとしてCIDR形式のネットワークアドレスを指定します。
name-patternには、ユーザ名を表すパターン文字列を指定します。 このパターンには、任意の文字列を表すワイルドカード"*"と任意の一文字を表すワイルドカード"?"を使用することができます。接続したユーザが入力したユーザ名がこのパターンに一致するとログインが拒否され認証が失敗します。
host-patternには、CIDR形式のネットワークアドレス文字列を指定します。このネットワークアドレス文字列が指定された場合は、ユーザ名が一致し、かつアクセス元ホストが指定されたネットワークアドレスに含まれる場合にログインが拒否されます。
AllowUsersが指定された場合は、DenyUsers, AllowUsersの順に評価されます。また、パターンの評価で一致することが確認されると、その時点で全体の評価が終了しログインは拒否されます。
この項目が設定されると、次の設定項目は無効となります。
- PrivilegeSeparationMinimumUID
- PrivilegeSeparationMinimumGID
--例:DenyUsers seg1-*@192.168.0.0/24--
#
DenyGroups=========================================================================対応OS : Linux.x86書式 : DenyGroups [<groupname-pattern>...]-------------------------------------------------------------------------groupname-pattern既定値 : なし値の範囲 : ワイルドカード("*"及び"?")を含む文字列=========================================================================
ログインを許可しないシステムグループ名のパターンを設定します(複数可)。
groupname-patternには、グループ名を表すパターン文字列を指定します。任意の文字列を表すワイルドカード"*"と任意の一文字を表すワイルドカード"?"を使用することができます。所属するプライマリグループ名もしくは補助グループ名が指定したパターンに一致するとログインが拒否され認証が失敗します。
AllowGroupsが指定された場合は、DenyGroups, AllowGroupsの順に評価されます。また、パターンの評価で一致することが確認されると、その時点で全体の評価が終了しログインは拒否されます。
この項目が設定されると、次の設定項目は無効となります。
- PrivilegeSeparationMinimumUID
- PrivilegeSeparationMinimumGID
--例:DenyGroups guest-users--
#
暗号#
AcceptableCryptMethod=========================================================================対応OS : Linux.x86 / Windows書式 : AcceptableCryptMethod <method-names>-------------------------------------------------------------------------method-names書式 : <method-name>[ ...]既定値 : AES256/GCM AES256/CTR/VMAC AES256/CBC AES128/CBC-------------------------------------------------------------------------method-name値の範囲 : PLAIN, AES128/CBC, AES192/CBC, AES256/CBC, AES128/CBC/HMAC,AES192/CBC/HMAC, AES256/CBC/HMAC, AES128/CBC/VMAC, AES192/CBC/VMAC,AES256/CBC/VMAC, AES128/CBC/VMAC64, AES192/CBC/VMAC64, AES256/CBC/VMAC64,AES128/CTR/HMAC, AES192/CTR/HMAC, AES256/CTR/HMAC, AES128/CTR/VMAC,AES192/CTR/VMAC, AES256/CTR/VMAC, AES128/CTR/VMAC64, AES192/CTR/VMAC64,AES256/CTR/VMAC64, AES128/GCM, AES192/GCM, AES256/GCM=========================================================================
暗号アルゴリズムを設定します。
AES128/CBCと指定した場合は、AES128/CBC/HMACと解釈されます(これらは同一のアルゴリズムです。AES192/CBC及びAES256/CBCについても同様です)。
新たに追加したアルゴリズム(CTR/GCMモード、VMACモードを含むアルゴリズム)に対応していないバージョンと通信する場合は、これらの新しいアルゴリズムは接続時のネゴシエーションで無視されます(エラーとはなりません)。
1Gbpsを超える回線では、CTR/VMACもしくはGCMが推奨されます(AES256/GCM, AES256/CTR/VMACなど)。 一般的に1Gbpsを超える回線では、CBCやHMACを使用すると暗号通信が性能のボトルネックとなることがあります(AES256/CTR/HMAC, AES256/CBC/HMACなど)。また、VMAC64モードを使用すると検査ビットが64ビットとなりVMACモードの128ビットより小さくなります(性能が向上する要因になりますがデータ検査の安全性は低下します)。
--例:AcceptableCryptMethod AES256/CBC PLAIN--
クライアントとの間で通信するメッセージの暗号化に使用されます。どのアルゴリズムが使用されるかは、クライアントの設定と併せて評価し、一致したアルゴリズムを使用します。
#
AcceptableDigestMethod=========================================================================対応OS : Linux.x86 / Windows書式 : AcceptableDigestMethod <method-names>-------------------------------------------------------------------------method-names書式 : <method-name>[ ...]既定値 : XXH3 SHA256 SHA160-------------------------------------------------------------------------method-name値の範囲 : NONE, SHA160, SHA224, SHA256, SHA384, SHA512, MD5, MM32, MM128,XXH3, XXH128, XXH64, XXH32=========================================================================
通信データ及びファイルの検証に使用するダイジェスト(ハッシュ)方式を設定します。
--例:AcceptableDigestMethod SHA256 SHA160 NONE--
クライアントとの間で通信するメッセージ、ファイルやそのデータブロックの検証に使用されます。どのアルゴリズムが使用されるかは、クライアントの設定と併せて評価し、一致したアルゴリズムを使用します。
また、データ検査にHMACを使用する暗号通信(AES256/CBC/HMACなど)を行う場合、安全性の低いアルゴリズム(MD5, MM32, MM128, XXH3, XXH128, XXH64, XXH32)は、指定されなかったものとして扱われます。
MM32およびMM128は廃止予定(deprecated)です。代わりにXXH3を使用してください。
#
RequireDataIntegrityChecking=========================================================================対応OS : Linux.x86 / Windows書式 : RequireDataIntegrityChecking <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
クライアントとの間で暗号化通信を行う場合に、サーバがMAC(Message Authentication Code)による通信メッセージの検査(データ完全性検査)を要求するか設定します。
noを指定した場合、クライアントが通信メッセージの検査を行わないことを要求した場合に、その要求を受け入れて通信を継続します。
yesを指定した場合、この要求を拒否します。
通常はyes(デフォルト)で使用してください。前述の通信メッセージの検査が省略されることを理解したうえでご利用ください。通常、暗号通信のパフォーマンス向上の目的で使用します。
--例:RequireDataIntegrityChecking no--
#
暗号化通信セキュリティネゴシエーション#
UseServerCertificateSecurity=========================================================================対応OS : Linux.x86 / Windows書式 : UseServerCertificateSecurity <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
サーバ証明書セキュリティ機能を設定します。yesを指定した場合、ServerCertificateFileで指定されたサーバ証明書もしくは、ServerKeyFileのパスから解決された公開鍵を使用して、クライアントとの間でPKI技術を基礎とするセキュリティ通信を提供します。
--例:UseServerCertificateSecurity no--
#
RequireServerCertificateSecurity=========================================================================対応OS : Linux.x86 / Windows書式 : RequireServerCertificateSecurity <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
クライアントに対してサーバ証明書セキュリティ機能によるセキュリティ通信を要求するか設定します。yesを指定した場合、クライアントが同機能を使用しない通信(平文通信)を要求した場合、接続を拒否します。
--例:RequireServerCertificateSecurity no--
#
ServerKeyFile=========================================================================対応OS : Linux.x86 / Windows書式 : ServerKeyFile <file-path>[ <serv-key-name>]-------------------------------------------------------------------------file-path既定値 : /etc/hcp/key/server.key (Linux.x86) C:/ProgramData/Clealink/HCP Tools/key/server.key (Windows)値の範囲 : ファイルシステムのパス文字列-------------------------------------------------------------------------serv-key-name既定値 : なし値の範囲 : 文字列=========================================================================
file-pathは、サーバ証明書セキュリティ機能で使用するサーバの秘密鍵のパスを指定します。秘密鍵のパスに接尾辞".pub"を付加した公開鍵ファイルが存在する場合は、ServerCertificateFileの設定を使用せずにこの秘密鍵と公開鍵のペアを使用してセキュリティ通信を提供します。
serv-key-nameは、オプショナルです。このサーバの秘密鍵の設定に名前を指定します。WebSocketの暗号通信サービス(WSSListenAddress)から参照するために使用します。
--例:ServerKeyFile /etc/hcp/key/server.keyServerKeyFile /etc/hcp/key/server.wss.key wss-key--
クライアントではサーバに初めてアクセスすると、下記の様に公開鍵をknown_hostsに登録するか確認されます。
A secure connection for host 127.0.0.1 can't be established.RSA key fingerprint is SHA256: 0fzb9DY4qxXWPm/L/4cBKKK+FQ9577NIRYxRquZ6eWA=.Are you sure you want to continue connecting [yes/no] ?
登録を許可すると、次のパスに確認済みのホストとして記録されます。次回以降、同じホストの同じ公開鍵であれば確認を求められなくなります。
<ユーザホームディレクトリ>/.hcp/known_hosts (Linux)<ユーザホームディレクトリ>/_hcp/known_hosts (Windows)
#
ServerCertificateFile=========================================================================対応OS : Linux.x86 / Windows書式 : ServerCertificateFile <file-path>[ <serv-cert-name>]-------------------------------------------------------------------------file-path既定値 : /etc/hcp/cert/server.crt (Linux.x86) C:/ProgramData/Clealink/HCP Tools/cert/server.crt (Windows)値の範囲 : ファイルシステムのパス文字列-------------------------------------------------------------------------serv-cert-name既定値 : なし値の範囲 : 文字列=========================================================================
file-pathは、サーバ証明書のパスを指定します。
serv-cert-nameは、オプショナルです。このサーバの証明書の設定に名前を指定します。WebSocketの暗号通信サービス(WSSListenAddress)から参照するために使用します。
WebSocketの暗号通信サービスを使用する場合は、中間証明書が含まれるとその中間証明書も使用されます。中間証明書を含む場合は、サーバ証明書、中間証明書の順に格納してください。
--例:ServerCertificateFile /etc/hcp/cert/server.crtServerCertificateFile /etc/hcp/cert/server.wss.crt wss-cert--
#
ServerCertificateChainFile=========================================================================対応OS : Linux.x86 / Windows書式 : ServerCertificateChainFile <file-path>-------------------------------------------------------------------------file-path既定値 : /etc/hcp/cert/chain.crt (Linux.x86) C:/ProgramData/Clealink/HCP Tools/cert/chain.crt (Windows)値の範囲 : ファイルシステムのパス文字列=========================================================================
サーバ証明書の中間証明書を指定します。複数指定することができます。指定されたファイルに含まれる中間証明書はクライアントに送信されるサーバ証明書に続けてファイルに保管されている順に中間証明書として送信されます。
--例:ServerCertificateChainFile /etc/hcp/cert/chain.crt--
#
アクセス制御#
UserDirectoryFallbackAvailable=========================================================================対応OS : Linux.x86 / Windows書式 : UserDirectoryFallbackAvailable <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
ユーザのホームディレクトリ、作業ディレクトリなどの後退(Fallback)を許可するか設定します。認証の結果により認識されたホームディレクトリが存在しない場合などに、ルートドキュメントに記載されたディレクトリに後退する動作をするか制御します。本オプションは、クライアントが1.1.0以降のソフトウェアの場合は、常に無効(no)として動作します。
--例:UserDirectoryFallbackAvailable yes--
#
RejectOnUserHomeDirectoryNotFound=========================================================================対応OS : Linux.x86 / Windows書式 : RejectOnUserHomeDirectoryNotFound <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
ユーザのホームディレクトリが見つからない場合にアクセスを拒否するか設定します。本オプションは、クライアントが1.2.0より以前のソフトウェアの場合は、常に有効(yes)として動作します。
--例:RejectOnUserHomeDirectoryNotFound yes--
#
アクセス制御・特権分離#
UsePrivilegeSeparation=========================================================================対応OS : Linux.x86 / Windows書式 : UsePrivilegeSeparation <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
クライアントセッションに対する特権分離を設定します。yesを指定した場合、同セッションでの処理をサーバ待機プロセスとは別のプロセスで実行します。分離されたプロセス上では認証結果に基づいてユーザの権限情報(UID/GID及び補助グループ)が権限として適用されます。これらをユーザ毎に調整(システムの割当値から変更する、など)したい場合は、/etc/hcp/usersに設定を記述します。
--例:UsePrivilegeSeparation no--
適用可能な補助グループは、1000グループまでです。これを超える場合は無視されます(UIDとプライマリグループのみが適用されます)。特権分離を無効にした場合は、クライアントセッション上の処理はサービスの実行権限に従って動作します。
Windowsサービスでは、Windowsログオン認証以外で認証された場合(LPA認証、もしくはRSA認証)は、サービスの実行権限で動作します(特権分離は適用されません)。
#
PrivilegeSeparationMinimumUID=========================================================================対応OS : Linux.x86 / Windows書式 : PrivilegeSeparationMinimumUID <min-uid>-------------------------------------------------------------------------min-uid既定値 : 0値の範囲 : 符号なし整数値=========================================================================
特権分離時にセッションを実行できるUIDの最小値を設定します。特別な権限を所有するユーザによる実行などを抑制するために使用可能です。
次の項目のいずれかが設定された場合は、本設定は無効となります。
- AllowUsers
- AllowGroups
- DenyUsers
- DenyGroups
--例:PrivilegeSeparationMinimumUID 1000--
#
PrivilegeSeparationMinimumGID=========================================================================対応OS : Linux.x86 / Windows書式 : PrivilegeSeparationMinimumGID <min-gid>-------------------------------------------------------------------------min-gid既定値 : 0値の範囲 : 符号なし整数値=========================================================================
特権分離時にセッションを実行できるGIDの最小値を設定します。特別な権限を所有するユーザによる実行などを抑制するために使用可能です。
次の項目のいずれかが設定された場合は、本設定は無効となります。
- AllowUsers
- AllowGroups
- DenyUsers
- DenyGroups
--例:PrivilegeSeparationMinimumGID 1000--
#
PrivilegeSeparationUser=========================================================================対応OS : Linux.x86 / Windows書式 : PrivilegeSeparationUser <username>-------------------------------------------------------------------------username既定値 : なし値の範囲 : システムに存在するユーザ名=========================================================================
特権分離を有効にした場合に、適用するユーザ権限が特定されなかった場合に適用するユーザの資格情報を設定します。
指定しない場合は、プラットホームに依存したユーザ名(nobodyなど)に解決されます。
--例:PrivilegeSeparationUser nobody--
#
PrivilegeSeparationUmask=========================================================================対応OS : Linux.x86 / Windows書式 : PrivilegeSeparationUmask <umask_val>[ <dir_umask_val>]-------------------------------------------------------------------------umask_val既定値 : 0022値の範囲 : 0000から0777の8進数-------------------------------------------------------------------------dir_umask_val(実験的パラメータ)既定値 : なし値の範囲 : 0000から0777の8進数=========================================================================
特権分離を有効にした場合に、ユーザ認証が行われて分離されたプロセスに適用するUmaskの値を設定します。
umask_valには、適用するumask値を指定します。dir_umask_valを指定しない場合は、ファイル及びディレクトリともにプロセスレベルで適用されます。
dir_umask_valには、ディレクトリに適用したいumask値を指定します。この設定を使用した場合は、umask_valはファイルに適用され、dir_umask_valはディレクトリに適用されます。プロセスには共通するumask値(umask_val & dir_umask_val)が適用され、ファイル及びディレクトリ作成時にアプリケーション(HCP)により共通の値からの差分がそれぞれ適用されます。アプリケーションがハンドルしないファイルやディレクトリ作成では期待通りのumask値が適用されませんのでご注意ください(このパラメータは実験的機能です)。
ユーザ毎にumask値を設定したい場合は、/etc/hcp/usersに設定を記述します。
--例:PrivilegeSeparationUmask 0002--
#
PrivilegeSeparationUmaskAnonymous=========================================================================対応OS : Linux.x86 / Windows書式 : PrivilegeSeparationUmaskAnonymous <umask_val>[ <dir_umask_val>]-------------------------------------------------------------------------umask_val既定値 : 0002値の範囲 : 0000から0777の8進数-------------------------------------------------------------------------dir_umask_val(実験的パラメータ)既定値 : なし値の範囲 : 0000から0777の8進数=========================================================================
特権分離を有効にした場合に、ユーザ認証が行われずに(匿名アクセスで)分離されたプロセスに適用するUmaskの値を設定します。
umask_valには、適用するumask値を指定します。dir_umask_valを指定しない場合は、ファイル及びディレクトリともにプロセスレベルで適用されます。
dir_umask_valには、ディレクトリに適用したいumask値を指定します。この設定を使用した場合は、umask_valはファイルに適用され、dir_umask_valはディレクトリに適用されます。プロセスには共通するumask値(umask_val & dir_umask_val)が適用され、ファイル及びディレクトリ作成時にアプリケーション(HCP)により共通の値からの差分がそれぞれ適用されます。アプリケーションがハンドルしないファイルやディレクトリ作成では期待通りのumask値が適用されませんのでご注意ください(このパラメータは実験的機能です)。
--例:PrivilegeSeparationUmaskAnonymous 0022--
#
ApplyUserPermission=========================================================================対応OS : Linux.x86 / Windows書式 : ApplyUserPermission <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
特権分離を使用しない場合に、認証されたユーザの資格情報(UID/GID)を転送先のファイルパーミッションに適用するか設定します。
--例:ApplyUserPermission yes--
#
NoSupplementalGroupInPrivilegeSeparation=========================================================================対応OS : Linux.x86書式 : NoSupplementalGroupInPrivilegeSeparation <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
特権分離を使用している場合に補助グループを無効にするか設定します。
--例:NoSupplementalGroupInPrivilegeSeparation yes--
#
アクセス制御・ACL(Access Control List)機能#
AccessList=========================================================================対応OS : Linux.x86 / Windows書式 : AccessList <acl_name>-------------------------------------------------------------------------acl_name既定値 : なし値の範囲 : 文字列=========================================================================
アクセスコントロールリストを定義します。
acl_nameはオプショナルです。アクセスコントロールリストの名前を指定します。
--例:AccessList acl1--
acl-nameを指定しない場合は、無名のアクセスコントロールリストとして扱われます。この無名のアクセスコントロールリストは、1つだけ定義できます。
#
Allow=========================================================================対応OS : Linux.x86 / Windows書式 : Allow (<ip_addr> <net_mask>|any)[ <hpfp_cong_mode_modifier>]-------------------------------------------------------------------------ip_addr既定値 : なし値の範囲 : IPアドレス-------------------------------------------------------------------------net_mask既定値 : なし値の範囲 : サブネットマスク表記-------------------------------------------------------------------------hpfp_cong_mode_modifier書式 : <modifier>[...] modifier := (+|-)(M|S|A)[...]既定値 : なし=========================================================================
アクセスコントロールリスト内に、許可アクセスを定義します。
ip_addrは、IPアドレスを指定します。
net_maskは、ネットマスクを指定します。
キーワード any は、全てのネットワークを表します。
hpfp_cong_mode_modifierは、HpFPの輻輳制御モードの上書きを指定します。
+は、記述したルールで接続を受け付けた場合に、直後に記載した輻輳制御モードの許可を追加します。
-は、直後に記載した輻輳制御モードの許可を取り消します。
M、SおよびAは、それぞれHpFPの輻輳制御モードのMODEST、FAIR_FAST_STARTおよびAGGRESSIVEを表します。
--例: Allow 192.168.1.0 255.255.255.0 -A+M--
接続元のIPアドレスが指定されたネットワークに含まれる場合、そのアクセスを許可します。
#
Deny=========================================================================対応OS : Linux.x86 / Windows書式 : Deny (<ip_addr> <net_mask>|any)-------------------------------------------------------------------------ip_addr既定値 : なし値の範囲 : IPアドレス-------------------------------------------------------------------------net_mask既定値 : なし値の範囲 : サブネットマスク表記=========================================================================
アクセスコントロールリスト内に、拒否アクセスを定義します。
--例: Deny 192.168.1.0 255.255.255.0--
接続元のIPアドレスが指定されたネットワークに含まれる場合、そのアクセスを拒否します。
#
アクセス制御・アドミッション制御(入場制限)#
MaxTotalConnection=========================================================================対応OS : Linux.x86 / Windows書式 : MaxTotalConnection <max-total-con>-------------------------------------------------------------------------max-total-con既定値 : 150値の範囲 : 符号付整数=========================================================================
接続数制限を設定します。
--例:MaxTotalConnection 5--
#
MaxTcpConnection=========================================================================対応OS : Linux.x86 / Windows書式 : MaxTcpConnection <max-tcp-con>-------------------------------------------------------------------------max-tcp-con既定値 : 50値の範囲 : 符号付整数=========================================================================
TCP接続数制限を設定します。
--例:MaxTcpConnection 5--
#
MaxUdpConnection=========================================================================対応OS : Linux.x86 / Windows書式 : MaxUdpConnection <max-udp-con>-------------------------------------------------------------------------max-udp-con既定値 : 50値の範囲 : 符号付き整数=========================================================================
HpFP(UDP)接続数制限を設定します。
--例:MaxUdpConnection 5--
#
MaxWsConnection=========================================================================対応OS : Linux.x86 / Windows書式 : MaxWsConnection <max-ws-con>-------------------------------------------------------------------------max-ws-con既定値 : 50値の範囲 : 符号付き整数=========================================================================
WebSocket接続数制限を設定します。
--例:MaxWsConnection 5--
#
MaxConnectionPerUser=========================================================================対応OS : Linux.x86 / Windows書式 : MaxConnectionPerUser <max-con-per-user>-------------------------------------------------------------------------max-con-per-user既定値 : 50値の範囲 : 符号付き整数=========================================================================
ユーザ毎の接続数制限を設定します。
--例:MaxConnectionPerUser 1--
#
MaxConnectionPerSec=========================================================================対応OS : Linux.x86 / Windows書式 : MaxConnectionPerSec <max-con-per-sec>-------------------------------------------------------------------------max-con-per-sec既定値 : 25値の範囲 : 符号付き整数=========================================================================
秒間の接続数制限を設定します。
--例:MaxConnectionPerSec 10--
#
アクセス制御・ドキュメントポイント#
DocPoint=========================================================================対応OS : Linux.x86 / Windows書式 : DocPoint <doc_point_name>-------------------------------------------------------------------------doc_point_name既定値 : なし値の範囲 : 文字列=========================================================================
ドキュメントポイントを定義します。
ドキュメントポイントとは、サーバがクライアントへのアクセスを提供するファイルシステム上の領域(パス指定されたその配下のディレクトリまたはファイル)を指定するものです。各ドキュメントポイントごとに読み書きの可否の設定などを記述することができます。
doc_point_nameは、このドキュメントポイントの名称を記述します。
最初に定義されたドキュメントポイントは、ユーザのホームディレクトリが解決できなかった場合の既定のホームディレクトリとして使用されます。
--例:DocPoint /home DocPath /home PermitAccessRead yes PermitAccessWrite yes PermitAccessOverwrite yes PermitAccessDelete yesDocPointEnd--
DocPath, PermitAccessRead, PermitAccessWrite, PermitAccessOverwrite, PermitAccessDeleteについては、後述しています。
複数設定する場合は以下のように列記します。
--例:DocPoint /home ......DocPointEnd
DocPoint /dev ......DocPointEnd--
#
DocPath=========================================================================対応OS : Linux.x86 / Windows書式 : DocPath <doc_path>-------------------------------------------------------------------------doc_path既定値 : なし値の範囲 : ファイルシステムのパス文字列=========================================================================
ドキュメントポイントが指すディレクトリパスを指定します。
--例: DocPath /home--
この項目で指定されたディレクトリパスのファイルやディレクトリへのアクセスを許可します。
#
PermitAccessRead=========================================================================対応OS : Linux.x86 / Windows書式 : PermitAccessRead <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
ドキュメントポイントでの読込みアクセスを設定します。
--例: PermitAccessRead yes--
noを指定した場合、このドキュメントポイント内のファイルの読み出しは禁止されます。ファイル転送を行う場合は、転送元のファイルの読み出しなどが読込みエラーとなります。
#
PermitAccessWrite=========================================================================対応OS : Linux.x86 / Windows書式 : PermitAccessWrite <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
ドキュメントポイントでの書込みアクセスを設定します。
--例: PermitAccessWrite yes--
noを指定した場合、このドキュメントポイント内のファイルへの書出しは禁止されます。ファイル転送を行う場合は、転送先のファイルへの書出しなどが書込みエラーとなります。
#
PermitAccessOverwrite=========================================================================対応OS : Linux.x86 / Windows書式 : PermitAccessOverwrite <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
ドキュメントポイントでの上書きアクセスを設定します。
--例: PermitAccessOverwrite yes--
noを指定した場合、このドキュメントポイント内のファイルへの上書きは禁止されます。ファイル転送を行う場合は、転送先のファイルへ上書き(既に存在するファイルへのデータ書込み)などが書込みエラーとなります。
#
PermitAccessDelete=========================================================================対応OS : Linux.x86 / Windows書式 : PermitAccessDelete <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
ドキュメントポイントでの削除アクセスを設定します。
--例: PermitAccessDelete yes--
noを指定した場合、このドキュメントポイント内のファイルの削除は禁止されます。
#
PermitAccessRandomRead (予約)=========================================================================対応OS : Linux.x86 / Windows書式 : PermitAccessRandomRead <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
ドキュメントポイントでのランダム読込みアクセスを設定します。
--例: PermitAccessRandomRead yes--
#
PermitAccessRandomWrite (予約)=========================================================================対応OS : Linux.x86 / Windows書式 : PermitAccessRandomWrite <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
ドキュメントポイントでのランダム書込みアクセスを設定します。
--例: PermitAccessRandomRead yes--
#
各種監視機能・タイムアウト制御#
TransportTimeout=========================================================================対応OS : Linux.x86 / Windows書式 : TransportTimeout <timeout>-------------------------------------------------------------------------timeout既定値 : 180値の範囲 : 符号なし整数=========================================================================
トランスポートのタイムアウトを秒単位で設定します。KeepAliveデータの通信を含めトランスポートのデータ通信が指定時間途絶えた場合に、通信の継続が不可能な状態と見做してコネクションを切断しセッションを終了します。
0を指定するとタイムアウトを無効にします。
--例:TransportTimeout 60--
#
IdleTimeout=========================================================================対応OS : Linux.x86 / Windows書式 : IdleTimeout <timeout>-------------------------------------------------------------------------timeout既定値 : 0 (タイムアウトなし)値の範囲 : 符号なし整数=========================================================================
セッションのアイドルタイムアウトを秒単位で設定します。接続上でオペレーション(コマンド実行を単位とする処理)が指定時間実行されない場合に、サーバから接続を切断します。クライアントがターミナル機能(複数のコマンドを任意の時点で実行可能。APIライブラリで提供されます)を使用している場合に適用されます。
0を指定するとタイムアウトを無効にします。
--例:IdleTimeout 180 --
#
性能評価機能#
MemoryTransferConcurrency=========================================================================対応OS : Linux.x86 / Windows書式 : MemoryTransferConcurrency <num-concur> <wait-type> <busy-sleep-nsec>-------------------------------------------------------------------------num-concur既定値 : 自動 (物理コア数 / 2 と 16 のいずれか小さい値) 値の範囲 : 符号なし整数-------------------------------------------------------------------------wait-type既定値 : cond値の範囲 : cond, busy-------------------------------------------------------------------------busy-sleep-nsec既定値 : 1値の範囲 : 符号なし整数=========================================================================
ローカルI/Oを抑制するモード(hcpコマンド -nオプション。メモリツーメモリ転送動作時)を実行する場合に、送信元で使用する疑似データをデータブロックバッファにコピー(memcpyによるメモリコピー)する際の並列動作を設定します。
num-concurは、並列数を指定します。1を指定すると並列化せずに標準のメモリコピー処理(memcpy)を実行します。
wait-typeは、並列動作するメモリコピースレッドが待機する際に使用する待機方式を指定します。condは条件付き待機(conditional wait)を、busyはビジー待機(busy wait)を行います。busyを指定した場合は、並列数を指定した数のCPUの使用率が常時100%まで達する場合があります。
busy-sleep-nsecは、ビジー待機する際に待機する時間をナノ秒で指定します。
このオプションは100G環境などでベンチマークを行う際に、シングルスレッドによるメモリコピー(memcpy)の性能限界(このメモリコピーのボトルネックがアプリ通信性能のボトルネックになる)を解消するための性能チューニングに使用します。
--例:MemoryTransferConcurrency 1 cond 1 # 無効化MemoryTransferConcurrency 12 busy 1 # ビジー待機、4並列、1ナノ秒待機--
#
ログ管理機能#
SyslogOption=========================================================================対応OS : Linux.x86 / Windows書式 : SyslogOption <syslog-options>-------------------------------------------------------------------------syslog-options書式 : syslog-option[ ...]既定値 : CONS PID-------------------------------------------------------------------------syslog-option値の範囲 : CONS, NDELAY, NOWAIT, ODELAY, PERROR, PID=========================================================================
syslogのオプションを設定します(複数指定可)。
各オプションは、接頭辞"LOG_"を付加したsyslogのオプションに対応します。
--例:SyslogOption PID--
#
SyslogFacility=========================================================================対応OS : Linux.x86 / Windows書式 : SyslogFacility <syslog-facility>-------------------------------------------------------------------------syslog-facility既定値 : DAEMON値の範囲 : AUTH, CRON, DAEMON, FTP, LOCAL0 - LOCAL7, LPR, MAIL, NEWS, USER, UUCP=========================================================================
syslogのファシリティを設定します。
各ファシリティは、接頭辞"LOG_"を付加したsyslogのファシリティに対応します。
--例:SyslogFacility FTP--
#
SystemLog=========================================================================対応OS : Linux.x86 / Windows書式 : SystemLog <log-level>[ <flag-available>][ <log-rotation-conf>][ <log-path>]-------------------------------------------------------------------------log-level既定値 : INFO値の範囲 : EMERG, ALERT, CRIT, ERR, WARNING, INFO, DEBUG-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no-------------------------------------------------------------------------log-rotation-conf書式 : ( FileSize <file-size> <backups> | DatePattern <date-pattern> )-------------------------------------------------------------------------file-size既定値 : なし値の範囲 : 符号あり倍長整数-------------------------------------------------------------------------backups既定値 : なし値の範囲 : 符号なし整数-------------------------------------------------------------------------date-pattern既定値 : なし値の範囲 : yyyy-MM, yyyy-MM-dd, yyyy-MM-dd-HH, yyyy-MM-dd-HH-mm-------------------------------------------------------------------------log-path既定値 : /var/log/hcpd.log値の範囲 : ファイルシステムのパス文字列=========================================================================
システムのログ設定を行います。
log-levelは、ログのレベルを指定します。
flag-availableにyesを指定するとログを出力します。
log-rotation-confは、ログのローテーションを指定します。指定しない場合は、ローテーションしません。FileSizeを指定するとファイルサイズを閾値としたローテーションを行い、DatePatternを指定すると日時にもとづくローテーションを行います。
file-sizeは、ローテーションを行いファイルサイズの閾値をバイト単位で指定します。
backupsは、FileSizeを指定してローテーションを行う場合にローテーションされたファイルを保持する世代数の上限を指定します。
date-patternは、日時でローテーションするパターンを指定します。
FileSizeを指定した場合は、ログのパス名に次の様に世代数を接尾辞として付加してファイルをローテーションします。
<指定されたログのパス> // 現在書込み中のログのパス<指定されたログのパス>.1<指定されたログのパス>.2...<指定されたログのパス>.n // backupsにnを指定
backupsで指定された世代数を超えるファイルは、ローテーション実行時に削除されます。
DatePatternを指定した場合は、ログのパス名に次の様に指定されたパターンに従って日時を接尾辞として付加してファイルをローテーションします。
// yyyy-MM-ddの場合<指定されたログのパス> // 現在書込み中のログのパス<指定されたログのパス>.2019-12-10 // 2019/12/10のログ<指定されたログのパス>.2019-12-09...<指定されたログのパス>.2019-11-30...
ローテーションは、指定されたパターンで定まる日時の区間を単位に行います。
月単位の場合は、その月の1日0時0分0秒から翌月の同時刻が到来する直前までになります。
例:2019/11/01 00:00:00 から 2019/12/01 00:00:00 まで(但し、2019/12/01 00:00:00を含まない)
分単位の場合は、 その分の0秒から次の分の0の直前までになります。
例:2019/11/01 10:30:00 から 2019/11/01 10:31:00 まで(但し、2019/11/01 10:31:00を含まない)
ローテーションは、各区間を経過後にログの書込みが要求されるとその書込みの前に実行されます。ファイル名は、該当する区間の接尾辞が付加された名前に変更されます。
// yyyy-MM-dd-HH-mmの場合のローテーションの事例2019/12/10 00:00 サーバ起動2019/12/10 00:05 サーバ停止2019/12/10 00:07 サーバ再起動...--<指定されたログのパス><指定されたログのパス>.2019-12-10-00-11<指定されたログのパス>.2019-12-10-00-10 // 00:09から00:10の間は書込みがなかった<指定されたログのパス>.2019-12-10-00-08<指定されたログのパス>.2019-12-10-00-07 // 再起動後の00:07のログ<指定されたログのパス>.2019-12-10-00-05 // サーバ停止までの00:05のログ (再起動時にファイルの更新日時から判断してローテーション実施)...<指定されたログのパス>.2019-12-10-00-00
但し、特権分離を使用しているサーバでは定期的に(128ミリ秒程度の間隔で)ローテーションが実行されます。ローテーションが遅延して実行される場合があるため、通常は次の区間に出力されるログが現在の区間に出力されることがあります。
log-pathは、ログのパスを指定します。コマンドラインパラメータの-lとともに指定した場合は、コマンドラインパラメータの指定が適用されます。
--例1:SystemLog WARNING FileSize 10MB 10例2:SystemLog WARNING DatePattern yyyy-MM-dd例3:SystemLog WARNING // SystemLogLevelに同じ--
#
SystemLogLevel=========================================================================対応OS : Linux.x86 / Windows書式 : SystemLogLevel <log-level>-------------------------------------------------------------------------log-level既定値 : INFO値の範囲 : EMERG, ALERT, CRIT, ERR, WARNING, INFO, DEBUG=========================================================================
システムのログレベルを設定します。syslogの機能には影響しません。
SystemLogと共に記述した場合は、ログレベルの値のみ上書きされます。
--例:SystemLogLevel WARNING--
#
ApplicationStatLog=========================================================================対応OS : Linux.x86 / Windows書式 : ApplicationStatLog <flag-available>[ <log-rotation-conf>]-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no-------------------------------------------------------------------------log-rotation-conf書式 : ( FileSize <file-size> <backups> | DatePattern <date-pattern> )-------------------------------------------------------------------------file-size既定値 : なし値の範囲 : 符号あり倍長整数-------------------------------------------------------------------------backups既定値 : なし値の範囲 : 符号なし整数-------------------------------------------------------------------------date-pattern既定値 : なし値の範囲 : yyyy-MM, yyyy-MM-dd, yyyy-MM-dd-HH, yyyy-MM-dd-HH-mm=========================================================================
アプリケーション統計を設定します。
flag-availableにyesを指定するとアプリケーションの統計情報を出力します。
log-rotation-confは、出力のローテーションを指定します。SystemLogで設定するローテーションと同様の動作を行います。但し、特権分離を使用している場合に実行される定期的なローテーションは行われません。
FileSizeとDatePatternでそれぞれ統計ログの基準パスとして指定されたパスをもとに次の様にローテーションが行われます。
// FileSizeの場合<指定されたパス>.application<指定されたパス>.application.1<指定されたパス>.application.2...<指定されたパス>.application.n// DatePatternの場合<指定されたパス>.application<指定されたパス>.application.2019-12-10<指定されたパス>.application.2019-12-09...
ローテーションされたファイルに統計情報のヘッダは含まれません。
--例1:ApplicationStatLog no例2:ApplicationStatLog yes FileSize 10MB 10例3:ApplicationStatLog yes DatePattern yyyy-MM-dd--
#
TransportStatLog=========================================================================対応OS : Linux.x86 / Windows書式 : TransportStatLog <flag-available>[ <log-rotation-conf>]-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no-------------------------------------------------------------------------log-rotation-conf書式 : ( FileSize <file-size> <backups> | DatePattern <date-pattern> )-------------------------------------------------------------------------file-size既定値 : なし値の範囲 : 符号あり倍長整数-------------------------------------------------------------------------backups既定値 : なし値の範囲 : 符号なし整数-------------------------------------------------------------------------date-pattern既定値 : なし値の範囲 : yyyy-MM, yyyy-MM-dd, yyyy-MM-dd-HH, yyyy-MM-dd-HH-mm=========================================================================
トランスポート統計を設定します。
flag-availableにyesを指定するとトランスポートの統計情報を出力します。
log-rotation-confは、出力のローテーションを指定します。SystemLogで設定するローテーションと同様の動作を行います。SystemLogと同様に特権分離を使用している場合は、定期的なローテーションが実行されます。
FileSizeとDatePatternでそれぞれ統計ログの基準パスとして指定されたパスをもとに次の様にローテーションが行われます。
// FileSizeの場合<指定されたパス>.transport.tcp.service_<サービス番号>.<サービスポート番号>.thread_<スレッド番号><指定されたパス>.transport.tcp.service_<サービス番号>.<サービスポート番号>.thread_<スレッド番号>.1<指定されたパス>.transport.tcp.service_<サービス番号>.<サービスポート番号>.thread_<スレッド番号>.2...<指定されたパス>.transport.tcp.service_<サービス番号>.<サービスポート番号>.thread_<スレッド番号>.n// DatePatternの場合<指定されたパス>.transport.tcp.service_<サービス番号>.<サービスポート番号>.thread_<スレッド番号><指定されたパス>.transport.tcp.service_<サービス番号>.<サービスポート番号>.thread_<スレッド番号>.2019-12-10<指定されたパス>.transport.tcp.service_<サービス番号>.<サービスポート番号>.thread_<スレッド番号>.2019-12-09...
ローテーションされたファイルに統計情報のヘッダは含まれません。
--例1:TransportStatLog yes例2:TransportStatLog yes FileSize 10MB 10例3:TransportStatLog yes DatePattern yyyy-MM-dd--
#
SystemStatLog=========================================================================対応OS : Linux.x86 / Windows書式 : SystemStatLog <flag-available>[ <log-rotation-conf>]-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no-------------------------------------------------------------------------log-rotation-conf書式 : ( FileSize <file-size> <backups> | DatePattern <date-pattern> )-------------------------------------------------------------------------file-size既定値 : なし値の範囲 : 符号あり倍長整数-------------------------------------------------------------------------backups既定値 : なし値の範囲 : 符号なし整数-------------------------------------------------------------------------date-pattern既定値 : なし値の範囲 : yyyy-MM, yyyy-MM-dd, yyyy-MM-dd-HH, yyyy-MM-dd-HH-mm=========================================================================
システム統計を設定します。
flag-availableにyesを指定するとシステムの統計情報を出力します。
log-rotation-confは、出力のローテーションを指定します。SystemLogで設定するローテーションと同様の動作を行います。但し、特権分離を使用している場合に実行される定期的なローテーションは行われません。
FileSizeとDatePatternでそれぞれ統計ログの基準パスとして指定されたパスをもとに次の様にローテーションが行われます。
// FileSizeの場合<指定されたパス>.system<指定されたパス>.system.1<指定されたパス>.system.2...<指定されたパス>.system.n// DatePatternの場合<指定されたパス>.system<指定されたパス>.system.2019-12-10<指定されたパス>.system.2019-12-09...
ローテーションされたファイルに統計情報のヘッダは含まれません。
--例1:SystemStatLog yes例2:SystemStatLog yes FileSize 10MB 10例3:SystemStatLog yes DatePattern yyyy-MM-dd--
#
FileOperationLog=========================================================================対応OS : Linux.x86 / Windows書式 : FileOperationLog <flag-available>[ <log-rotation-conf>][ <log-path>]-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no-------------------------------------------------------------------------log-rotation-conf書式 : ( FileSize <file-size> <backups> | DatePattern <date-pattern> )-------------------------------------------------------------------------file-size既定値 : なし値の範囲 : 符号あり倍長整数-------------------------------------------------------------------------backups既定値 : なし値の範囲 : 符号なし整数-------------------------------------------------------------------------date-pattern既定値 : なし値の範囲 : yyyy-MM, yyyy-MM-dd, yyyy-MM-dd-HH, yyyy-MM-dd-HH-mm-------------------------------------------------------------------------log-path既定値 : なし値の範囲 : ファイルシステムのパス文字列=========================================================================
ファイル操作をロギングする機能を設定します。
flag-availableにyesを指定するとファイル操作のログを出力します。
log-rotation-confは、出力のローテーションを指定します。SystemLogで設定するローテーションと同様の動作を行います。
FileSizeとDatePatternでそれぞれ統計ログの基準パスとして指定されたパスをもとに次の様にローテーションが行われます。
// FileSizeの場合<ログのパス><ログのパス>.1<ログのパス>.2...<ログのパス>.n// DatePatternの場合<ログのパス><ログのパス>.2019-12-10<ログのパス>.2019-12-09...
ローテーションされたファイルに統計情報のヘッダは含まれません。
log-pathは、ログを出力するファイルのパスを指定します。指定しない場合は、次の値が使用されます。
/var/log/hcpd.file.operation.log (Linux.x86)C:/ProgramData/Clealink/HCP Tools/hcpd.file.operation.log (Windows)
ファイルの操作ログでは、次のファイルI/O処理を記録します。
- ファイル読込み終了
- ファイル書込み終了
- ファイル削除(同期による削除を含む)
- ディレクトリ作成
- ファイルリネーム
- ハードリンク作成
- シンボリックリンク作成
- ファイルリスト参照
また、アプリケーションの送達確認を含めた記録として次の様な情報も記録されます。
- ファイル転送アップロード完了
- ファイル転送ダウンロード完了
- ファイル同期完了
- ファイル削除完了
- ディレクトリ作成完了
- ファイルリネーム完了
- ハードリンク作成完了
- シンボリックリンク作成完了
共通する情報として、次の項目が記録されます。
- 日時
- アクセス元IP及びポート番号
- ユーザ名
ファイルパスは、各処理毎に固有の内容が記録されます。
ログは次の書式で出力されます。
=========================================================================書式:yyyy/mm/dd HH:MM:SS.<usec> <remote-ip> <username> <hcp-operation-name>[ <sub-operation-label>] <path>...yyyy/mm/dd HH:MM:SS.<usec> <remote-ip> <username> <file-io-operation-name>\[<hcp-operation-name>\] <path>...-------------------------------------------------------------------------usec値の範囲 : マイクロ秒(000000 - 999999)-------------------------------------------------------------------------remote-ip値の範囲 : アクセス元IP及びポート番号-------------------------------------------------------------------------username値の範囲 : ユーザ名及び認証方式-------------------------------------------------------------------------hcp-operation-name値の範囲 : FT, FS, FR, LR, DC, FM, FL-------------------------------------------------------------------------sub-operation-label値の範囲 : U, D, H, S-------------------------------------------------------------------------file-io-operation-name値の範囲 : FileRead, FileWritten, FileDeleted, DirectoryCreated, FileRenamed, LinkCreated, SymbolicLinkCreated, ListFilesRawFormat=========================================================================
hcp-operation-nameは、次のアプリケーションの種別を区別するラベルを表します。
- FT (ファイル転送)
- FS (ファイル同期でのファイル削除)
- FR (ファイル削除)
- LR (ファイル一覧 ls, dir出力)
- DC (ディレクトリ作成)
- FM (ファイル移動)
- FL (リンク作成)
sub-operation-labelは、特定のアプリケーションの種別で処理の種類を分類するためのラベルを表します。
- U (アップロード。FTで表示)
- D (ダウンロード。FTで表示)
- H (ハードリンク作成。FLで表示)
- S (シンボリックリンク作成。FLで表示)
file-io-operation-nameは、ファイルのI/O操作の種別を区別するラベルを表します。
- FileRead (ファイル読込み終了)
- FileWritten (ファイル書込み終了)
- FileDeleted (ファイル削除実施済み)
- DirectoryCreated (ディレクトリ作成済み)
- FileRenamed (ファイル名変更済み)
- LinkCreated (ハードリンク作成済み)
- SymbolicLinkCreated (シンボリックリンク作成済み)
- ListFilesRawFormat (lsもしくはdir実行予定)
--出力例:2020/01/31 10:34:52.277120 127.0.0.1:51660 user[PAM] FileWritten[FT] /home/user/file_nodiskio_02020/01/31 10:34:52.277175 127.0.0.1:51660 user[PAM] FT U /home/user/file_nodiskio_02020/01/31 10:35:14.946750 127.0.0.1:51662 user[PAM] FileRead[FT] /home/user/file_nodiskio_02020/01/31 10:35:15.002770 127.0.0.1:51662 user[PAM] FT D /home/user/file_nodiskio_02020/01/31 10:35:30.002700 127.0.0.1:51662 user[PAM] FS /home/user/dir_sync/stat.log2020/01/31 10:35:30.013558 127.0.0.1:51664 user[PAM] FileDeleted[FS] /home/user/dir_sync/stat.log2020/01/31 10:35:47.713558 127.0.0.1:51664 user[PAM] FileDeleted[FR] /home/user/stat.3.log2020/01/31 10:35:47.765413 127.0.0.1:51664 user[PAM] FR /home/user/stat.3.log2020/01/31 10:38:45.686206 127.0.0.1:51670 user[PAM] DirectoryCreated[DC] /home/user/hmkdir132020/01/31 10:38:45.789370 127.0.0.1:51670 user[PAM] DC /home/user/hmkdir132020/01/31 10:39:22.411968 127.0.0.1:51674 user[PAM] FileRenamed[FM] /home/user/stat.log /home/user/stat2.log2020/01/31 10:39:22.463710 127.0.0.1:51674 user[PAM] FM /home/user/stat.log /home/user/stat2.log2020/01/31 10:40:00.087660 127.0.0.1:51678 user[PAM] SymbolicLinkCreated[FL] /home/user/stat2.log /home/user/stat.log2020/01/31 10:40:00.165831 127.0.0.1:51678 user[PAM] FL S /home/user/stat2.log /home/user/stat.log2020/01/31 10:40:13.693415 127.0.0.1:51680 user[PAM] LinkCreated[FL] /home/user/stat2.log /home/user/stat.h.log2020/01/31 10:40:13.746160 127.0.0.1:51680 user[PAM] FL H /home/user/stat2.log /home/user/stat.h.log2020/02/06 13:54:21.282066 127.0.0.1:50186 user[PAM] ListFilesRawFormat[LR] /home/user/hmkdir42020/02/06 13:54:21.282104 127.0.0.1:50186 user[PAM] ListFilesRawFormat[LR] /home/user/hmkdir5--
--例1:FileOperationLog yes例2:FileOperationLog yes FileSize 10MB 10例3:FileOperationLog yes DatePattern yyyy-MM-dd例4:FileOperationLog yes FileSize 10MB 10 /var/tmp/hcpd.file.operation.log--
#
StatLogPerUserInPrivilegeSeparation=========================================================================対応OS : Linux.x86 / Windows書式 : StatLogPerUserInPrivilegeSeparation <flag-available>-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no=========================================================================
特権分離を使用している場合の統計ログをユーザ毎に記録するか設定します。
--例:StatLogPerUserInPrivilegeSeparation yes--
#
ApplicationStatLogSecurityEx=========================================================================対応OS : Linux.x86 / Windows書式 : ApplicationStatLogSecurityEx <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
アプリケーション統計ログでセキュリティに関する詳細情報を出力するか設定します。
--例:ApplicationStatLogSecurityEx no--
#
システム動作環境設定・CPUスレッド制限#
MaxConcurrentThread=========================================================================対応OS : Linux.x86書式 : MaxConcurrentThread <max-threads>-------------------------------------------------------------------------max-threads既定値 : 0値の範囲 : 符号付整数=========================================================================
スレッド数制限を設定します。
#
システム動作環境設定・アプリケーション連携機能#
CallbackScript=========================================================================対応OS : Linux.x86書式 : CallbackScript <flag-available>[ <script-path>[ <data-store-path>]]-------------------------------------------------------------------------flag-available既定値 : no値の範囲 : yes, no-------------------------------------------------------------------------script-path既定値 : なし値の範囲 : ファイルシステムのパス文字列-------------------------------------------------------------------------data-store-path既定値 : なし値の範囲 : ファイルシステムのパス文字列=========================================================================
アプリケーションの実行が終了したタイミングで呼び出すスクリプト(プログラム)を設定します。
flag-availableにyesを指定するとスクリプトの呼出を有効にします。
script-pathは、スクリプトのパスを指定します。チルダ(~)を先頭に使用すると、アプリケーションを実行しているユーザ(認証されたユーザ)のホームディレクトリを展開して使用します。
data-store-pathは、スクリプトの実行時に与えられるデータ(パラメータ情報や実行結果)を保存するパスを指定します。チルダ(~)を先頭に使用すると、アプリケーションを実行しているユーザ(認証されたユーザ)のホームディレクトリを展開して使用します。
全てのアプリケーションの処理が終了すると、その直後に次の様な書式でコマンドを実行します。
=========================================================================コマンド書式 : <script-path> <exit-code> <start-date-and-time> <end-date-and-time> <remote-ip> <username> <hcp-operation-name> <param-saved-path> <output-saved-path>-------------------------------------------------------------------------script-path値の範囲 : ファイルシステムのパス文字列(チルダ展開済み)-------------------------------------------------------------------------exit-code値の範囲 : 終了コード-------------------------------------------------------------------------start-date-and-time値の範囲 : 次の書式の日時 YYYY/MM/DD hh:mm:ss-------------------------------------------------------------------------end-date-and-time値の範囲 : 次の書式の日時 YYYY/MM/DD hh:mm:ss-------------------------------------------------------------------------remote-ip値の範囲 : アクセス元IPアドレス及びポート番号-------------------------------------------------------------------------username値の範囲 : ユーザ名及び認証方式-------------------------------------------------------------------------hcp-operation-name値の範囲 : hcp, hrm, hcp-ls, hmkdir, hpwd, hmv, hln, transfer, remove, listraw, mkd, pwd, move, link, cwd-------------------------------------------------------------------------param-saved-path値の範囲 : ファイルシステムのパス文字列-------------------------------------------------------------------------output-saved-path値の範囲 : ファイルシステムのパス文字列=========================================================================
script-pathには、hcpd.confで設定されたスクリプトパスにチルダ(~)展開が実施されたパスが使用されます。
exit-codeには、実行したアプリケーションの終了結果を表す理由コードが渡されます。アプリケーション統計に記録される理由コードと同じものが渡されます。
start-date-and-time及びend-date-and-timeには、それぞれアプリケーションの処理を開始した日時と終了した日時が渡されます。
hcp-operation-nameには、次のアプリケーション(APIオペレーション)の種別を区別するラベルが渡されます。
- hcp (ファイル転送コマンド)
- hrm (ファイル削除コマンド)
- hcp-ls (ファイル一覧コマンド)
- hmkdir (ディレクトリ作成コマンド)
- hpwd (ワーキングディレクトリ出力コマンド)
- hmv (ファイル移動コマンド)
- hln (リンク作成コマンド)
- transfer (APIファイル転送処理)
- remove (APIファイル削除処理)
- listraw (APIファイル一覧処理)
- mkd (APIディレクトリ作成処理)
- pwd (APIワーキングディレクトリ取得処理)
- move (APIファイル移動処理)
- link (APIリンク作成処理)
param-saved-pathには、入力パラメータの情報が保存されたファイルのパスが渡されます。このファイルには、クライアントで確認できる実行結果記録(.hcp.out)のうちサーバ上で特定された指定されたパス情報と処理のオプションが記録されます。
--出力例:[user@localhost ~]$ cat .hcp/callback/hcp.cb.20200206_152252_468.13521.paramOPT copy_mode ALLCOPYOPT overwrite_mode FORCEOPT fail_action_mode HALTOPT preserve_permission noOPT recursive yesOPT any_dirs noOPT regex noOPT verify_payload noOPT copy_symlink noOPT follow_symlink noOPT no_copy_empty_file noOPT no_copy_empty_dir noOPT no_copy_dot_file noOPT no_copy_dot_dir noOPT copy_hidden noOPT check_archive noOPT resuming noOPT no_app_io yes num_files 1 file_size 1024OPT no_sess_io noSRC /home/user--
output-saved-pathには、実行結果の情報が保存されたファイルのパスが渡されます。このファイルには、クライアントで確認できる実行結果記録(.hcp.out)のうち各ファイルの実行結果に相当する内容が記録されます。
--出力例:[user@localhost ~]$ cat .hcp/callback/hcp.cb.20200206_152252_468.13521.out OK 0000 FT 00000001 /home/user/file_nodiskio_0--
--例:CallbackScript yes /var/tmp/hcp_callback.sh /var/tmp/hcp_callback--
#
その他#
EnsureDestinationInFileTransfer=========================================================================対応OS : Linux.x86 / Windows書式 : EnsureDestinationInFileTransfer <flag-available>-------------------------------------------------------------------------flag-available既定値 : yes値の範囲 : yes, no=========================================================================
ファイル転送で宛先のディレクトリが存在しない場合に、作成を試みるか制御します。本オプションは、1.1.0以降のソフトウェアでは常に無効(no)として動作します。
--例:EnsureDestinationInFileTransfer no--