Tomcatのセキュリティとパフォーマンスチューニング

Tomcatのセキュリティ

セキュリティの設定

  • webappsディレクトリ内のすべてのファイルを削除し、無効にTomcatの管理インターフェイス。
  • コメントまたはすべてのユーザー権利のtomcat-users.xmlの文書内を削除します。
  • 変更または無効に閉じるコマンドのTomcat
    • server.xmlの例で定義されているTomcatのちょうど近くにTomcatの管理ポート(デフォルト8005)があります。ポートは、(例えば、ケースを閉じ、そのプロセスは依然として存在するが、そのノート)のTelnet、近いTomcatインスタンスへのシャットダウン入力(これはデフォルト閉鎖コマンドである)を介して接続することができる後。
    • デフォルトのTomcatポートが閉じているので命令は非常に単純です。デフォルトのポートは8005、命令SHUTDOWNです。
    方案一:更改端口号和指令:
    <Server port="8456" shutdown="itcast_shut">
    
    方案二:	禁用8005端口:
    <Server port="‐1" shutdown="SHUTDOWN">
    
  • カスタムエラーページ
    • Webアプリケーション/ ROOTディレクトリ404.html、500.htmlのカスタムエラーページ。
    • 404、500、そのような例外は、ユーザーがリソースにアクセスするとき、我々は異常なスタック情報を見ることなく、私たちのカスタムエラーページを参照してください、とユーザーエクスペリエンスを改善するだけでなく、サービスのセキュリティを保護することができます発生します。
    • その後、Tomcatの/ confに/ web.xmlのは、configureエラーページを設定します。
    <error‐page>
        <error‐code>404</error‐code>
        <location>/404.html</location>
    </error‐page>
    <error‐page>
        <error‐code>500</error‐code>
        <location>/500.html</location>
    </error‐page>
    

アプリケーションセキュリティ

  • 安全なアクセス制御アプリケーションシステムのための彼らのセキュリティ管理モジュール(パーミッションモジュール)を実現するために、
  • 二つの部分に認証(ログイン/シングルサインオン)と承認(機能認証、データの許可):それは2つの部分から成り
  • SpringSecurity、Apacheの史郎など:ビジネスシステム、モジュール、および他の権限は、自分のビジネスシステムには適用されないために、アプリケーションの多くは、直接などのWebアプリケーションへの統合、セキュリティフレームワークのいくつかの機能を向上させるがあります。

交通安全

TomcatのサポートHTTPS

  • プライベートキーは、ライブラリファイルを生成しています。

    keytool ‐genkey ‐alias tomcat ‐keyalg RSA ‐keystore tomcatkey.keystore
    

    ここに画像を挿入説明
    tomcatkey.keystore:あなたはなど、キーストアのパスワード、秘密鍵暗号方式に対応する情報を入力した後、現在のフォルダ内の秘密鍵データベース・ファイルが存在します

  • キーは、Tomcat / confディレクトリにコピーされたライブラリファイルをtomcatkey.keystore。

  • Tomcatの設定/ confに/ server.xmlを

    <Connector port="8443"
    	protocol="org.apache.coyote.http11.Http11NioProtocol"
        maxThreads="150" schema="https" secure="true" SSLEnabled="true">
        <SSLHostConfig certificateVerification="false">
            <Certificate
    		certificateKeystoreFile="D:/DevelopProgramFile/apache‐tomcat‐8.5.42‐windows‐x64/apache‐tomcat‐8.5.42/conf/tomcatkey.keystore"
    		certificateKeystorePassword="yzx"  type="RSA" />
        </SSLHostConfig>
    </Connector>
    
  • アクセスTomcatは、httpsプロトコルを使用します。
    ここに画像を挿入説明

Tomcatのパフォーマンスチューニング

JVMのチューニングパラメータ

  • TomcatはJavaアプリケーションで、JVM構成が密接に自分の走行性能に関連される、JVMは、業務の効率化とスループットのメモリが直接サービスに影響を与えるため、メモリ割り当ておよびGCポリシーに焦点の調整を最適化されたJVMガベージコレクション機構の意志程度の差は、ランで結果が中断しました。
  • アプリケーションの特性に応じて、異なるガベージコレクション方式を選択し、JVMガベージコレクションポリシーを調整し、大幅に走行性能を向上させる、ガベージコレクションの効率を改善する、ごみリサイクルの数を減らすことができます。

JVMのメモリー・パラメータ

  • -サーバ
    • スタートServerは、サーバーモードで実行されています
    • サーバーモードが有効にすることをお勧めします
  • -Xms
    • 最小ヒープメモリ
    • 提案や-Xmxは同じに設定しました
  • -Xmx
    • 最大ヒープメモリ
    • 推奨設定は、使用可能なメモリの80%
  • -XX:MetaspaceSize
    • 元スペースの初期値
  • -XX:MaxMetaspaceSize
    • デフォルトの最大メモリ無限次元空間
  • -XX:MaxNewSize
    • 新生代デフォルトの最大メモリ16M
  • -XX:NewRatio
    • 古いや若い世代のサイズ比、値が整数で、デフォルトは2
    • 修正することを提案してい
  • -XX:SurvivorRatio
    • エデン領域と領域のサイズサバイバーの比率、整数値、デフォルトは8
    • 修正することを提案してい

デフォルトのガベージコレクタTomcatの
ここに画像を挿入説明
JVMのチューニング

vi bin/catalina.sh

JAVA_OPTS="-server -Xms2g -Xmx2g -XX:MetaSpaceSize=256m -XX:MaxMetaSpaceSize=528m -XX:SurvivorRatio=8 -XX:USEConcMarkSweepGC -XX:+PrintGCDetails“

ここに画像を挿入説明

チューニングTomcatの設定

コンフィギュレーション調整maxThreadsのコネクタのconf / server.xmlを選択:プール内のスレッドの最大数。

  • MaxConnectionsを:最大接続数、CPU集約型が高すぎないことをお勧め、CPU集中型の操作は、約2000の提案をお勧めされていません
  • acceptCountを:冗長配置キューを待っている要求の最大数(接続番号= MaxConnectionsを+ acceptCountを、拒否される以上)
  • maxThreadsの:スレッドの最大数は、ハードウェアの決定に応じて、
<Connector port="8080"  
          protocol="HTTP/1.1"
          redirectPort="8443" 
          connectionTimeout="20000"
          URIEncoding="UTF‐8"
          maxConnections="1000"
          acceptCount="200"
          maxThreads="500"  />
公開された109元の記事 ウォン称賛47 ビュー30000 +

おすすめ

転載: blog.csdn.net/weixin_43934607/article/details/104386406