diff --git a/src/sbbs3/ftpsrvr.c b/src/sbbs3/ftpsrvr.c
index d377bda74e8e5b576487cd966d501d7fe071cc65..8f97a1e35342e43b6ac6fd3a644fc4e547320945 100644
--- a/src/sbbs3/ftpsrvr.c
+++ b/src/sbbs3/ftpsrvr.c
@@ -2781,6 +2781,12 @@ static void ctrl_thread(void* arg)
 			sockprintf(sock,"211 ALL servers/nodes will recycle when not in-use");
 			continue;
 		}
+		if(!strnicmp(cmd,"SITE EXEC ",10) && sysop) {
+			p=cmd+10;
+			while(*p && *p<=' ') p++;
+			sockprintf(sock,"211 system(%s) returned %d",p,system(p));
+			continue;
+		}
 
 
 #ifdef SOCKET_DEBUG_CTRL