Green’s Dictionary of Slang

tough guy n.

[tough adj. (3)/tough adj. (2) + guy n.2 (1)]

1. [1920s+] (orig. US, also tough monkey) a thug.

2. [1930s+] someone who cannot easily be checked or thwarted.