SSH Web (webshell)
来源:互联网 发布:javascript 策略模式 编辑:程序博客网 时间:2024/06/18 16:59
SSH Web Gateway mit dem OpenSource Tool shellinabox
Der eigentlich für den direkten Konsolenzugriff über Web gedachte Dienst shellinabox lässt sich hervorragend dazu verwenden ein Gateway für SSH-Verbindungen herzustellen. Dies ist vor allem, dann interessant wenn des Öfteren Maschinen aus Netzen die keine Verbindungen zu Port 22 oder manuell definierten Ports über 1024 zulassen, gewartet werden müssen.
Aus Sicherheitsgründen sollten Sie so einen Dienst nur auf einer eigenen Maschine (z.B. virtuell) einrichten, für das zugrunde liegende System eigene sonst nicht verwendete Passwörter definieren und den shellinabox-Daemon nur mit eingeschränkten Rechten starten.
Der Service lässt sich unter https://tools.bartlweb.net/websshausprobieren.
Die HTML-Implementierung funktioniert in allen modernen Browsern und lässt sich via Apache mod_proxy ins Netz bringen. Die Eingabe von Sonderzeichen macht allerdings in Firefox Probleme, daher empfehle ich die Nutzung unter Chrome. Wer dennoch auf Firefox angewiesen ist kann zumindest mathematische Symbole anstelle der normalen Tasten über das Nummernpad eingeben.
Installation
Richten Sie eine eigene Linux-Installation für den Service ein. Dann laden Sie sich die aktuelle Version von shellinabox unter http://code.google.com/p/shellinabox/ herunter. Entpacken Sie den Inhalt des Archivs und kompilieren bzw. installieren Sie das Tool mit den im Verzeichnis des Quellcodes ausgeführten Befehlen ./configure, make undmake install.
Autostart und Startparameter
Um shellinabox mit der gewünschten Konfiguration zu starten benötigen wir ein Wrapper-Skript die wir z.B. in das Home-Verzeichnis (hier/home/webssh/start_shellinabox.sh) unseres Benutzers, unter dem wir shellinabox ausführen wollen (hier webssh), legen. Darin rufen wir das Tool shellinabox auf und konfigurieren es wie folgt:
- --background: Im Hintergrund als Dienst starten.
- --service: Wir bieten unserer nachfolgendes Shelllskript als Service an. Dabei wird der Service nach dem folgenden Schema definiert /:<username>:<group>:HOME:'<script>'
- <username> / <group>: Username und Gruppe des Nutzers, mit dessen Rechte das angegebene Skript ausgeführt wird.
- HOME: Definiert das Home-Verzeichnis des angegebenen Benutzers als zu verwendendes Arbeitsverzeichnis.
- <script>: Pfad zum Skript, dessen Ausgabe bei Aufruf des Dienstes über die Weboberfläche angezeigt wird.
Daraus ergibt sich der folgende Inhalt für unser Wrapper-Skript:
Damit der shellinabox-Daemon nun bei jedem Start ausgeführt wird, rufen wir das angelegte Skript über die Crontab-Datei des Nutzers webssh auf.
SSH-Service Shellskript
Die Ausgabe des folgenden Shellskripts wird dem Nutzer bei Aufruf der Weboberfläche angezeigt. Hier fragen wir nach den Parametern des Remotehosts (Hostadresse, Hostport und Benutzername), fangen Anfragen an interne IPs ab und starten die eigentliche SSH-Verbindung. Um SSH-Verbindungen nicht aufgrund von wechselnden Hostkeys zu blockieren, akzeptieren wir unbekannte Hosts automatisch und verwerfen diese durch Speichern in /dev/null.
Kopieren Sie den nachfolgenden Code in die Datei/home/webssh/shellinabox_sshwrapper.sh.
- SSH Web (webshell)
- SSH WebShell: SSH在线WEB管理器安装教程
- 终结Webshell 加固web服务器
- [web安全] Webshell的检测
- SSH WebShell的适用(python)
- webshell
- webshell
- WebShell
- WebShell
- webshell
- webshell
- webshell
- webshell
- WEBSHELL
- webshell
- Webshell
- WEB渗透中 Windows2003 Webshell权限讲解
- web ssh
- Python os模块
- java学习——封装、继承
- JSP详细篇——response对象
- 过河问题(南阳oj47)(贪心)
- AFNetworking使用总结
- SSH Web (webshell)
- sfdfsdf
- java中String byte HexString的转换
- Objective-C、C++以及C之间的区别
- Linux Tips: Force Fsck Run During the Next Reboot
- Codeforces Round #277 (Div. 2)---A. Calculating Function (规律)
- 【web++_第三阶段_SSH】SSH环境搭建_所需的jar包
- 上海高校菜品大赛再现食堂神菜:水蜜桃排骨
- 房贷首付