Если у вас нет своего dns-сервера и ваши домены обслуживает кто-то другой - попросить сделать это у админов этого кого-то, или поколупаться в админке хостинга.
Еще уточню, а безопасно ли это, что я сделал: я добавил domain.com на сервер1, там же создал shop.domain.com и в DNS Records указала IP сервер2, домен работает, но меня тревожит, правильно ли так делать? есть ли другие варианты?
Разумеется, если ваш сервер доступен напрямую по отдельному IP, то на нём нужно озаботиться темиже аспектами безопасности что и на любом другом публичном IP. Файрволы там, и прочие fail2banы.
Как возможный вариант - обеспечивать безопасность на рутере между интернетом и всеми вашими IP. Но скорее всего это на уровне провайдера.
Как другой вариант - оставить второй сервер со внутренним/локальным ip (в зоне "DMZ"), привязать оба IP к основному серверу, и форвардить запросы внутрь DMZ. Тогда вся безопасность на одном сервее, но файрволы нужно переконфигурять на дополнительный IP и форвардинг.
Как обычный вариант - привязать оба домена на один и тотже IP (через DNS-запись CNAME), а запросы на поддомен проксировать средствами веб-сервера (они будут различаться http-заголовком Host). Тогда вся безопасность на одном сервере и одном ip.