Skip to content

Commit 37a4fdb

Browse files
committed
Create ssh onion service for testing images
1 parent 2cc8889 commit 37a4fdb

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

tools/finalize-nakamochi.sh

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@ run_main()
227227

228228
if [[ "$skip_mkp224o" -eq 0 ]]; then
229229
# generate 2 onion services, one for bitcoind and one for lnd
230-
echo -n "Generating onion services ... "
230+
echo -n "Generating bitcoind and lnd onion services ... "
231231
onion_tmp_dir="$(mktemp -d)"
232232
mkp224o -d "$onion_tmp_dir" -n 1 b
233233
mkp224o -d "$onion_tmp_dir" -n 1 l
@@ -296,6 +296,24 @@ run_main()
296296
if [[ "$skip_passwd" -eq 0 ]]; then
297297
echo "Test image root password is $root_pass, ssh root login allowed."
298298
fi
299+
if [[ "$skip_mkp224o" -eq 0 ]]; then
300+
echo -n "Creating ssh onion service ... "
301+
mkp224o -d "$onion_tmp_dir" -n 1 s
302+
mkdir -p "$SSD_MOUNT_POINT"/tor/ssh
303+
cp -r "$onion_tmp_dir"/s*/* "$SSD_MOUNT_POINT"/tor/ssh/
304+
onion_user_group="$(grep tor "$USD_MOUNT_POINT"/etc/passwd | cut -d: -f 3-4)"
305+
chown -R "$onion_user_group" "$SSD_MOUNT_POINT"/tor/ssh
306+
if ! grep -qs "HiddenServicePort 22" "$USD_MOUNT_POINT"/etc/tor/torrc; then
307+
{
308+
echo "# Hidden Service SSH server"
309+
echo "HiddenServiceDir /ssd/tor/ssh"
310+
echo "HiddenServiceVersion 3"
311+
echo "HiddenServicePort 22 127.0.0.1:22"
312+
} >> "$USD_MOUNT_POINT"/etc/tor/torrc
313+
fi
314+
echo "done."
315+
sed 's/^/SSH onion service hostname: /' < "$SSD_MOUNT_POINT/tor/ssh/hostname"
316+
fi
299317
else
300318
echo -n "Finalizing image for production ... "
301319
sed -i "s/^#?PermitRootLogin.*/PermitRootLogin no/" "$USD_MOUNT_POINT"/etc/ssh/sshd_config
@@ -334,6 +352,7 @@ run_main()
334352
echo "done."
335353
fi
336354

355+
rm -rf "$onion_tmp_dir"
337356
sync
338357
echo "All DONE, Nakamochi uSD and SSD should be ready!"
339358
}

0 commit comments

Comments
 (0)