The 28-year-old was released by the Eagles at the end of the 2021-22 season after six years.
Injuries meant he made just 41 league appearances during his time at Selhurst Park and his last competitive football came during a loan spell with Sheffield Wednesday in July 2020.
He could make his Preston debut at Sheffield United on Tuesday.
Boss Frankie McAvoy told the club website:
"We're delighted. He's worked really hard since we got him in.
"It's going to take a wee bit of time to be honest, but what we've done is we've been fair and honest with him through the process and I'm now happy to add him to the squad."
Need a VPN? Or seeking to switch? Then support Tribal Football by clicking here to sign up with our official partners NordVPN. Not only will you receive the best VPN experience, but also great discounts by signing up via Tribal Football. Thanks for your support!