@ -16,6 +16,8 @@ As opposed to the MAC address which is sent out with each packet also between ed
A somewhat hurdling network sniffing attack aimed at observing the authentication ID could break this scheme. Thus, further development towards a more sophisticated crypto-based authentication scheme is intended.
In case of edges unexpectedly shutting down with no opportunity for a clean exit, this auth scheme prevents re-connection to the supernode until it internally is removed from the list (after some 90 seconds or so). Although `-M` command line option at the supernode can disable authentication ID comparison to circumvent this situation, usage of user / password based authentication scheme is highly recommended instead.
### User / Password Based Authentication
A more advanced scheme relies on username and especially password. Public key cryptography, namely Curve25519, ensures safety. Basically, the password along with the mixed in user name, serve as private key. The corresponding public key is generated by the `tools/n2n-keygen` utility. The such generated public key gets depoisted at the supernode.
@ -778,6 +786,10 @@ int main (int argc, char * const argv[]) {
traceEvent(TRACE_WARNING,"Using default federation name. FOR TESTING ONLY, usage of a custom federation name (-F) is highly recommended!");
}
if(sss_node.override_spoofing_protection){
traceEvent(TRACE_WARNING,"Disabled MAC and IP address spoofing protection. FOR TESTING ONLY, usage of user-password authentication (-I, -J, -P) recommended instead!");
}
// generate shared secrets for user authentication; can be done only after
// federation name is known (-F) and community list completely read (-c)
traceEvent(TRACE_INFO,"started shared secrets calculation for edge authentication");
@ -796,7 +808,6 @@ int main (int argc, char * const argv[]) {
}
traceEvent(TRACE_NORMAL,"calculated shared secrets for edge authentication");
traceEvent(TRACE_DEBUG,"traceLevel is %d",getTraceLevel());