This commit is contained in:
SkyperTHC 2023-03-24 11:28:39 +00:00
parent c5d369bb9b
commit 23956dce22
No known key found for this signature in database
GPG Key ID: A9BD386DF9113CD6
6 changed files with 20 additions and 4 deletions

@ -532,6 +532,7 @@ services:
- SF_RPC_IP=${SF_RPC_IP}
- SF_SEED=${SF_SEED}
- SF_HM_SIZE_LG=8
- SF_LOG_IP
- SF_DIRECT
- SF_DEBUG
volumes:

@ -178,10 +178,10 @@ tty -s && [[ -n $TERM ]] && [[ "$TERM" != dumb ]] && {
prompt_symbol=💛
PROMPT= PROMPT=$'%F{%(#.blue.green)}┌──${debian_chroot:+($debian_chroot)─}${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV))─}(%F{%(#.yellow.blue)}%n'$prompt_symbol$'%m%b%F{%(#.blue.green)})-[%B%F{reset}%(6~.%-1~/…/%4~.%5~)%b%F{%(#.blue.green)}]\n%{%G└%}%{%G─%}%B%(#.%F{yellow}#.%F{blue}$)%b%F{reset} '
}
# Make the Project name visibile in the PS1 prompt
[[ -z $VIRTUAL_ENV ]] && VIRTUAL_ENV="${SF_PRJ}"
PATH="/sec/root/.local/bin:/sec/usr/sbin:/sec/usr/bin:/sf/bin:$PATH"
#[[ -d /sec/usr/bin ]] && PATH="/sec/usr/bin:$PATH"
#[[ -d /sec/usr/sbin ]] && PATH="/sec/usr/sbin:$PATH"
_sf_info_non_perm()
{

@ -130,6 +130,7 @@ SF_REDIS_AUTH=\"${SF_REDIS_AUTH}\"
SF_RPC_IP=\"${SF_RPC_IP}\"
SF_USER=\"${SF_USER}\"
SF_DEBUG=\"${SF_DEBUG}\"
SF_LOG_IP=\"${SF_LOG_IP}\"
SF_BASEDIR=\"${SF_BASEDIR}\"
SF_SHMDIR=\"${SF_SHMDIR}\"
SF_RAND_OFS=\"$RANDOM\"

@ -34,6 +34,7 @@ CG="\e[1;32m" # green
CDG="\e[0;32m" # green
CDC="\e[0;36m" # cyan
CDR="\e[0;31m" # red
CDM="\e[0;35m" # magenta
CN="\e[0m" # none
CW="\e[1;37m" # white
CF="\e[2m" # faint
@ -52,7 +53,7 @@ _log()
# Replace ' with '"'"'
str="${*//\'/\'\"\'\"\'}"
# NOTE: segfault.log must be owned 1000:1000
bash -c "{ echo -en '[$(date '+%F %T' -u)]${p:- }'; echo -e '[${LID}][$$] $str';} 2>/dev/null >>'/sf/run/logs/segfault.log'"
bash -c "{ echo -en '[$(date '+%F %T' -u)]${p:- }'; echo -e '[${CDM}${LID}${CN}] $str';} 2>/dev/null >>'/sf/run/logs/segfault.log'"
}
LOG(){ _log "" "$@"; }
@ -882,6 +883,8 @@ fi
[[ -z $REMOTE_ADDR || ${#REMOTE_ADDR} -gt 32 ]] && ERREXIT "Bad REMOTE_ADDR: len=${#REMOTE_ADDR}"
YOUR_IP="${REMOTE_ADDR}"
}
[[ -n $PRJ ]] && SF_PRJ="${PRJ//[^a-zA-Z0-9._]}"
### ----END SANITIZE----
LID=$(echo -n "LID ${SF_SEC}" | sha512sum | base64 -w0)
@ -960,7 +963,11 @@ else
fi
DEBUGF "LID=${LID} SF_HOSTNAME=${SF_HOSTNAME}"
LOG "${CDG}${SF_HOSTNAME}${CN}, ${CDC}$*${CN}"
unset str
[[ -n $SF_LOG_IP ]] && str="[${CDY}${YOUR_IP}${CN}] "
str+="${CDG}${SF_HOSTNAME}"
[[ -n $SF_PRJ ]] && str+="/${CW}${SF_PRJ}"
LOG "${str}${CN} ${CDC}$*${CN}"
# Record which SSHD process is connect to guest LG.
tofile "SSHD_PID=$PPID
@ -1019,6 +1026,7 @@ xmkdir "${selfdir}"
# Note: cgroup-parents: with cgroup-v1 the full path needs to be specified (e.g. sf.slice/sf-guest.slice) whereas with
# cgroup-v2 only sf-guest.slice need to be specified.
[[ -n $SF_IS_GOLD_PROMPT ]] && export SF_IS_GOLD_PROMPT
[[ -n $SF_PRJ ]] && export SF_PRJ
exec_devnull docker run \
--hostname "sf-${SF_HOSTNAME}" \
"${DOCKER_ARGS[@]}" \
@ -1042,6 +1050,7 @@ exec_devnull docker run \
--env SF_HOSTNAME="${SF_HOSTNAME}" \
--env SF_LID="${LID}" \
--env SF_IS_LOGINSHELL=1 \
-e SF_PRJ \
-e SF_IS_GOLD_PROMPT \
--log-driver "${SF_DOCKER_LOG}" \
--mount type=tmpfs,destination=/tmp,tmpfs-mode=1777 \

1
host/fs-root/etc/ssh/sshd_config Normal file → Executable file

@ -104,6 +104,7 @@ GatewayPorts yes
#X11UseLocalhost yes
#PermitTTY yes
PrintMotd no
AcceptEnv PRJ
AcceptEnv SF_DEBUG
AcceptEnv SECRET
#PrintLastLog yes

4
provision/env.example Normal file → Executable file

@ -6,6 +6,8 @@ SF_BASEDIR=${HOME}/segfault
#SF_SSH_PORT=22
#SF_SSH_PORT2=443
#SF_DEBUG=1
## Log IP (do not enable on SEGFAULT)
#SF_LOG_IP=1
#SF_USER=root
#SF_USER_PASSWORD=segfault
#SF_FQDN=CHANGEME.segfault-net
@ -13,6 +15,7 @@ SF_BASEDIR=${HOME}/segfault
#SF_TOR_VIA_VPN=
## Obtain the private key by executing:
## docker run --rm --cap-add=NET_ADMIN -e USER=XXX -e PASS=YYY bubuntux/nordvpn:get_private_key
#SF_DIRECT=1
#SF_NORDVPN_PRIVATE_KEY=
## Obtain the config by executing:
## docker run --rm --e CRYPTOSTORM_TOKEN=XXX --entrypoint /getkey.sh hackerschoice/cryptostorm
@ -27,6 +30,7 @@ SF_TOR_IP=172.20.0.111
SF_NORDVPN_IP=172.20.0.254
SF_CRYPTOSTORM_IP=172.20.0.253
SF_MULLVAD_IP=172.20.0.252
SF_NOVPN_IP=172.20.0.240
SF_NGINX_IP=172.20.1.80
SF_RPC_IP=10.11.0.3
SF_GSNC_IP=172.22.0.21