【Tomcat】他PCからのアクセス、アクセス制限

他PCでlocalhostのwebアプリを開く方法

①自PCの8080ポートを開放する







②自PCのIPアドレスを調べる

コマンドプロンプトで「ipconfig」を実行

③他PCでwebアプリにアクセスする

localhostをipに置き換えたアドレスでアクセスする

アクセス制限の方法(設定ファイル配置について)

パターン①webapps内のMETA-INFにcontext.xmlを配置する

場所:C:\pleiades\tomcat\9\webapps\(コンテキストパス)\META-INF

パターン②conf配下のlocalhostに対象のコンテキストパス.xmlを配置する

場所:C:\pleiades\tomcat\9\conf\Catalina\localhost
例. コンテキストパスが"demo"の場合

アクセス制限の方法(IPで制限する場合)

ホワイトリスト(allowを使用する)

特定のIPアドレスセットのみへのアクセスを許可する
①自PC(localhost)のみ許可

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
</Context>

②自PC(localhost)と他IP(192.168.0.100)のみ許可

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192\.168\.0\.100" />
</Context>
ブラックリスト(denyを使用する)

特定のIPアドレスセットへのアクセスを拒否する
①自PC(localhost)のみ拒否

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         deny="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
</Context>

②自PC(localhost)と他IP(192.168.0.100)のみ拒否

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         deny="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192\.168\.0\.100" />
</Context>

アクセス制限の方法(ホスト名で制限する場合)

書き方はIPの場合と同じ

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteHostValve"
         allow=".*\.mycompany\.com|www\.yourcompany\.com"/>
</Context>