Compare commits
10 commits
ae78622a58
...
82caba2f37
Author | SHA1 | Date | |
---|---|---|---|
|
82caba2f37 | ||
|
e73021f2f3 | ||
|
6b5862fba1 | ||
|
50fba1b2f1 | ||
|
15de28e37b | ||
|
d3a93f8081 | ||
|
39b42fb6e4 | ||
|
1510811a68 | ||
|
e7ba13e13d | ||
|
0edee2c12c |
0
.gitignore
vendored
Normal file → Executable file
0
AUTHORS
Normal file → Executable file
0
CHANGELOG.md
Normal file → Executable file
0
COPYING
Normal file → Executable file
0
GPL-2
Normal file → Executable file
0
INSTALL.Debian
Normal file → Executable file
0
Makefile.am
Normal file → Executable file
0
NEWS
Normal file → Executable file
0
README
Normal file → Executable file
0
README.Fedora
Normal file → Executable file
18
README.md
Normal file → Executable file
|
@ -42,25 +42,13 @@ Build
|
||||||
For building **shellinabox** from source on Debian or RHEL based systems use commands
|
For building **shellinabox** from source on Debian or RHEL based systems use commands
|
||||||
listed below. This will create executable file `shellinaboxd` in project directory.
|
listed below. This will create executable file `shellinaboxd` in project directory.
|
||||||
|
|
||||||
1. Install dependencies
|
1. Clone the autotools
|
||||||
|
|
||||||
```
|
```
|
||||||
apt-get install git libssl-dev libpam0g-dev zlib1g-dev dh-autoreconf
|
wget https://raw.githubusercontent.com/simono41/shellinabox/master/auto.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
or
|
3. Run autotools
|
||||||
|
|
||||||
```
|
|
||||||
yum install git openssl-devel pam-devel zlib-devel autoconf automake libtool
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Clone source files and move to project directory
|
|
||||||
|
|
||||||
```
|
|
||||||
git clone https://github.com/simono41/shellinabox.git && cd shellinabox
|
|
||||||
```
|
|
||||||
|
|
||||||
3. Run autotools in project directory
|
|
||||||
|
|
||||||
```
|
```
|
||||||
chmod +x auto.sh
|
chmod +x auto.sh
|
||||||
|
|
0
TODO
Normal file → Executable file
22
auto.sh
Normal file → Executable file
|
@ -1,20 +1,28 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
if [[ $EUID -ne 0 ]]; then
|
if [[ $EUID -ne 0 ]]; then
|
||||||
echo "This script must be run as root" 1>&2
|
echo "This script must be run as root" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
echo "Als root Angemeldet"
|
echo "Als root Angemeldet"
|
||||||
|
|
||||||
apt-get install git libssl-dev libpam0g-dev zlib1g-dev dh-autoreconf
|
if [ -f /usr/bin/apt ]; then
|
||||||
|
apt update
|
||||||
|
|
||||||
pacman -S git openssl autoconf automake make gcc
|
apt install git libssl-dev libpam0g-dev zlib1g-dev dh-autoreconf
|
||||||
|
fi
|
||||||
|
|
||||||
sleep 5
|
if [ -f /usr/bin/pacman ]; then
|
||||||
|
pacman -Sy git openssl autoconf automake make gcc
|
||||||
|
fi
|
||||||
|
|
||||||
cd /opt/
|
cd /opt/
|
||||||
|
|
||||||
git clone https://github.com/simono41/shellinabox.git && cd shellinabox
|
git clone https://github.com/simono41/shellinabox.git
|
||||||
|
|
||||||
|
cd shellinabox
|
||||||
|
|
||||||
autoreconf -i
|
autoreconf -i
|
||||||
|
|
||||||
|
@ -34,6 +42,8 @@ useradd webssh
|
||||||
|
|
||||||
mkdir /home/webssh
|
mkdir /home/webssh
|
||||||
|
|
||||||
|
cp shellinabox_sshwrapper.sh /home/webssh/
|
||||||
|
|
||||||
chmod 770 -R /home/webssh/
|
chmod 770 -R /home/webssh/
|
||||||
|
|
||||||
chown -cR webssh:webssh /home/webssh/
|
chown -cR webssh:webssh /home/webssh/
|
||||||
|
@ -43,6 +53,4 @@ webssh
|
||||||
webssh
|
webssh
|
||||||
EOT
|
EOT
|
||||||
|
|
||||||
cp shellinabox_sshwrapper.sh /home/webssh/
|
systemctl start shellinabox.service &
|
||||||
|
|
||||||
systemctl start shellinabox.service
|
|
||||||
|
|
0
configure.ac
Normal file → Executable file
0
contrib/README-siab.rb
Normal file → Executable file
0
contrib/siab.rb
Normal file → Executable file
0
debian/README.available
vendored
Normal file → Executable file
0
debian/README.enabled
vendored
Normal file → Executable file
0
debian/README.source
vendored
Normal file → Executable file
0
debian/changelog
vendored
Normal file → Executable file
0
debian/compat
vendored
Normal file → Executable file
0
debian/control
vendored
Normal file → Executable file
0
debian/copyright
vendored
Normal file → Executable file
0
debian/docs
vendored
Normal file → Executable file
0
debian/shellinabox.default
vendored
Normal file → Executable file
0
debian/shellinabox.dirs
vendored
Normal file → Executable file
0
debian/shellinabox.examples
vendored
Normal file → Executable file
0
debian/shellinabox.lintian-overrides
vendored
Normal file → Executable file
0
debian/shellinabox.preinst
vendored
Normal file → Executable file
0
debian/shellinabox.prerm
vendored
Normal file → Executable file
0
debian/source/format
vendored
Normal file → Executable file
0
debian/source/include-binaries
vendored
Normal file → Executable file
0
debian/source/options
vendored
Normal file → Executable file
0
demo/demo.html
Normal file → Executable file
0
demo/demo.jspp
Normal file → Executable file
0
demo/demo.xml
Normal file → Executable file
0
demo/keyboard.html
Normal file → Executable file
0
etc-pam.d-shellinabox-example
Normal file → Executable file
0
libhttp/hashmap.c
Normal file → Executable file
0
libhttp/hashmap.h
Normal file → Executable file
0
libhttp/http.h
Normal file → Executable file
0
libhttp/httpconnection.c
Normal file → Executable file
0
libhttp/httpconnection.h
Normal file → Executable file
0
libhttp/libhttp.sym
Normal file → Executable file
0
libhttp/server.c
Normal file → Executable file
0
libhttp/server.h
Normal file → Executable file
0
libhttp/ssl.c
Normal file → Executable file
0
libhttp/ssl.h
Normal file → Executable file
0
libhttp/trie.c
Normal file → Executable file
0
libhttp/trie.h
Normal file → Executable file
0
libhttp/url.c
Normal file → Executable file
0
libhttp/url.h
Normal file → Executable file
0
logging/logging.c
Normal file → Executable file
0
logging/logging.h
Normal file → Executable file
0
m4/.gitignore
vendored
Normal file → Executable file
0
misc/embedded.html
Normal file → Executable file
0
misc/preview.gif
Normal file → Executable file
Before Width: | Height: | Size: 930 KiB After Width: | Height: | Size: 930 KiB |
0
misc/preview.png
Normal file → Executable file
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 79 KiB |
22
sgit
Executable file
|
@ -0,0 +1,22 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
if [[ "--help" == "${1}" ]]; then
|
||||||
|
echo "bash ./sgit user.email commit"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "${2}" ]]; then
|
||||||
|
echo "Bitte email und commit angeben!!!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
git config --global user.email "${1}"
|
||||||
|
git config --global user.name "${1}"
|
||||||
|
git status
|
||||||
|
git pull
|
||||||
|
git add --all
|
||||||
|
git commit --all -m "${2}"
|
||||||
|
git show
|
||||||
|
git push
|
||||||
|
git status
|
2
shellinabox.service
Normal file → Executable file
|
@ -3,7 +3,7 @@ Description=shellinabox
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=oneshot
|
Type=oneshot
|
||||||
ExecStart=/opt/shellinabox/shellinaboxd --cert=/tmp/ --service=/:webssh:webssh:HOME:'/home/webssh/shellinabox_sshwrapper.sh'
|
ExecStart=/opt/shellinabox/shellinaboxd -t --service=/:webssh:webssh:HOME:'/home/webssh/shellinabox_sshwrapper.sh'
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
|
|
0
shellinabox/beep.wav
Normal file → Executable file
0
shellinabox/black-on-white.css
Normal file → Executable file
0
shellinabox/cgi_root.html
Normal file → Executable file
0
shellinabox/color.css
Normal file → Executable file
0
shellinabox/enabled.gif
Normal file → Executable file
Before Width: | Height: | Size: 847 B After Width: | Height: | Size: 847 B |
0
shellinabox/externalfile.c
Normal file → Executable file
0
shellinabox/externalfile.h
Normal file → Executable file
0
shellinabox/favicon.ico
Normal file → Executable file
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
0
shellinabox/keyboard-layout.html
Normal file → Executable file
0
shellinabox/keyboard.png
Normal file → Executable file
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
0
shellinabox/launcher.c
Normal file → Executable file
0
shellinabox/launcher.h
Normal file → Executable file
0
shellinabox/monochrome.css
Normal file → Executable file
0
shellinabox/print-styles.css
Normal file → Executable file
0
shellinabox/privileges.c
Normal file → Executable file
0
shellinabox/privileges.h
Normal file → Executable file
0
shellinabox/root_page.html
Normal file → Executable file
0
shellinabox/service.c
Normal file → Executable file
0
shellinabox/service.h
Normal file → Executable file
0
shellinabox/session.c
Normal file → Executable file
0
shellinabox/session.h
Normal file → Executable file
0
shellinabox/shell_in_a_box.jspp
Normal file → Executable file
0
shellinabox/shellinaboxd.c
Normal file → Executable file
0
shellinabox/shellinaboxd.man.in
Normal file → Executable file
0
shellinabox/usercss.c
Normal file → Executable file
0
shellinabox/usercss.h
Normal file → Executable file
18
shellinabox_sshwrapper.sh
Normal file → Executable file
|
@ -1,12 +1,17 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
set -ex
|
||||||
#
|
#
|
||||||
read -p "SSH remote host (hostname or ip address): " host;
|
read -p "SSH remote host (hostname or ip address) [localhost] : " host;
|
||||||
|
[[ -z "${host}" ]] && host=localhost;
|
||||||
#
|
#
|
||||||
read -p "If a puplic_key authentification?: N or y: " puplic;
|
read -p "If a puplic_key authentification?: [y/N] : " puplic;
|
||||||
#
|
#
|
||||||
read -p "SSH remote port (22): " port;
|
read -p "SSH remote port [22] : " port;
|
||||||
|
[[ -z "${port}" ]] && port=22;
|
||||||
#
|
#
|
||||||
read -p "SSH remote username: " username;
|
read -p "SSH remote username [pi] : " username;
|
||||||
|
[[ -z "${username}" ]] && username=pi;
|
||||||
#
|
#
|
||||||
if [ "$puplic" == "y" ];
|
if [ "$puplic" == "y" ];
|
||||||
then
|
then
|
||||||
|
@ -14,8 +19,9 @@ if [ "$puplic" == "y" ];
|
||||||
echo $key > ~/.ssh/id_rsa.pub;
|
echo $key > ~/.ssh/id_rsa.pub;
|
||||||
|
|
||||||
rm ~/.ssh/id_rsa;
|
rm ~/.ssh/id_rsa;
|
||||||
echo "Enter your private id here and press the enter key for a new line and when you are done confirm with finish !!!";
|
echo "Enter your private id here and press the enter key for a new line !!!";
|
||||||
while [ "$id" != "finish" ];
|
id=null
|
||||||
|
while [ "$id" != "" ];
|
||||||
do
|
do
|
||||||
read -p "How is your id_rsa key?: " id;
|
read -p "How is your id_rsa key?: " id;
|
||||||
echo $id >> ~/.ssh/id_rsa;
|
echo $id >> ~/.ssh/id_rsa;
|
||||||
|
|