1.初期設定、設定の確認
(1)PaloAltoへの接続
①CLIでの接続
SSHで接続してください。
設定は以下にも記載があります。
https://pansetech.net/initial-config/
以下のように、ログイン後は > が表示されていると思います。
admin@PA-VM>
configure で設定モード(Configuration mode)に遷移できますが、pingやSSHをするだけであればその必要はありません。
ア)SSH接続
必要に応じて、PaloAltoからLANセグメントにあるサーバにSSH接続します。以下は、SSH接続先のサーバのIPアドレスが172.16.2.101で、その際のアカウントがpalo_srvの場合です。
admin@PA-VM>ssh host palo_srv@172.16.2.101
この後、パスワードが聞かれるので、正しい情報を入れるとSSH接続によるログインができます。
イ)ping
以下は、172.16.2.101にping接続した際の設定です。
admin@PA-VM> ping host 172.16.2.101 PING 172.16.2.101 (172.16.2.101) 56(84) bytes of data. 64 bytes from 172.16.2.101: icmp_seq=1 ttl=127 time=0.365 ms 64 bytes from 172.16.2.101: icmp_seq=2 ttl=127 time=0.326 ms
ウ)時刻設定
デフォルトだとタイムゾーンがずれているので、設定変更する。
admin@PA-VM> configure admin@PA-VM# set deviceconfig system timezone Japan admin@PA-VM# commit
時刻の確認
admin@PA-VM# exit Exiting configuration mode admin@PA-VM> show clock Wed May 10 21:20:38 JST 2023
②GUIでの接続
MGTポートに対して、httpsで接続する。
https://(IPアドレス)
右下から言語を日本語に変更します。
(2)設定の反映
右上にあるcommitボタンを押して、設定を確定をする必要があります。
(3)設定の確認
・現在のファームウェアのバージョン確認
DEVICE>Software 左下のCheck Nowを押して情報を更新します。
CURRENTLY INSTALLEDにチェックが入っているのが現在のバージョンです。
https://pansetech.net/initial-config/#toc12
2.構成の簡単な説明
(1)今回の構成
項番 | ポート(ゾーン) | IPアドレス | 補足 |
---|---|---|---|
① | MGT | 172.16.1.99/24 | SSHやGUIで設定用に接続するポート |
② | WAN | 172.16.0.99/24 | インターネットに接続 |
③ | LAN | 172.16.2.99/24 | LANセグメントで、172.16.2.101のIPアドレスを持つ端末(サーバ)がある。 |
LANセグメントの端末に接続するには、Paloのポリシーで外部からのMIPの設定をするか、PaloにSSHで接続し、Paloを踏み台としてSSHでこの端末に接続する。
(2)ゾーンの確認
ゾーンは、インターフェースをグループ化するものと考えればいいでしょう。
一般的にはUntrust(=WAN)とTrust(=LAN)のゾーンに分けるでしょう。+DMZなどのいくつかのゾーンが想定されます。
https://pansetech.net/network-config/
ポリシーの設定にもよりますが、一般的には同じゾーン内ではポリシーを許可し、異なるゾーンの場合にポリシー制御をします。
設定は、NETWORK > Zone から行います。タイプは「レイヤ3」が一般的でしょう。
(3)インターフェースの確認
NETWORK > Interfaces から設定および確認をする
ethernet1/1がWANに、ethernet1/2がLANに割り当てられていることが確認できると思います。AWSの場合、固定ではなくDHCPでIPアドレスが割り当てられるので、「IP ADDRESS」の欄は「Dynamic-DHCP Client」です。
設定方法は以下を参照。
https://pansetech.net/network-config/#toc2
(4)ルーティングの確認
NETWORK > 仮想ルータ から設定および確認をする
仮想とあるが、通常のルーティングを設定すると考えればいい。VRFみたいに複数のルーティングテーブルを管理できるという意味で、仮想とついてる。
https://pansetech.net/network-config/#toc3
3.NATの設定
(1)NAPTの設定
インターネットに出るには、プライベートIPアドレスとグローバルIPアドレスのNAPTが必要である。
POLICIES > NAT から設定および確認をする
NATの設定は以下を参照
https://pansetech.net/network-config/#toc4
AWSで設定したときは、「元パケット」のDestinatin Interfaceは「ehternet1/1(つまりWAN)」を指定したが、「any」のままでいい。
変換済パケットで、IPアドレスは「none」のまま。これはAWSの場合は自動でIPが割り当てられるため。
このNAT設定は、ポリシーごとに設定する必要はない。
(2)公開サーバの設定
4.ポリシー設定
POLICIES > Security から設定および確認をする。
(1)デフォルトポリシー
デフォルトでは、以下のポリシーが設定されている。消すことはできない。
NAME | ACTION | 説明 |
---|---|---|
intrazone-default | Allow | 同じゾーン内の通信を許可する。IFが違っても、同じゾーンに設定すれば許可される。 |
interzone-default | Deny | 異なるゾーン間の通信を拒否する |
以下にも記載されています。
https://pansetech.net/zone-type/#toc2
(2)内部LANのPC(サーバ)からインターネット接続のポリシーを作る
ポート番号80番で指定するなど、いくつかのやり方がある。
お勧めの方法は、アプリケーションをanyにしてサービスをservice-httpと service-httpsにすること。
ポリシー設定は、以下。
https://hirotanoblog.com/paloalto-basic-config/3980/#toc7
アクションで、AllowやDenyの設定とともに、ログの設定ができる。
ログに関しては別途。
Q.このとき、1000番ポートを使った正常なHTTP通信が来たら、PaloAltoとしては許可するのか?
A.拒否する。
application-defaultは、標準ポート(HTTPの場合は80)のみ許可し、それ以外は拒否するため。
Q2.では、1000番ポートを使ったHTTP通信を許可するには?
A.アプリケーションとして、web-browsingを許可し、サービスをAnyまたは1000番ポートを許可する。
さて、ポリシーの通信テストとしては、LANのPC(172.16.2.101)から、たとえば、以下を実行する。
#curl コマンドを使い、-IオプションでHeadだけを取得する。 curl -I https://west-sec.com
(3)内部LANのPC(サーバ)から外部へのping
アプリケーションをping にして、service をapplication-defaultにする。
(4)内部LANのPC(サーバ)から外部へのDNS
アプリケーションをdnsにしてサービスをapplication-defaultにする。他には、udp/53を明示的に許可する方法もある。
通信テストとしては、たとえば、以下
#digコマンドを使い、応答があるかをテストする。 $ dig www.yahoo.co.jp ; <<>> DiG 9.16.38-RH <<>> www.yahoo.co.jp ;; global options: +cmd ;; Got answer:
5.セキュリティ設定
以下に詳しい説明があります。
https://pansetech.net/content-id/#toc2
前提として、最近の攻撃はHTTPSで行われるので、SSL復号が必要。DNSやSNI情報などで、FQDNベースでのURLフィルタは可能であろう。
(1)セキュリティプロファイル
・OBJECTS > Security Profiles > Antivirus で、defaultの設定が確認できる。新規にプロファイルを作成することも可能。
・「事前定義済み」を活用するのも有効。ただ、これは変更ができないので、コピーして利用するといい。
・「追加」、または「コピー」ボタンで作成する。
・セキュリティポリシーのルールに、プロファイルを割り当てる。具体的には、「セキュリティポリシールール」にて、AVやIPSなどのそれぞれで、プロファイルを割り当てる。
・セキュリティプロファイルが複数になると設定が複雑になるので、セキュリティプロファイルグループとしてグループ化しておくと便利。
(2)IPS/脆弱性防御
・シグネチャは毎週更新される
・誤検知の可能性もあるので、アクションとして、デフォルト、許可、Alert ドロップ、クライアントのリセット、サーバのリセット、両方のリエット、ブロックIPがある。
・デフォルトは、5段階の重大度(critical,high,medium,low,information)に応じて、PaloAltoがドロップやAlertなどを設定する。
・ブロックIPは、送信元と宛先IPの組み合わせで、一定時間(調整可能)をブロックする。
・シグネチャ単位で、個別の脅威に対して例外設定もできる。
・アドバンスドThreat Prevention。クラウドと連携して、脅威防御を高める。内容としては、C&Cサーバ通信の防御などが強化されている。設定は、インラインクラウド解析タブで設定する。
(3)アンチウイルス(AntiVirus)
・メールの添付ファイルやダウンロードするファイルなど、「ファイル」を検査する。「通信」を検査するIPSとの大きな違いがここ。
・WildFireは、ファイルとメール本文のURLリンクを検査する。
・WileFireにUploadするのを情報漏えいの観点から嫌がるパターンもある。外から中、中から外など
・実行型ファイルのみであれば、無償ライセンスであっても検査のみはできる。(ブロックはしてくれない)
(4)AntiVirusやURLフィルタリングの設定方法
たとえばAntiVirusやURLフィルタリングを設定する。
①ポリシー一覧から
その方法は、ポリシーにおいて、Profileから設定する。
Profilesのポップアップが出るので、AntivirusのプロファイルやURL Filteringのプロファイルを選択する。
とりあえず、defalutでもいいと思います。
②ポリシーの詳細から
ActionsのProfile Settingからプロファイルを選択します。
③通信テスト
たとえば、以下のように、eicarファイルを取得する。
curl -O http://ctf.liblo.jp/eicar_com.zip
(5)URLフィルタリング
・設定は、セキュリティプロファイルのURLフィルタリングから
・プロファイルを作成しよう
・アクション
Allow(許可/ログ無)、Alert、Block(ブロック)、Continue(警告表示し、アクセス禁止)、override(警告し、パスワード入力でアクセス許可)
・URLフィルタリングの設定
コンテナページのみロギングをチェック(デフォルト)があると、ログが多すぎることが無いのでいいだろう。
・ログの見方。ACCでは、デフォルトでURLフィルタのタブが無いので、上記の+からタブを増やしておくといいだろう。または、Moniterから確認する。
(6)DNSセキュリティ
・単にFQDNによるフィルタリングだけではなく、DNSトンネリングなど、DNSを使った攻撃も防げる
・DoH(DNS over HTTPS)やDoT(DNS over TLS)によって、SNIによるURLフィルタリングができなくなります。TLS1.3によるハンドシェークが最初から暗号化されるため。
→DoHやDoTをさせな設定(フィルタリングでブロック)をすることも選択肢。
・URLフィルタリングとDNSセキュリティのどちらかでいいのでは?
→両方いれるのがセキュリティには望ましいが・・・
DNSセキュリティならではというと、HTTP以外によるC2Cサーバへの通信もブロックできる。※もともと、FWポリシーで止めている可能性もあるけど。
DNSセキュリティは、あくまでもFQDNまでなので、URLフィルタに劣ると思う。
(7)アンチスパイウェア
・従来のアンチスパイウェア対策とは異なる。スパイウェアもウイルスの一種なのであるが、マルウェア感染後の、C&Cサーバなどへの通信を検知する。
6.ログの取得と確認
ACCのタブで、概要を確認できる。GUIなで見えるので全体像を確認しやすい。
ネットワークアクティビティや脅威アクティビティなどのタブで切り替える。
(1)ログ取得の設定
ポリシーで設定する。デフォルトでは、Log at Session Endのログを取る。これだとセッションテーブルが消えるまで表示されるまで、ログがあがってこない。
そこで、LogSettingでLog at Session Startにすると、開始時に見える。だが、開始時だけなので、取得できるログが少ない。
リアルタイムで見るには、MONITOR>Sesssion Browser みることができる。
(2)通信ログの確認
MONITOR > Logs > Traffic
(3)セキュリティログの確認
・MONITOR > Logs > Threatに検知したログが表示される。
・詳細を確認するには、クリックではない。クリックすると、フィルタの条件に追加されるだけ。マウスを合わせて、例外という操作で確認ができる。ここで、特定のIPだけこのシグネチャを除外したいなどもできる。または、先頭にある虫眼鏡マークをクリックする。