Rigidbody can use built-in gravity through Use Gravity.

Custom Rigidbody gravity:

rb.AddForce(
    Physics.gravity * gravityMultiplier,
    ForceMode.Acceleration
);

CharacterController gravity:

verticalVelocity +=
    gravity * Time.deltaTime;

Keep the controller grounded:

if (controller.isGrounded &&
    verticalVelocity < 0f)
{
    verticalVelocity = -2f;
}