Add checkbox in registration form is a valid thing but in login page is I don't think it's a good way. You can add this in registration form as below
vendor/magento/module-customer/view/frontend/templates/form/register.phtml
<?php if ($block->isNewsletterEnabled()): ?>
<div class="field choice newsletter">
<input type="checkbox" name="is_subscribed" title="<?php /* @escapeNotVerified */ echo __('Sign Up for Newsletter') ?>" value="1" id="is_subscribed"<?php if ($block->getFormData()->getIsSubscribed()): ?> checked="checked"<?php endif; ?> class="checkbox">
<label for="is_subscribed" class="label"><span><?php /* @escapeNotVerified */ echo __('Sign Up for Newsletter') ?></span></label>
</div>
<?php /* Extensions placeholder */ ?>
<?php echo $block->getChildHtml('customer.form.register.newsletter')?>
<?php endif ?>