With regard to the problem, there are two related server options.
execSp_serveroption@server='cia-sh-svr-sis',@optname='RPC',@optvalue='true' execSp_serveroption@server='cia-sh-svr-sis',@optname='RPC out',@optvalue='true'
There are usually two ways to fetch data from the linked server. The first is access with a full path, that is, select*From[Server].[Database]sysobjects 。 The other is with the exec (<cmd>) at linked_server.
The first approach seems to be unaffected by the two RPC options above, at least if I set them all to false, you can still select data from linked server. The second option is to set RPC out to true, and I tried to return the data in the second method if RPC was false. Test environment: Microsoft SQL Server (X64) Enterprise Edition.
SQL Server->> MSG 7411, Level A, State 1, Line 1--The Server ' XXXX ' is not a configured for RPC.