You can receive your Social Security check outside of the US directly to a foreign bank account. However, there is some paperwork that is required to do this. It's easier to have your Social Security check deposited into a US bank account and just access that money through a debit card.
There is absolutely no US law that states that if you're living outside of the United States, you're not entitled to Social Security anymore. If you're entitled to Social Security, where you're living is completely irrelevant because you paid into the system.
A lot of expats who continue to work for US companies but live abroad still pay into the Social Security system even while living abroad. They may be able to avoid income taxes, but they'd be paying into Social Security. For self-employed expats, they're basically the employer as well as the employee, so they pay both sides of Social Security taxes—as an employer, and as an employee.
(Castillo de San Felipe, Rio Dulce, Guatemala, pictured.)