Unity Version 2021.3.11f1(LTS)
すり抜ける原因
RigidbodyやColliderを、設定してるのに、オブジェクトがすり抜けてしまう時は、
オブジェクトの移動速度が速すぎることが原因の場合が多いです。
RigidBodyのCollisionDetectionを変更する

RigidbodyのCollisionDetectionがデフォルトでは、Discreteとなっています。
基本的には、デフォルトのDiscreteで大丈夫ですが、移動速度の速いオブジェクトを扱う時には、
以下の3つの設定が有効です。
オブジェクトの状況に応じて、以下の3つの設定から適したものを選びます。
Continuous
Continuousは、
・衝突する対象にRigidbodyがない設定されていないとき(Colliderのみ設定されている)
・衝突する対象が動いていないとき
以上の条件の時にContinuousを使用します。
ContinuousDynamic
ContinuousDynamicは、
・どちらも動くオブジェクトのとき
・移動速度がめちゃくちゃ速い時
以上の条件の時にContinuousDynamicを使用します。
ContinuousSpeculative
ContinuousSpeculativeは、
・どちらも動くオブジェクトのとき
・移動速度がめちゃくちゃ速い時
・ContinuousDynamicだとゲームが重たくなってしまう時
※当たり判定が反応しない場合がある
以上の条件の時にContinuousDynamicを使用します。
Rigidbody2Dの場合

Rigidbody2Dの場合は、設定がContinuousのみしかありませんが、
十分すり抜けなくなるので、問題ありません!
おすすめ書籍
「まずは、わかりやすい本で勉強したい!」という方におすすめの書籍です!
初心者にもやさしい説明と、イラストでUnityの使い方やゲームの開発の流れを学ぶことが出来ます!
今回紹介した、Rigidbodyの使い方も、わかりやすく紹介されています。
気になる方は、是非チェックしてみて下さい!
お疲れさまでした!