sample-config-advanced.json 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700
  1. {
  2. "$schema": "https://raw.githubusercontent.com/Ylianst/MeshCentral/master/meshcentral-config-schema.json",
  3. "__comment__": "This is a sample advanced configuration file, all values and sections that start with underscore (_) are ignored. Edit a section and remove the _ in front of the name. Refer to the user's guide for details.",
  4. "settings": {
  5. "cert": "desk.beyhan.gen.tr",
  6. "_SQLite3": true,
  7. "_acebase": { "_sponsor": true },
  8. "_mongoDb": "mongodb://127.0.0.1:27017",
  9. "_mongoDbName": "meshcentral",
  10. "_mongoDbChangeStream": true,
  11. "_mongoDbBulkOperations": true,
  12. "_WANonly": true,
  13. "_LANonly": true,
  14. "_maintenanceMode": true,
  15. "_certificatePrivateKeyPassword": [ "password1", "password2" ],
  16. "_sessionTime": 60,
  17. "_sessionKey": "MyReallySecretPassword1",
  18. "_sessionSameSite": "strict",
  19. "_dbEncryptKey": "MyReallySecretPassword2",
  20. "_dbRecordsEncryptKey": "MyReallySecretPassword",
  21. "_dbRecordsDecryptKey": "MyReallySecretPassword",
  22. "__dbExpire": "Amount of time to keep various events in the database, in seconds. Below are the default values.",
  23. "_dbExpire": {
  24. "events": 1728000,
  25. "powerevents": 864000,
  26. "statsevents": 2592000
  27. },
  28. "port": 443,
  29. "_portBind": "127.0.0.1",
  30. "_aliasPort": 444,
  31. "_redirPort": 80,
  32. "_redirPortBind": "127.0.0.1",
  33. "_redirAliasPort": 80,
  34. "_relayPort": 453,
  35. "_relayAliasPort": 463,
  36. "_relayDNS": "relay.desk.beyhan.gen.tr",
  37. "_agentPort": 1234,
  38. "_agentPortBind": "127.0.0.1",
  39. "_agentAliasPort": 1234,
  40. "_agentAliasDNS": "agents.desk.beyhan.gen.tr",
  41. "_agentPortTls": false,
  42. "_agentLogDump": true,
  43. "_agentCoreDump": true,
  44. "_agentCoreDumpUsers": "user1,user2",
  45. "_agentSignLock": true,
  46. "_agentTimeStampServer": "http://timestamp.digicert.com",
  47. "_agentTimeStampProxy": "http://1.2.3.4:80",
  48. "_ignoreAgentHashCheck": true,
  49. "_exactPorts": true,
  50. "_allowLoginToken": true,
  51. "_StrictTransportSecurity": true,
  52. "_allowFraming": true,
  53. "_cookieIpCheck": false,
  54. "_cookieEncoding": "hex",
  55. "_webRTC": false,
  56. "_nice404": false,
  57. "_selfUpdate": true,
  58. "_cleanNpmCacheOnUpdate": true,
  59. "_browserPing": 60,
  60. "_browserPong": 60,
  61. "_agentsInRam": false,
  62. "_agentPing": 60,
  63. "_agentPong": 60,
  64. "_orphanAgentUser": "admin",
  65. "_agentIdleTimeout": 150,
  66. "_webPageLengthRandomization": false,
  67. "_compression": true,
  68. "_wsCompression": true,
  69. "_agentWsCompression": true,
  70. "_noAgentUpdate": 1,
  71. "_agentUpdateSystem": 1,
  72. "_temporaryAgentUpdate": false,
  73. "_amtScanner": false,
  74. "_meshScanner": false,
  75. "_meshErrorLogPath": "c:\\tmp",
  76. "_npmPath": "c:\\npm.exe",
  77. "_npmProxy": "http://1.2.3.4:80",
  78. "_allowHighQualityDesktop": true,
  79. "_webPush": { "email": "[email protected]" },
  80. "_publicPushNotifications": true,
  81. "_desktopMultiplex": true,
  82. "_ipBlockedUserRedirect": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  83. "_userAllowedIP": "127.0.0.1,192.168.1.0/24",
  84. "_userBlockedIP": "127.0.0.1,::1,192.168.0.100",
  85. "_agentAllowedIP": "192.168.0.100/24",
  86. "_agentBlockedIP": "127.0.0.1,::1",
  87. "_authLog": "c:\\temp\\auth.log",
  88. "_InterUserMessaging": [ "user//admin" ],
  89. "_manageAllDeviceGroups": [ "user//admin" ],
  90. "_manageCrossDomain": [ "user//admin" ],
  91. "_localDiscovery": {
  92. "name": "Local server name",
  93. "info": "Information about this server"
  94. },
  95. "_tlsOffload": "127.0.0.1,::1",
  96. "_trustedProxy": "127.0.0.1,::1",
  97. "_mpsPort": 44330,
  98. "_mpsPortBind": "127.0.0.1",
  99. "_mpsAliasPort": 4433,
  100. "_mpsAliasHost": "mps.mydomain.com",
  101. "_mpsTlsOffload": true,
  102. "_mpsHighSecurity": true,
  103. "_no2FactorAuth": true,
  104. "_lockAgentDownload": true,
  105. "_runOnServerStarted": "c:\\tmp\\mcstart.bat",
  106. "_runOnServerUpdated": "c:\\tmp\\mcupdate.bat",
  107. "_runOnServerError": "c:\\tmp\\mcerror.bat",
  108. "_log": "main,web,webrequest,cert",
  109. "_debug": "main,web,webrequest,cert",
  110. "_syslog": "meshcentral",
  111. "_syslogauth": "meshcentral-auth",
  112. "_syslogjson": "meshcentral-json",
  113. "_syslogtcp": "localhost:514",
  114. "_webrtcConfig": {
  115. "iceServers": [
  116. { "urls": "stun:stun.cloudflare.com:3478" },
  117. { "urls": "stun:stun.l.google.com:19302" }
  118. ]
  119. },
  120. "_autoBackup": {
  121. "_mongoDumpPath": "C:\\Program Files\\MongoDB\\Server\\4.2\\bin\\mongodump.exe",
  122. "_backupIntervalHours": 24,
  123. "_keepLastDaysBackup": 10,
  124. "_zipPassword": "MyReallySecretPassword3",
  125. "_backupPath": "C:\\backups",
  126. "_googleDrive": {
  127. "folderName": "MeshCentral-Backups",
  128. "maxFiles": 10
  129. },
  130. "_webdav": {
  131. "url": "https://server/remote.php/dav/files/[email protected]/",
  132. "username": "user",
  133. "password": "pass",
  134. "folderName": "MeshCentral-Backups",
  135. "maxFiles": 10
  136. },
  137. "_s3": {
  138. "accessKey": "MYLONGACCESSKEY",
  139. "secretKey": "MYLONGSECRETKEY",
  140. "endpoint": "myS3.myserver.com",
  141. "port": 9000,
  142. "ssl": false,
  143. "bucketName": "test",
  144. "folderName": "MeshCentral-Backups",
  145. "maxfiles": 10
  146. }
  147. },
  148. "_redirects": {
  149. "meshcommander": "https://www.meshcommander.com/"
  150. },
  151. "__maxInvalidLogin": "Time in minutes, max amount of bad logins from a source IP in the time before logins are rejected.",
  152. "_maxInvalidLogin": {
  153. "time": 10,
  154. "count": 10,
  155. "coolofftime": 10
  156. },
  157. "__maxInvalid2fa": "Time in minutes, max amount of bad two-factor authentication from a source IP in the time before 2FA's are rejected.",
  158. "_maxInvalid2fa": {
  159. "time": 10,
  160. "count": 10,
  161. "coolofftime": 10
  162. },
  163. "_watchDog": {
  164. "interval": 100,
  165. "timeout": 400
  166. },
  167. "_AmtProvisioningServer": {
  168. "port": 9971,
  169. "deviceGroup": "mesh//xxxxxxxxxxxxxxxxxxxxx",
  170. "newMebxPassword": "amtpassword",
  171. "trustedFqdn": "sample.com",
  172. "ip": "192.168.1.1"
  173. },
  174. "_crowdsec": {
  175. "url": "http://localhost:8080",
  176. "apiKey": "BOUNCER_API_KEY"
  177. },
  178. "_plugins": { "enabled": true }
  179. },
  180. "_domaindefaults": {
  181. "__comment__": "Any settings in this section is used as default setting for all domains",
  182. "_title": "MyDefaultTitle",
  183. "_footer": "Default page footer",
  184. "_newAccounts": false
  185. },
  186. "domains": {
  187. "": {
  188. "_siteStyle": 2,
  189. "_showModernUIToggle": true,
  190. "_title": "MyServer",
  191. "_title2": "Servername",
  192. "_titlePicture": "title-sample.png",
  193. "_loginPicture": "title-sample.png",
  194. "_pwaLogo": "title-sample.png",
  195. "_rootRedirect": "https://www.youtube.com/watch?v=Gs069dndIYk",
  196. "_mobileSite": false,
  197. "_maxDeviceView": 1000,
  198. "_unknownUserRootRedirect": "https://www.youtube.com/watch?v=2Q_ZzBGPdqE",
  199. "_nightMode": 1,
  200. "_scrollToTop": true,
  201. "_userQuota": 1048576,
  202. "_meshQuota": 248576,
  203. "_loginKey": [ "abc", "123" ],
  204. "_agentKey": [ "abc", "123" ],
  205. "_ipkvm": false,
  206. "_minify": true,
  207. "_hidePowerTimeline": true,
  208. "_showNotesPanel": true,
  209. "_collapseGroups": true,
  210. "_userSessionsSort": "Username",
  211. "_newAccounts": true,
  212. "_newAccountsUserGroups": [ "ugrp//xxxxxxxxxxxxxxxxx" ],
  213. "_manageAllDeviceGroups": [ "admin" ],
  214. "_userNameIsEmail": true,
  215. "_newAccountEmailDomains": [ "sample.com" ],
  216. "_newAccountsRights": [ "nonewgroups", "notools" ],
  217. "_welcomeText": "Sample Text on Login Page.",
  218. "_welcomePicture": "mainwelcome.jpg",
  219. "_welcomePictureFullScreen": false,
  220. "_meshMessengerTitle": "MeshMessenger",
  221. "_meshMessengerPicture": "messenger.png",
  222. "___hide__": "Sum of: 1 = Hide header, 2 = Hide tab, 4 = Hide footer, 8 = Hide title, 16 = Hide left bar, 32 = Hide back buttons",
  223. "_hide": 4,
  224. "_footer": "<a href='https://twitter.com/mytwitter'>Twitter</a>",
  225. "_loginfooter": "This is a private server.",
  226. "_allowSavingDeviceCredentials": false,
  227. "_guestDeviceSharing": false,
  228. "_AutoRemoveInactiveDevices": 37,
  229. "_DeviceSearchBarServerAndClientName": false,
  230. "_agentSelfGuestSharing": {
  231. "expire": 120
  232. },
  233. "_certUrl": "https://192.168.2.106:443/",
  234. "_altMessenging": [
  235. {
  236. "name": "Jitsi",
  237. "url": "https://meet.jit.si/myserver-{0}",
  238. "localurl": "https://meet.jit.si/myserver-local-{0}",
  239. "type": "device"
  240. },
  241. {
  242. "name": "Jitsi",
  243. "url": "https://meet.jit.si/myserver-{0}-{1}-{2}-{3}",
  244. "localurl": "https://meet.jit.si/myserver-local-{0}-{1}-{2}-{3}",
  245. "type": "user"
  246. }
  247. ],
  248. "_deviceMeshRouterLinks": {
  249. "rdp": true,
  250. "ssh": true,
  251. "scp": true,
  252. "extralinks": [
  253. {
  254. "name": "HTTP",
  255. "protocol": "http",
  256. "port": 80,
  257. "_ip": "192.168.1.100",
  258. "_filter": [ "mesh/(domainid)/(meshid)", "node/(domainid)/(nodeid)" ]
  259. },
  260. {
  261. "name": "HTTPS",
  262. "protocol": "https",
  263. "port": 443
  264. }
  265. ]
  266. },
  267. "_assistantTypeAgentInvite": 2,
  268. "_PreconfiguredScripts": [
  269. {
  270. "name": "Run NotePad as user",
  271. "file": "scripts/notepad.bat",
  272. "type": "bat",
  273. "runas": "user"
  274. },
  275. {
  276. "name": "Run NotePad as agent",
  277. "cmd": "notepad.exe",
  278. "type": "bat",
  279. "runas": "agent"
  280. },
  281. {
  282. "name": "Run echo",
  283. "cmd": "echo \"hello world\"",
  284. "type": "sh",
  285. "runas": "agent"
  286. },
  287. {
  288. "name": "Agent Update",
  289. "cmd": "agentupdate",
  290. "type": "agent"
  291. }
  292. ],
  293. "_PreconfiguredRemoteInput": [
  294. {
  295. "name": "CompanyUrl",
  296. "value": "https://help.mycompany.com/"
  297. },
  298. {
  299. "name": "Any Text",
  300. "value": "Any text\r"
  301. },
  302. {
  303. "name": "Welcome",
  304. "value": "Default welcome text"
  305. }
  306. ],
  307. "_myServer": {
  308. "Backup": false,
  309. "Restore": false,
  310. "Upgrade": false,
  311. "ErrorLog": false,
  312. "Console": false,
  313. "Trace": false,
  314. "Config": false
  315. },
  316. "_passwordRequirements": {
  317. "min": 8,
  318. "max": 128,
  319. "upper": 1,
  320. "lower": 1,
  321. "numeric": 1,
  322. "nonalpha": 1,
  323. "reset": 90,
  324. "force2factor": true,
  325. "skip2factor": "127.0.0.1,192.168.2.0/24",
  326. "oldPasswordBan": 5,
  327. "banCommonPasswords": false,
  328. "twoFactorTimeout": 300,
  329. "duo2factor": true
  330. },
  331. "_twoFactorCookieDurationDays": 30,
  332. "_agentInviteCodes": true,
  333. "_agentNoProxy": true,
  334. "_lockAgentDownload": true,
  335. "_geoLocation": true,
  336. "_ipLocation": true,
  337. "_novnc": false,
  338. "_mstsc": false,
  339. "_ssh": true,
  340. "_WebEmailsPath": "/myserver/email-templates",
  341. "_consentMessages": {
  342. "title": "MeshCentral",
  343. "desktop": "{0} requesting remote desktop access. Grant access?",
  344. "terminal": "{0} requesting remote terminal access. Grant access?",
  345. "files": "{0} requesting remote files access. Grant access?",
  346. "consentTimeout": 30,
  347. "autoAcceptOnTimeout": false,
  348. "autoAcceptIfNoUser": false,
  349. "oldStyle": true
  350. },
  351. "_customFiles": {
  352. "desktop-theme": {
  353. "css": ["theme.css"],
  354. "js": ["theme.js"],
  355. "scope": ["all"]
  356. },
  357. "mobile-theme": {
  358. "css": ["theme.css", "test.css"],
  359. "js": ["analytics.js", "test.js"],
  360. "scope": ["login2", "login"]
  361. }
  362. },
  363. "_notificationMessages": {
  364. "title": "MeshCentral",
  365. "desktop": "{0} started a remote desktop session.",
  366. "terminal": "{0} started a remote terminal session.",
  367. "files": "{0} started a remote files session."
  368. },
  369. "_agentCustomization": {
  370. "displayName": "Company® Product™",
  371. "description": "Company® Product™ agent for remote monitoring, management and assistance.",
  372. "companyName": "Company®",
  373. "serviceName": "companyagent",
  374. "image": "agent-logo.png",
  375. "fileName": "compagnyagent"
  376. },
  377. "_agentFileInfo": {
  378. "icon": "agent.ico",
  379. "filedescription": "sample_filedescription",
  380. "fileversion": "0.1.2.3",
  381. "internalname": "sample_internalname",
  382. "legalcopyright": "sample_legalcopyright",
  383. "originalfilename": "sample_originalfilename",
  384. "productname": "sample_productname",
  385. "productversion": "v0.1.2.3"
  386. },
  387. "_assistantCustomization": {
  388. "title": "Company® Product™",
  389. "image": "assistant-logo.png",
  390. "fileName": "compagny"
  391. },
  392. "_androidCustomization": {
  393. "title": "Company® Product™",
  394. "subtitle": "Product Subtitle™",
  395. "image": "assistant-logo.png"
  396. },
  397. "_userAllowedIP": "127.0.0.1,192.168.1.0/24",
  398. "_userBlockedIP": "127.0.0.1,::1,192.168.0.100",
  399. "_agentAllowedIP": "192.168.0.100/24",
  400. "_agentBlockedIP": "127.0.0.1,::1",
  401. "___userSessionIdleTimeout__": "Number of user idle minutes before auto-disconnect",
  402. "_userSessionIdleTimeout": 30,
  403. "___logoutOnIdleSessionTimeout": "Determines whether MeshCentral should logout after the session idle timeout elapsed or should just disconnect remote desktop, terminal and files.",
  404. "_logoutOnIdleSessionTimeout": false,
  405. "_userConsentFlags": {
  406. "desktopnotify": true,
  407. "terminalnotify": true,
  408. "filenotify": true,
  409. "desktopprompt": true,
  410. "terminalprompt": true,
  411. "fileprompt": true,
  412. "desktopprivacybar": true
  413. },
  414. "_urlSwitching": false,
  415. "_desktopPrivacyBarText": "Privacy bar: {0}, {1}",
  416. "_limits": {
  417. "_maxDevices": 100,
  418. "_maxUserAccounts": 100,
  419. "_maxUserSessions": 100,
  420. "_maxAgentSessions": 100,
  421. "maxSingleUserSessions": 10
  422. },
  423. "_terminal": {
  424. "_linuxshell": "login",
  425. "launchCommand": {
  426. "linux": "clear\necho \"Hello Linux\"\n",
  427. "darwin": "clear\necho \"Hello MacOS\"\n",
  428. "freebsd": "clear\necho \"Hello FreeBSD\"\n"
  429. }
  430. },
  431. "_amtScanOptions": [
  432. "LabNetwork 192.168.15.0/23",
  433. "SalesNetwork 192.168.8.0/24"
  434. ],
  435. "_amtAcmActivation": {
  436. "log": "amtactivation.log",
  437. "strictCommonName": false,
  438. "certs": {
  439. "mycertname": {
  440. "certfiles": [
  441. "amtacm-leafcert.crt",
  442. "amtacm-intermediate1.crt",
  443. "amtacm-intermediate2.crt",
  444. "amtacm-rootcert.crt"
  445. ],
  446. "keyfile": "amtacm-leafcert.key"
  447. }
  448. }
  449. },
  450. "_amtManager": {
  451. "adminAccounts": [
  452. {
  453. "user": "admin",
  454. "pass": "MyP@ssw0rd"
  455. }
  456. ],
  457. "environmentDetection": [
  458. "domain1.com",
  459. "domain2.com",
  460. "domain3.com",
  461. "domain4.com"
  462. ],
  463. "wifiProfiles": [
  464. {
  465. "name": "Profile1",
  466. "ssid": "MyStation1",
  467. "authentication": "wpa2-psk",
  468. "encryption": "ccmp-aes",
  469. "password": "MyP@ssw0rd"
  470. }
  471. ]
  472. },
  473. "_redirects": {
  474. "meshcommander": "https://www.meshcommander.com/"
  475. },
  476. "_duo2factor": {
  477. "integrationkey": "mykey",
  478. "secretkey": "mysecret",
  479. "apihostname": "api-xxxxxxxxxxx.duosecurity.com"
  480. },
  481. "_yubikey": {
  482. "id": "0000",
  483. "secret": "xxxxxxxxxxxxxxxxxxxxx",
  484. "_proxy": "http://myproxy.domain.com:80"
  485. },
  486. "_httpHeaders": {
  487. "Strict-Transport-Security": "max-age=360000",
  488. "x-frame-options": "SAMEORIGIN"
  489. },
  490. "_agentConfig": [ "coreDumpEnabled=1" ],
  491. "_assistantConfig": [ "disableUpdate=1" ],
  492. "_sessionRecording": {
  493. "_onlySelectedUsers": true,
  494. "_onlySelectedUserGroups": true,
  495. "_onlySelectedDeviceGroups": true,
  496. "_filepath": "C:\\temp",
  497. "_index": true,
  498. "_maxRecordings": 10,
  499. "_maxRecordingDays": 15,
  500. "_maxRecordingSizeMegabytes": 3,
  501. "__protocols__": "Is an array: 1 = Terminal, 2 = Desktop, 5 = Files, 100 = Intel AMT WSMAN, 101 = Intel AMT Redirection, 200 = Messenger",
  502. "protocols": [ 1, 2, 101 ]
  503. },
  504. "_authStrategies": {
  505. "__comment__": "This section is used to allow users to login using other accounts. You will need to get an API key from the services and register callback URL's",
  506. "twitter": {
  507. "_callbackurl": "https://server/auth-twitter-callback",
  508. "newAccounts": true,
  509. "_newAccountsUserGroups": [ "ugrp//xxxxxxxxxxxxxxxxx" ],
  510. "_newAccountsRights": [ "nonewgroups", "notools" ],
  511. "clientid": "xxxxxxxxxxxxxxxxxxxxxxx",
  512. "clientsecret": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
  513. },
  514. "google": {
  515. "_callbackurl": "https://server/auth-google-callback",
  516. "newAccounts": true,
  517. "_newAccountsUserGroups": [ "ugrp//xxxxxxxxxxxxxxxxx" ],
  518. "_newAccountsRights": [ "nonewgroups", "notools" ],
  519. "clientid": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.apps.googleusercontent.com",
  520. "clientsecret": "xxxxxxxxxxxxxxxxxxxxxxx"
  521. },
  522. "github": {
  523. "_callbackurl": "https://server/auth-github-callback",
  524. "newAccounts": true,
  525. "_newAccountsUserGroups": [ "ugrp//xxxxxxxxxxxxxxxxx" ],
  526. "_newAccountsRights": [ "nonewgroups", "notools" ],
  527. "clientid": "xxxxxxxxxxxxxxxxxxxxxxx",
  528. "clientsecret": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  529. "_authorizationurl": "https://hostname/login/oauth/authorize",
  530. "_tokenurl": "https://hostname/login/oauth/access_token",
  531. "_userprofileurl": "https://hostname/user",
  532. "_useremailurl": "https://hostname/user/emails"
  533. },
  534. "azure": {
  535. "_callbackurl": "https://server/auth-azure-callback",
  536. "newAccounts": true,
  537. "_newAccountsUserGroups": [ "ugrp//xxxxxxxxxxxxxxxxx" ],
  538. "_newAccountsRights": [ "nonewgroups", "notools" ],
  539. "clientid": "00000000-0000-0000-0000-000000000000",
  540. "clientsecret": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  541. "tenantid": "00000000-0000-0000-0000-000000000000"
  542. },
  543. "jumpcloud": {
  544. "_callbackurl": "https://server/auth-jumpcloud-callback",
  545. "newAccounts": true,
  546. "_newAccountsUserGroups": [ "ugrp//xxxxxxxxxxxxxxxxx" ],
  547. "_newAccountsRights": [ "nonewgroups", "notools" ],
  548. "entityid": "meshcentral",
  549. "idpurl": "https://sso.jumpcloud.com/saml2/saml2",
  550. "cert": "jumpcloud-saml.pem"
  551. },
  552. "saml": {
  553. "_callbackurl": "https://server/auth-saml-callback",
  554. "_disableRequestedAuthnContext": true,
  555. "newAccounts": true,
  556. "_newAccountsUserGroups": [ "ugrp//xxxxxxxxxxxxxxxxx" ],
  557. "_newAccountsRights": [ "nonewgroups", "notools" ],
  558. "entityid": "meshcentral",
  559. "idpurl": "https://server/saml2",
  560. "cert": "saml.pem"
  561. },
  562. "oidc": {
  563. "issuer": {
  564. "issuer": "https://sso.server.com",
  565. "end_session_endpoint": "https://sso.server.com/logout"
  566. },
  567. "client": {
  568. "client_id": "00000000-0000-0000-0000-000000000000",
  569. "client_secret": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
  570. },
  571. "groups": {
  572. "required": [ "groupA", "groupB", "groupC" ],
  573. "siteadmin": [ "groupA" ],
  574. "sync": {
  575. "enable": true,
  576. "filter": [ "groupB", "groupC" ]
  577. }
  578. },
  579. "newAccounts": true,
  580. "_newAccountsRights": [ "nonewgroups", "notools" ],
  581. "_newAccountsUserGroups": [ "ugrp//xxxxxxxxxxxxxxxxx" ]
  582. }
  583. }
  584. },
  585. "_customer1": {
  586. "_dns": "customer1.myserver.com",
  587. "_title": "Customer1",
  588. "_title2": "TestServer",
  589. "_newAccounts": 1,
  590. "_auth": "sspi",
  591. "__auth": "ldap",
  592. "_LDAPUserName": "gecos",
  593. "_LDAPUserKey": "uid",
  594. "_LDAPUserEmail": "otherMail",
  595. "_LDAPUserGroups": "memberOf",
  596. "_LDAPSiteAdminGroups": [ "CN=Domain Admins,CN=Users,DC=sample,DC=com" ],
  597. "_LDAPUserRequiredGroupMembership": [ "CN=Domain Admins,CN=Users,DC=sample,DC=com" ],
  598. "_LDAPSyncWithUserGroups": { "filter": [ "CN=Domain Admins" ] },
  599. "_LDAPOptions": {
  600. "URL": "ldap://1.2.3.4:389",
  601. "BindDN": "CN=svc_meshcentral,CN=Users,DC=meshcentral,DC=local",
  602. "BindCredentials": "Password.1",
  603. "SearchBase": "DC=meshcentral,DC=local",
  604. "SearchFilter": "(sAMAccountName={{username}})"
  605. },
  606. "_footer": "Test",
  607. "_certUrl": "https://192.168.2.106:443/"
  608. },
  609. "_info": {
  610. "_share": "C:\\ExtraWebSite"
  611. }
  612. },
  613. "_letsencrypt": {
  614. "__comment__": "Requires NodeJS 8.x or better, Go to https://letsdebug.net/ first before trying Let's Encrypt.",
  615. "email": "[email protected]",
  616. "names": "myserver.com,customer1.myserver.com",
  617. "skipChallengeVerification": false,
  618. "production": false,
  619. "rsaKeySize": 2048,
  620. "custom": {
  621. "server": "https://acme.zerossl.com/v2/DV90",
  622. "kid": "a1b2c3d4e5",
  623. "hmacKey": "a1b2c3d4e5"
  624. },
  625. "zerossl": {
  626. "kid": "a1b2c3d4e5",
  627. "hmacKey": "a1b2c3d4e5"
  628. }
  629. },
  630. "_peers": {
  631. "serverId": "server1",
  632. "servers": {
  633. "server1": { "url": "wss://192.168.2.133:443/" },
  634. "server2": { "url": "wss://192.168.1.106:443/" }
  635. }
  636. },
  637. "_smtp": {
  638. "host": "smtp.myserver.com",
  639. "port": 25,
  640. "from": "[email protected]",
  641. "__tls__": "When 'tls' is set to true, TLS is used immidiatly when connecting. For SMTP servers that use TLSSTART, set this to 'false' and TLS will still be used.",
  642. "tls": false,
  643. "___tlscertcheck__": "When set to false, the TLS certificate of the SMTP server is not checked.",
  644. "_tlscertcheck": false,
  645. "__tlsstrict__": "When set to true, TLS cypher setup is more limited, SSLv2 and SSLv3 are not allowed.",
  646. "_tlsstrict": true,
  647. "_emailDelaySeconds": 300
  648. },
  649. "_sendgrid": {
  650. "from": "[email protected]",
  651. "apikey": "***********",
  652. "_emailDelaySeconds": 300
  653. },
  654. "_sendmail": {
  655. "newline": "unix",
  656. "path": "/usr/sbin/sendmail",
  657. "_args": [ "-f", "[email protected]" ],
  658. "_emailDelaySeconds": 300
  659. },
  660. "_sms": {
  661. "provider": "twilio",
  662. "sid": "ACxxxxxxxxx",
  663. "auth": "xxxxxxx",
  664. "from": "+1-555-555-5555"
  665. },
  666. "__sms": {
  667. "provider": "plivo",
  668. "id": "xxxxxxx",
  669. "token": "xxxxxxx",
  670. "from": "1-555-555-5555"
  671. },
  672. "___sms": {
  673. "provider": "telnyx",
  674. "apikey": "xxxxxxx",
  675. "from": "1-555-555-5555"
  676. },
  677. "____sms": {
  678. "provider": "url",
  679. "url": "http://example.com/sms.ashx?phone={{phone}}&message={{message}}"
  680. },
  681. "_messaging": {
  682. "_telegram": {
  683. "apiid": 0,
  684. "apihash": "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  685. "session": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  686. "useWSS": "false",
  687. "connectionRetries": 60
  688. },
  689. "_discord": {
  690. "serverurl": "https://discord.gg/xxxxxxxxx",
  691. "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxx.xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
  692. },
  693. "_ntfy": {
  694. "host": "https://[my]ntfy.sh",
  695. "userurl": "https://[my]ntfy.sh/userhelp",
  696. "authorization": "Basic xxxxxxxxxxxxxxxxxxxx"
  697. }
  698. }
  699. }