To provide an image to be used when a link to your site is posted on Twitter or Facebook you can to use special meta tags.

Example rom the fly.pieter.com website
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:url" content="https://fly.pieter.com/">
<meta property="og:title" content="fly.pieter.com">
<meta property="og:description" content="A fun free-to-play MMO flight sim, made with AI. Fly and dogfight with your friends online.">
<meta property="og:image" content="http://fly.pieter.com/assets/fly_social_image.png?1234">

<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="https://fly.pieter.com/">
<meta property="twitter:title" content="fly.pieter.com">
<meta property="twitter:description" content="A fun free-to-play MMO flight sim, made with AI. Fly and dogfight with your friends online.">
<meta property="twitter:image" content="http://fly.pieter.com/assets/fly_social_image.png?1234">

<link rel="icon" type="image/png" href="https://fly.pieter.com/assets/fly_emoji.png">
<!-- Hide iOS Share popup -->
<meta name="apple-mobile-web-app-capable" content="yes">