As with most other tactical questions, the use of the term "best" is not particularly appropriate. There are probably multiple approaches, one of which would be more appropriate to your needs than others. In other situations, though, a different approach could be more appropriate. It is situational and somewhat personal preference as well.
How often do you plan to back up the tables? Why does it need to be done from within Access? Those could be important factors in the most efficient approach.
I assume there are multiple tables in a relational database application, of course. Most hosts offer the ability to backup your SQL databases, although they may have a charge for that. One option that would be simpler, I think, would be to create a blank accdb, link it to the tables in the SQL Server database, and then convert the linked tables to local tables in the accdb as a backup. I suspect that would be faster than creating temp tables via queries, but only testing would verify that. You might even be able to automate that in VBA if this has to be done frequently.