It is a follow-up to
JENKINS-48766. That story adds warnings for unsupported agent versions, but it actually does not reject them. It would be useful to have such feature in the core or in Version Column Plugin. Core is preferable though this feature may be detached to a plugin later as a part of JENKINS-44100.
- There is a Global Configuration entry for Remoting. An existing section for Remoting protocols may be used
- There is a checkbox in the configuration, which turns on rejection of unsupported versions
- SlaveComputer#setChannel() checks the option status. Depending on it, it may either accept or reject the connection
- Nice2have: Automatic test which confirms that the flag survives restarts
- Nice2have: Automatic test which picks unsupported version of Remoting and confirms that it cannot connect. See examples in https://github.com/jenkinsci/jenkins/blob/master/test/src/test/java/jenkins/slaves/OldRemotingAgentTest.java