To put a lock on a site collection in SharePoint 2013, and keep the site collection in the read only mode, issue the following PowerShell command.
Lock
Set-SPSite -Identity http://mysite/sites -LockState "Readonly"
To Unlock
Set-SPSite -Identity http://mysite/sites -LockState "Unlock"