Die Nutzung von SSH zur Administration einer OPNsense kann notwendig werden, wenn man viel Troubleshooting betreiben möchte (pings, arps, routing, etc.) oder von einem System zugreifen muss, das über keine grafische Oberfläche verfügt. Das ist beispielsweise bei einem Jump Host der Fall.
Um den SSH-Zugriff von außen zu schützen und zu verhindern, dass per Bruteforce Angriffe gefahren werden werden, schützen wir unsere SSH-Zugriffe.
Dazu setzen wir unter System > Settings > Administration unter dem Punkt Secure Shell die Eigenschaft Listen Interfaces auf ausschließlich interne Netzwerkschnittstellen. Wir aktivieren Secure Shell und lassen den Root User Login deaktivert.

Nun müssen wir aber noch dafür sorgen, dass wir Nutzerkonten haben, die sich einloggen dürfen. Wir legen dazu unter System > Access > Groups eine Gruppe an, beispielsweise „admins“, und packen unsere administrativen Konten dort hinein. Nun erlauben wir der Gruppe „admins“, per sudo root-Rechte zu bekommen.

Mit dem Kommando sudo su wird man nach dem Login zu root und kann die /usr/local/sbin/opnsense-shell nutzen.
