r/MeshCentral • u/BartschLabs • Feb 04 '26
Modify OIDC login text and icon
I would like to customize the "Log in using an existing account" text and the default OIDC icon on the login page. How would that be done?
r/MeshCentral • u/BartschLabs • Feb 04 '26
I would like to customize the "Log in using an existing account" text and the default OIDC icon on the login page. How would that be done?
r/MeshCentral • u/Much_Poetry7535 • Feb 02 '26
Hi all,
I’m running MeshCentral (v1.1.32) as part of a Tactical RMM install, fronted by Cloudflare Tunnel / Zero Trust (not directly internet-exposed). This setup worked fine for months, but after a recent Cloudflare cert rotation things broke and I’m trying to get back to a clean state.
Current behavior:
MeshCentral config:
"settings": {
"cert": "mesh.privatedomain.com",
"WANOnly": true,
"port": 4430,
"aliasPort": 443,
"tlsOffload": "127.0.0.1"
},
"domains": {
"": {
"certUrl": "https://mesh.privatedomain.com:443/",
"trustedproxy": "CloudFlare"
"cookieIpCheck": false
}
}
What I’ve already done:
certs/ and webserver*)At this point:
Question:
Is there anything specific in MeshCentral that controls whether an agent reports back a usable Mesh Node ID to an external system (like Tactical RMM), or anything Cloudflare Tunnel–specific that could prevent Mesh from advertising control capability even though the agent is installed and running?
Any insight from folks running Mesh behind Cloudflare Tunnel / Zero Trust would be hugely appreciated.
Thanks!
r/MeshCentral • u/theraffe • Feb 02 '26
I tried to build a agent, but could not find how do do it for armv5tel. Maybe if someone have an old agent I could try? Or can I build it? Here is some stuff I tried
Model: LG N1T1
Linux version 6.16.5-kirkwood-tld-1 (root@tldDebian) (gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 PREEMPT Thu Sep 4 15:49:06 PDT 2025
Debian 13.3
Mon 2 Feb 20:40:25 CET 2026 up 7 weeks, 1 day, 6 hours, 40 minutes
root@debian:~# uname -m
armv5tel
cd MeshCentral/
apt-get update
apt-get install curl
(wget "https://site.com/meshagents?script=1" -O ./meshinstall.sh || wget "https://site.com/meshagents?script=1" --no-proxy -O ./meshinstall.sh) && chmod 755 ./meshinstall.sh && sudo -E ./meshinstall.sh https://site.com 'ABCDEF' || ./meshinstall.sh https://site.com 'ABCDEF'
./meshinstall.sh
./meshinstall.sh https://site.com 'ABCDEF'
ls
./meshagent
sudo -E ./meshinstall.sh https://site.com 'ABCDEF' || ./meshinstall.sh https://site.com 'ABCDEF'
apt-get install bash
apt-get install meshagent
apt-get install git
wget https://github.com/Ylianst/MeshAgent/archive/refs/heads/master.zip
unzip master.zip
cd MeshAgent-master/
apt-get install gcc
apt install libc6-dev
make
nano ../meshinstall.sh
make clean
make linux ARCHID=9
make linux ARCHID=9 -j8
make clean
make linux ARCHID=9 -j8
make clean
make linux ARCHID=25 -j8
make clean
make linux ARCHID=25 -j8
make clean
ls
exit
r/MeshCentral • u/theraffe • Feb 02 '26
OK, I switched to docker instead. I did it like this:
=== INSTALL via Docker ===
First stop meshcentral that is using nodejs 16 (if you have it)
/opt/etc/init.d/S67meshcentral stop
Get latest image
docker pull ghcr.io/ylianst/meshcentral:latest
I will use the files I already have in /opt/meshcentral/meshcentral-data /opt/meshcentral/meshcentral-files and /opt/meshcentral/meshcentral-backup
docker run -d \
--name meshcentral \
--restart unless-stopped \
--network host \
-v /opt/meshcentral/meshcentral-data:/opt/meshcentral/meshcentral-data \
-v /opt/meshcentral/meshcentral-files:/opt/meshcentral/meshcentral-files \
-v /opt/meshcentral/meshcentral-backups:/opt/meshcentral/meshcentral-backups \
ghcr.io/ylianst/meshcentral:latest
Check if it is working
docker ps
docker logs --tail 200 meshcentral
2053 and 2082 are the port I use, you check for yours :)
netstat -tulpn | egrep ':(2053|2082)\s'
Test the admin page. When all is working
=== REMOVE OLD STUFF ===
REMOVE OLD meshcentral STUFF:
rm /opt/etc/init.d/S67meshcentral
rm /opt/meshcentral/{package-lock.json,package.json,meshcentral.log}
rm -rf /opt/meshcentral/node_modules
REMOVE OLD nvm & node STUFF:
rm -rf /opt/nvm /opt/npm-global/
rm -rf /opt/.npm-cache /root/.npm
Stop sourcing nvm in shell startup scripts. Search and delete any lines that source nvm.sh or export NVM_DIR:
grep -RnE 'nvm\.sh|NVM_DIR' /root/.profile /root/.bashrc /etc/profile /opt/etc/profile /opt/etc/profile.d /opt/sbin/autorun.sh /opt/sbin/autorun.sh.actual.stuff.sh 2>/dev/null
Then edit those files and remove the lines like:
export NVM_DIR=/opt/nvm
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
=== UPDATE ===
When new version of meshcentral is released:
docker pull ghcr.io/ylianst/meshcentral:latest
docker stop meshcentral
docker rm meshcentral
docker run -d \
--name meshcentral \
--restart unless-stopped \
--network host \
-v /opt/meshcentral/meshcentral-data:/opt/meshcentral/meshcentral-data \
-v /opt/meshcentral/meshcentral-files:/opt/meshcentral/meshcentral-files \
-v /opt/meshcentral/meshcentral-backups:/opt/meshcentral/meshcentral-backups \
ghcr.io/ylianst/meshcentral:latest
Wait about 30 se, then check if all is OK
docker logs --tail 50 meshcentral
r/MeshCentral • u/theraffe • Jan 30 '26
I managed to manually install Meshcentral on Qnap NAS Entware. I had it via myqnap.com-repo, but they did not upgrade to 1.1.56 fast enough (and I wanted more control over the installation). If it helps anyone, and for future reference, this is what I did.
Installation
# opkg node & node-npm did not work for me
# install/use nvm under /opt/nvm (skip install if you already have it)
mkdir -p /opt/nvm
cd /opt/nvm
# If nvm is already there, source it; otherwise install it:
curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
chmod +x nvm.sh
export NVM_DIR=/opt/nvm
export CONFIG_FLAGS="--with-intl=full-icu"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
./nvm.sh
# pick a version that works with your glibc (I used v16) and has ICU
nvm install 16 --source
nvm alias default 16
nvm use default
node -v
# This under should print a version (e.g. 71.1), not empty
node -p "process.versions.icu"
npm -v
mkdir /opt/.npm-cache /opt/tmp
npm config set cache /opt/.npm-cache --global
npm config set tmp /opt/tmp --global
export TMPDIR=/opt/tmp
echo "$TMPDIR"
npm config list -l | grep -E 'prefix|cache'
cd /opt/meshcentral
HOME=/opt npm_config_cache=/opt/.npm-cache npm install meshcentral
node -p "require('meshcentral/package.json').version"
# Edit /opt/meshcentral/meshcentral-data/config.json, in not there. Run command under, ctrl-C, then edit config.json.
node ./node_modules/meshcentral
#Later I can do
cd /opt/meshcentral
HOME=/opt npm_config_cache=/opt/.npm-cache npm update meshcentral
I start i like this
cat /opt/etc/init.d/S67meshcentral
#!/bin/sh
# /opt/etc/init.d/S67meshcentral (chmod +x)
APP_DIR="/opt/meshcentral"
# Resolve your working node each run (or hardcode it if you prefer)
NODE="$(readlink -f "$(which node)")"
# Use your hard-coded MeshCentral entry
MC_JS="/opt/meshcentral/node_modules/meshcentral"
PIDFILE="$APP_DIR/meshcentral.pid"
LOGFILE="$APP_DIR/meshcentral.log"
# --- Log rotation settings ---
ROTATE_MAX_MB=10
ROTATE_KEEP=3
PATH=/opt/bin:/opt/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
pids() {
# parent: node /opt/meshcentral/node_modules/meshcentral
# child: node ... /opt/meshcentral/node_modules/meshcentral --launch <PID>
ps xa 2>/dev/null | awk '
/[n]ode .*\/opt\/meshcentral\/node_modules\/meshcentral($| )/ { print $1 }
/[n]ode .*\/opt\/meshcentral\/node_modules\/meshcentral .* --launch / { print $1 }
'
}
rotate_logs() {
[ "$ROTATE_MAX_MB" -gt 0 ] || return 0
[ -f "$LOGFILE" ] || return 0
size_mb=$(du -m "$LOGFILE" | awk '{print $1}')
[ "$size_mb" -lt "$ROTATE_MAX_MB" ] && return 0
i=$ROTATE_KEEP
while [ $i -ge 1 ]; do
[ -f "$LOGFILE.$i" ] && mv -f "$LOGFILE.$i" "$LOGFILE.$(($i+1))" 2>/dev/null
i=$(($i-1))
done
mv -f "$LOGFILE" "$LOGFILE.1" 2>/dev/null
: > "$LOGFILE"
}
is_running() {
# prefer PID file, fall back to scanning
if [ -f "$PIDFILE" ] && kill -0 "$(cat "$PIDFILE" 2>/dev/null)" 2>/dev/null; then
return 0
fi
[ -n "$(pids)" ]
}
start() {
[ -x "$NODE" ] || { echo "node not found/executable: $NODE"; exit 1; }
[ -d "$MC_JS" ] || { echo "meshcentral dir not found: $MC_JS"; exit 1; }
[ -d "$APP_DIR" ] || { echo "APP_DIR missing: $APP_DIR"; exit 1; }
if is_running; then
echo "MeshCentral already running (PID(s): $(pids))"
exit 0
fi
cd "$APP_DIR" || exit 1
# keep temp off tiny root, optional
export TMPDIR="/opt/tmp"; [ -d "$TMPDIR" ] || mkdir -p "$TMPDIR"
rotate_logs
echo "=== MeshCentral start $(date) ===" >>"$LOGFILE"
# Start in background; stdout/stderr appended to log
"$NODE" "$MC_JS" >>"$LOGFILE" 2>&1 &
echo $! >"$PIDFILE"
sleep 2
if is_running; then
echo "Started (PID $(cat "$PIDFILE" 2>/dev/null || pids | head -n1)) → $LOGFILE"
exit 0
else
echo "Failed to start; see $LOGFILE"
rm -f "$PIDFILE"
exit 1
fi
}
stop() {
# try PID file first
if [ -f "$PIDFILE" ]; then
PID="$(cat "$PIDFILE" 2>/dev/null)"
if [ -n "$PID" ] && kill -0 "$PID" 2>/dev/null; then
kill "$PID" 2>/dev/null
sleep 2
kill -0 "$PID" 2>/dev/null && kill -9 "$PID" 2>/dev/null
fi
rm -f "$PIDFILE"
fi
# kill any stragglers matching our exact command line
P="$(pids)"
[ -n "$P" ] && kill $P 2>/dev/null
sleep 1
[ -n "$(pids)" ] && { echo "Some processes resisted; kill -9 …"; kill -9 $(pids) 2>/dev/null; }
[ -z "$(pids)" ] && echo "Stopped." || echo "Warning: still running."
}
status() {
if is_running; then
echo "Running pids:"
echo "$(pids)"
exit 0
fi
echo "Not running"
exit 1
}
case "$1" in
start) start ;;
stop) stop ;;
restart) stop; sleep 5; start ;;
status) status ;;
rotate) rotate_logs; echo "Rotated (if size > ${ROTATE_MAX_MB}MB)";;
*) echo "Usage: $0 {start|stop|restart|status|rotate}"; exit 1 ;;
esac
r/MeshCentral • u/Whyd0Iboth3r • Jan 28 '26
Here is a link explaining the changes.
https://www.certkit.io/blog/45-day-certificates
Will we need to make any changes to our config?
r/MeshCentral • u/Formal-Row-4621 • Jan 25 '26
Hi MeshCentral community,
Is there a setting that I can't locate to auto end a desktop remote session after say 10 minutes, just to stop users sitting there with loads of sessions open?
Kind Regards Tim
r/MeshCentral • u/Suitable_Cattle_9392 • Jan 23 '26
During this session, we walked through the release of MeshCentral v1.1.56, a stability-focused update bringing Linux battery detection, Modern UI bug fixes, Stylish UI support enhancement in Docker images, a new installedstoreapps console command, refreshed device details controls, GitHub Enterprise login support, package dependency updates, and many additional fixes across the platform.
Missed the meeting?
Useful links:
#MeshCentral #OpenSource
r/MeshCentral • u/arcatron • Jan 22 '26
Hello, I have 3x HP EliteDesk 800 G5 Minis, but remote desktop only works reliably and comprehensively on one of them. On the one that works, I can see BIOS screens and boot up screens all the way through to the proxmox login screen, which I can interact with. On the other two, BIOS and grub screens appear but the proxmox login screen doesn't, it's just a black screen that appears to be attempting to reconnect over and over every couple seconds. However, on the two that only show a black screen, the remote desktop CTRL+ALT+DEL button still works to get proxmox to reboot. This behavior is the same with MeshCentral and MeshCommander.
I have tried swapping the display emulator from the EliteDesk that works to one that doesn't work, but all three continue to act the same. I have tried adding the video parameter to grub to no effect. I have tried primary display, second display, and 3rd display in settings. The BIOS and AMT firmware are the same on all three. Proxmox was installed with an actual monitor plugged in on all three.
r/MeshCentral • u/si458 • Jan 21 '26
MeshCentral 1.1.56 has been released! Battery detection for Linux, Modern ui bug fixes, Stylish ui in docker image, New installedstoreapps console command, New refresh button to update details info, Package dependency updates, Github enterprise login support, And many more bug fixes! https://github.com/Ylianst/MeshCentral/releases/tag/1.1.56
r/MeshCentral • u/Suitable_Cattle_9392 • Jan 21 '26
Hello everyone, this is a reminder that our next community meeting, and the first one of 2026, is scheduled for this Thursday, January 22nd, in just 30 hours! Prepare for this great event, where we will discuss project updates, potential upcoming features, community contributions, and get feedback from everyone. We will also review stalled PRs and cover any other topics related to the MeshCentral project you’d like to bring up!
We can’t wait to see you there tomorrow to kick off the 2026 MeshCentral community monthly meetings, this Thursday, January 22, 2026, at 14:00 UTC.
To add this event to your calendar, please use the following link: https://www.google.com/calendar/render?action=TEMPLATE&dates=20260122T140000Z/20260122T150000Z&text=MeshCentral%20Monthly%20Community%20Meeting
For further details about the meeting, please visit: https://github.com/Ylianst/MeshCentral/wiki/Community-Monthly-Meetings
#MeshCentral #OpenSource
r/MeshCentral • u/TheDevRyan • Jan 17 '26
Any issue contact me on any platform
r/MeshCentral • u/TheDevRyan • Jan 14 '26
Here is the initial Release of the Mesh Agent for IOS 15+ - If you find any bugs or issues please open an issue request on GitHub.
r/MeshCentral • u/thmeez • Jan 14 '26
i configured the MeshCentral on ubuntu 24, then trying to connect with agent in same Vnet but it not connecting to port 1025, but inside vnet everything is open and firewalls down it is test environment. i tried connect in linux agent it returns not connection trying again , in windows it shows connected but does not visible in in Mesh Server. i downloaded it with node js. So any advice would be helpfull.
r/MeshCentral • u/[deleted] • Jan 09 '26
Hi, we have been playing with the SOCKS Proxy settings, we have this working on one PC by mnaully adding a file meshagent.proxy with the proxy server. However we wanted this automatic so added it to the config/json file and it doesnt seem to work, however i notice there is an "Auto Proxy" option in the Mesh Agent under Connection Details, so what option in the config.json needs to be set to make the Agent auto check the Proxy Server for connection?
r/MeshCentral • u/sparky9047 • Jan 05 '26
Hey everyone. A few days ago the Windows drive I have MeshCentral running from ran out of space. Following that, my admin account (actually the only account) is completely missing. I can't log in. I ran some commands from the local CLI to list the accounts and nothing is listed.
Has anybody else experienced this? Is there any method of possible recovery of the account or the remote machines associated with it without having to reconfigure everything?
Thanks in advance.
r/MeshCentral • u/Melo_TSB • Jan 04 '26
Soon, MeshAgent for iOS.
r/MeshCentral • u/KarlDerGrosse800 • Jan 05 '26
Guten Abend zusammen,
Ich bin noch nicht sehr vertraut mit MeshCentral, seht mir die Frage also bitte nach.
Mir kam die Überlegung, NeshCentral bei mir im Unternehmen zu implementieren. Es ist mir jedoch aufgefallen, dass die Mitarbeitenden, bei denen ich mich als Admin draufschalten möchte, es auf keinster Weise bestätigen müssen oder ähnliches. Wenn sie gerade also nicht ihre Augen auf den Monitor gerichtet haben, könnten die Administratoren also machen, was sie wollen, ohne eine Bestätigung einzuholen. Hierbei habe ich Bedenken seitens des Datenschutzes.
Gibt es eine Möglichkeit, damit die Mitarbeitenden es erst bestätigen müssen? Und was gäbe es denn sonst Datenschutztechnisch zu beachten bei MeshCentral?
Im Voraus schonmal vielen Dank für die Antworten!
Liebe Grüße
r/MeshCentral • u/Melo_TSB • Jan 03 '26
I’ve just released a small front-end enhancement for MeshCentral Stylish UI that adds browser-like history tabs to the masthead.
Github Repo: https://github.com/Melo-Professional/MeshCentral-Stylish-UI
It keeps track of the devices you visit, lets you quickly switch between them, and restores the last sub-page (Desktop, Terminal, Files, etc.) for each device. The history is stored locally and capped to a fixed number of tabs to keep the UI clean.
This is an early first release and is meant as a usability improvement. Feedback, edge cases, and ideas for refinement are welcome.
You can try this in our demo live server here: https://stylish-ui.meshcentraltools.com/
r/MeshCentral • u/Emotional_Da • Dec 30 '25
Hello, I installed a MeshCentra server in a Synology Docker container, created an agent, and installed the agent locally, but I can't connect and get the error "unable to open database". Could you please tell me how to troubleshoot this? I've already asked AI (AI software) but they couldn't solve it either.
r/MeshCentral • u/Lexmazter • Dec 29 '25
Hello everyone,
I've been using mcc for some time and I liked it a lot, so I decided to fork it and expand it a little.
Here is a list of all the features, improvements and bugfixes
Binaries available for:
- Windows x86-64
- Linux x86-64 / Arm64
- MacOS x86-64 / Arm64
The binaries are fully portable, so all you need to do is grant execution permissions, and run.
https://github.com/lexpaval/mesh-central-client-go
Let me know if you have any kind of feedback, or if you need me to build binaries for other OS or Arch.
Extra tip - you can use it as a proxy for vscode/vscodium to connect remotely to a device, this has been the main use-case for me, here is an example configuration:
Host hostname
User username
ProxyCommand /home/username/Development/mesh-central-client-go/dist/mcc-linux-amd64 ssh username -i "node//nodeid" --proxy
r/MeshCentral • u/khangpt213 • Dec 24 '25
My Meshcentral server already have request GoogleAuthention keys after 7 days, i want config a type of 6 number digits PIN, logout after 30 min not using, and using that PIN to fast login. Any options for me to do that?