Don't overcomplicate this. The motor is good for 4.2 amps. Set the driver to give it 3.8 amps which is the closest you can go without going past the motor rating. 48 volts will be fine. I've driven similar motors at 90 volts. CNC does not drive motors at peak load for long periods.
Look at the motor's full data sheet
www.omc-stepperonline.com/download/23HS45-4204S.pdf
The insulation is rated for 130 deg C so don't let it get hot enough for it to melt as that will destroy your drive.
The maximum temperature rise permissable is 80 deg C. Add that to 30 deg ambient temp (heck its been up to 39 degrees C here the last week or so). So 80+30 = 110 deg C which is hot enough to burn you but not melt the insulation. If the motor misses steps and it will only do that if it gets too hot (it will then let you know that its missing steps in a spectacular way).
If the drivers have a fault output, connect it to joint.N.fault-in. This will trigger if the motor gets too hot and stop Linuxcnc
If the drive misses steps or faults, reduce the curent to the next lower setting.
Don't be concerned about lowering the current if you need to. The actual current required for a given application may be well below the rated current if you do do a full design. eg one of my 2 amp motors only needs 1 amp to achieve 60 m/min rapids and > 5 m/sec/sec acceleration (tested to 8 m/sec/sec)
Typically, the Chinese drivers are rated based on peak voltage. Some Drivers (eg Lam Technologies) are rated for RMS so a 6 amp driver of theirs will give 6 amp RMS, enough to melt the average Chinese motor. So a 4.2 amp motor is probably run at 2-3 amps with Lam. This is why Tommy suggests a more conservative approach than me!
Ignore all other advice you have been given by others and just do it!