Brown the sausage. Heat a large pot over medium-high. Add sausage and break it into small pieces.
Cook until browned with crispy edges, about 6–8 minutes. Transfer to a plate, leaving 1–2 tablespoons of fat in the pot. If the pot is dry, add a splash of olive oil.
Sweat the aromatics. Add onion, carrot, and celery with a pinch of salt.
Cook 5–7 minutes, stirring, until softened and lightly golden. Add garlic and cook 30 seconds until fragrant.
Deglaze. Stir in a ladle of broth and scrape up browned bits from the bottom of the pot—this adds deep flavor.
Build the broth. Return sausage to the pot. Add crushed tomatoes, remaining chicken broth, Italian seasoning, red pepper flakes (if using), bay leaf, and the Parmesan rind.
Stir and bring to a gentle boil.
Simmer. Reduce heat to medium-low and simmer 15–20 minutes to marry the flavors. Taste and adjust seasoning with salt and pepper.
Add beans and greens. Stir in cannellini beans and kale (or spinach). If using kale, simmer 8–10 minutes until tender.
If using spinach, cook 2–3 minutes until just wilted.
Finish and serve. Remove bay leaf and Parmesan rind. Stir in chopped parsley. Ladle into bowls and top with freshly grated Parmesan and a crack of black pepper.
Serve with crusty bread.