Pre-departure Covid-19 testing will be required for everyone travelling to the UK from 04:00 GMT on Friday.
People arriving by plane, train or boat, including UK nationals, will have to take a test up to 72 hours before leaving the country they are in.
All those arriving from places not on the government's travel corridor list must still self-isolate for 10 days.
There are issues with testing availability and capacity, so some countries will initially be exempt.
For instance, the requirement will not apply to travellers from St Lucia, Barbados, Antigua and Barbuda for six days.
Travellers from Falkland Islands, Ascension Islands and St Helena are exempted permanently.
Hauliers are exempt to allow the free flow of freight, as are air, international rail and maritime crew.
The government said all forms of PCR test would be accepted, as would other forms of test "with 97% sensitivity and 99% specificity".
The announcement comes after a further 529 deaths within 28 days of a positive test were reported in the UK on Monday. There were also 46,169 cases reported.
More than 32,000 people are currently in hospital with coronavirus, data shows.
Also on Monday, Chancellor Rishi Sunak told MPs the UK economy would "get worse before it gets better" as the country battles the pandemic.
He said the new national restrictions were necessary to control the spread of coronavirus, but they would have a further significant economic impact.