You can achieve this in various ways. I prefer to give the editor as little rope to hang themselves as possible, or rather as little room to break the site and layout as possible.
To do this I would create 2 custom fields, one for the main image and one for the thumbnail image. I would set an upload location and would define the thumbnail size, the reason is you can then force the thumbnail to be that size by declaring it in your html and preventing the layout breaking if the user uploads an incorrect size, etc.
Then, EE allows you to populate the file to a template either using a single tag, which will display a full image tag and not be what you’re after, or you can use a tag pair, and use the parts of the file properties you want.
Okay, so assuming our 2 custom image fields are main_image and thumbnail_image and we want to create html that will render like this:
<a href="/image_uploads/image_1.jpg" rel="lightbox">/image_uploads/thumbnail_1.jpg</a>
We could simply replace the filenames with our filename property using the tag pairs as follows:
<a href="/image_uploads/{main_image}{filename}.{extension}{/main_image}" rel="lightbox">/image_uploads/{thumbnail_image}{filename}.{extension}{/thumbnail_image}</a>
And you’re done.
You can read about file tag pairs here.