diff --git a/dot_ssh/executable_unb_hosts.py b/dot_ssh/executable_unb_hosts.py new file mode 100644 index 0000000..d71277e --- /dev/null +++ b/dot_ssh/executable_unb_hosts.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python + +# External proxy hardcoded for UNB +# fcslinux.cs.unb.ca +proxy_url = "fcslinux.cs.unb.ca" + +# https://www.cs.unb.ca/help/ssh-help.shtml +# Remote Labs - 70 machines (remotelabm01 - remotelabm70) +# GC112 - 70 machines (gc112m01 - gc112m70) +# GC127A - 15 machines (gc127m01 - gc127m15) +# GD124 - 10 machines (gd124m01 - gd124m10) +# ITD414 - 50 machines (id414m01 - id414m50) +# ITD415 - 50 machines (id415m01 - id415m50) + +# prefix: range +machines = { + "remotelabm": 70, + "gc112m": 70, + "gc127m": 15, + "gd124m": 10, + "id414m": 50, + "id415m": 50, +} + +# Username of UNB FCS account +username = "ishoebot" + +# Example of a config unit +# Host remotelabm01.cs.unb.ca +# \tUser +# \tProxyJump + +# Write the config units to a file named config_unb +# with open("config_unb", "w") as f: +# for prefix, count in machines.items(): +# for i in range(1, count + 1): +# # Make sure index is 2 digit padded with 0 +# index = str(i).zfill(2) +# f.write(f"Host {prefix}{index}.cs.unb.ca\n") +# f.write(f"\tUser {username}\n") +# f.write(f"\tProxyJump {proxy_url}\n") + +# For tab completion +with open("unb_hosts", "w") as f: + for prefix, count in machines.items(): + for i in range(1, count + 1): + # Make sure index is 2 digit padded with 0 + index = str(i).zfill(2) + f.write(f"Host {prefix}{index}.cs.unb.ca\n") \ No newline at end of file diff --git a/dot_ssh/private_config b/dot_ssh/private_config index 9c12edf..156ded6 100644 --- a/dot_ssh/private_config +++ b/dot_ssh/private_config @@ -1,60 +1,38 @@ -Host fcslinux.cs.unb.ca - Hostname fcslinux.cs.unb.ca - User ishoebot - Port 22 - IdentityFile ~/.ssh/unb.ed25519 - AddKeysToAgent yes - ForwardAgent yes - -Host remotelab34.cs.unb.ca - Hostname remotelabm34.cs.unb.ca - User ishoebot - Port 22 - IdentityFile ~/.ssh/unb.ed25519 - ProxyCommand ssh -q -W %h:%p fcslinux.cs.unb.ca - -Host remotelabm34.cs.unb.ca - Hostname remotelabm34.cs.unb.ca - User ishoebot - Port 22 - IdentityFile ~/.ssh/unb.ed25519 - -Host remotelab35.cs.unb.ca - Hostname remotelabm35.cs.unb.ca - User ishoebot - Port 22 - IdentityFile ~/.ssh/unb.ed25519 - ProxyCommand ssh -q -W %h:%p fcslinux.cs.unb.ca - -Host remotelabm35.cs.unb.ca - Hostname remotelabm35.cs.unb.ca - User ishoebot - Port 22 - IdentityFile ~/.ssh/unb.ed25519 - -Host cs3103.cs.unb.ca - Hostname cs3103.cs.unb.ca - User ishoebot - Port 22 - IdentityFile ~/.ssh/unb.ed25519 - ProxyCommand ssh -q -W %h:%p fcslinux.cs.unb.ca +# For UNB host tab completion +Include unb_hosts +# Personal webserver Host ssh.shoebottom.ca User isaac Port 2222 IdentityFile ~/.ssh/ubuntu.ed25519 AddKeysToAgent yes +# Bastion host for the CS department +Host fcslinux.cs.unb.ca + User ishoebot + IdentityFile ~/.ssh/unb.ed25519 + AddKeysToAgent yes + ForwardAgent yes + +# Individual hosts for the CS department +Host *m??.cs.unb.ca + User ishoebot + ProxyJump fcslinux.cs.unb.ca + +# GitHub ssh commits Host github.com User git IdentityFile ~/.ssh/git.ed25519 AddKeysToAgent yes +# Gitea ssh commits Host git.shoebottom.ca User gitea IdentityFile ~/.ssh/git.ed25519 AddKeysToAgent yes +# AUR ssh commits Host aur.archlinux.org User aur IdentityFile ~/.ssh/aur.ed25519 diff --git a/dot_ssh/unb_hosts b/dot_ssh/unb_hosts new file mode 100644 index 0000000..2ac1661 --- /dev/null +++ b/dot_ssh/unb_hosts @@ -0,0 +1,265 @@ +Host remotelabm01.cs.unb.ca +Host remotelabm02.cs.unb.ca +Host remotelabm03.cs.unb.ca +Host remotelabm04.cs.unb.ca +Host remotelabm05.cs.unb.ca +Host remotelabm06.cs.unb.ca +Host remotelabm07.cs.unb.ca +Host remotelabm08.cs.unb.ca +Host remotelabm09.cs.unb.ca +Host remotelabm10.cs.unb.ca +Host remotelabm11.cs.unb.ca +Host remotelabm12.cs.unb.ca +Host remotelabm13.cs.unb.ca +Host remotelabm14.cs.unb.ca +Host remotelabm15.cs.unb.ca +Host remotelabm16.cs.unb.ca +Host remotelabm17.cs.unb.ca +Host remotelabm18.cs.unb.ca +Host remotelabm19.cs.unb.ca +Host remotelabm20.cs.unb.ca +Host remotelabm21.cs.unb.ca +Host remotelabm22.cs.unb.ca +Host remotelabm23.cs.unb.ca +Host remotelabm24.cs.unb.ca +Host remotelabm25.cs.unb.ca +Host remotelabm26.cs.unb.ca +Host remotelabm27.cs.unb.ca +Host remotelabm28.cs.unb.ca +Host remotelabm29.cs.unb.ca +Host remotelabm30.cs.unb.ca +Host remotelabm31.cs.unb.ca +Host remotelabm32.cs.unb.ca +Host remotelabm33.cs.unb.ca +Host remotelabm34.cs.unb.ca +Host remotelabm35.cs.unb.ca +Host remotelabm36.cs.unb.ca +Host remotelabm37.cs.unb.ca +Host remotelabm38.cs.unb.ca +Host remotelabm39.cs.unb.ca +Host remotelabm40.cs.unb.ca +Host remotelabm41.cs.unb.ca +Host remotelabm42.cs.unb.ca +Host remotelabm43.cs.unb.ca +Host remotelabm44.cs.unb.ca +Host remotelabm45.cs.unb.ca +Host remotelabm46.cs.unb.ca +Host remotelabm47.cs.unb.ca +Host remotelabm48.cs.unb.ca +Host remotelabm49.cs.unb.ca +Host remotelabm50.cs.unb.ca +Host remotelabm51.cs.unb.ca +Host remotelabm52.cs.unb.ca +Host remotelabm53.cs.unb.ca +Host remotelabm54.cs.unb.ca +Host remotelabm55.cs.unb.ca +Host remotelabm56.cs.unb.ca +Host remotelabm57.cs.unb.ca +Host remotelabm58.cs.unb.ca +Host remotelabm59.cs.unb.ca +Host remotelabm60.cs.unb.ca +Host remotelabm61.cs.unb.ca +Host remotelabm62.cs.unb.ca +Host remotelabm63.cs.unb.ca +Host remotelabm64.cs.unb.ca +Host remotelabm65.cs.unb.ca +Host remotelabm66.cs.unb.ca +Host remotelabm67.cs.unb.ca +Host remotelabm68.cs.unb.ca +Host remotelabm69.cs.unb.ca +Host remotelabm70.cs.unb.ca +Host gc112m01.cs.unb.ca +Host gc112m02.cs.unb.ca +Host gc112m03.cs.unb.ca +Host gc112m04.cs.unb.ca +Host gc112m05.cs.unb.ca +Host gc112m06.cs.unb.ca +Host gc112m07.cs.unb.ca +Host gc112m08.cs.unb.ca +Host gc112m09.cs.unb.ca +Host gc112m10.cs.unb.ca +Host gc112m11.cs.unb.ca +Host gc112m12.cs.unb.ca +Host gc112m13.cs.unb.ca +Host gc112m14.cs.unb.ca +Host gc112m15.cs.unb.ca +Host gc112m16.cs.unb.ca +Host gc112m17.cs.unb.ca +Host gc112m18.cs.unb.ca +Host gc112m19.cs.unb.ca +Host gc112m20.cs.unb.ca +Host gc112m21.cs.unb.ca +Host gc112m22.cs.unb.ca +Host gc112m23.cs.unb.ca +Host gc112m24.cs.unb.ca +Host gc112m25.cs.unb.ca +Host gc112m26.cs.unb.ca +Host gc112m27.cs.unb.ca +Host gc112m28.cs.unb.ca +Host gc112m29.cs.unb.ca +Host gc112m30.cs.unb.ca +Host gc112m31.cs.unb.ca +Host gc112m32.cs.unb.ca +Host gc112m33.cs.unb.ca +Host gc112m34.cs.unb.ca +Host gc112m35.cs.unb.ca +Host gc112m36.cs.unb.ca +Host gc112m37.cs.unb.ca +Host gc112m38.cs.unb.ca +Host gc112m39.cs.unb.ca +Host gc112m40.cs.unb.ca +Host gc112m41.cs.unb.ca +Host gc112m42.cs.unb.ca +Host gc112m43.cs.unb.ca +Host gc112m44.cs.unb.ca +Host gc112m45.cs.unb.ca +Host gc112m46.cs.unb.ca +Host gc112m47.cs.unb.ca +Host gc112m48.cs.unb.ca +Host gc112m49.cs.unb.ca +Host gc112m50.cs.unb.ca +Host gc112m51.cs.unb.ca +Host gc112m52.cs.unb.ca +Host gc112m53.cs.unb.ca +Host gc112m54.cs.unb.ca +Host gc112m55.cs.unb.ca +Host gc112m56.cs.unb.ca +Host gc112m57.cs.unb.ca +Host gc112m58.cs.unb.ca +Host gc112m59.cs.unb.ca +Host gc112m60.cs.unb.ca +Host gc112m61.cs.unb.ca +Host gc112m62.cs.unb.ca +Host gc112m63.cs.unb.ca +Host gc112m64.cs.unb.ca +Host gc112m65.cs.unb.ca +Host gc112m66.cs.unb.ca +Host gc112m67.cs.unb.ca +Host gc112m68.cs.unb.ca +Host gc112m69.cs.unb.ca +Host gc112m70.cs.unb.ca +Host gc127m01.cs.unb.ca +Host gc127m02.cs.unb.ca +Host gc127m03.cs.unb.ca +Host gc127m04.cs.unb.ca +Host gc127m05.cs.unb.ca +Host gc127m06.cs.unb.ca +Host gc127m07.cs.unb.ca +Host gc127m08.cs.unb.ca +Host gc127m09.cs.unb.ca +Host gc127m10.cs.unb.ca +Host gc127m11.cs.unb.ca +Host gc127m12.cs.unb.ca +Host gc127m13.cs.unb.ca +Host gc127m14.cs.unb.ca +Host gc127m15.cs.unb.ca +Host gd124m01.cs.unb.ca +Host gd124m02.cs.unb.ca +Host gd124m03.cs.unb.ca +Host gd124m04.cs.unb.ca +Host gd124m05.cs.unb.ca +Host gd124m06.cs.unb.ca +Host gd124m07.cs.unb.ca +Host gd124m08.cs.unb.ca +Host gd124m09.cs.unb.ca +Host gd124m10.cs.unb.ca +Host id414m01.cs.unb.ca +Host id414m02.cs.unb.ca +Host id414m03.cs.unb.ca +Host id414m04.cs.unb.ca +Host id414m05.cs.unb.ca +Host id414m06.cs.unb.ca +Host id414m07.cs.unb.ca +Host id414m08.cs.unb.ca +Host id414m09.cs.unb.ca +Host id414m10.cs.unb.ca +Host id414m11.cs.unb.ca +Host id414m12.cs.unb.ca +Host id414m13.cs.unb.ca +Host id414m14.cs.unb.ca +Host id414m15.cs.unb.ca +Host id414m16.cs.unb.ca +Host id414m17.cs.unb.ca +Host id414m18.cs.unb.ca +Host id414m19.cs.unb.ca +Host id414m20.cs.unb.ca +Host id414m21.cs.unb.ca +Host id414m22.cs.unb.ca +Host id414m23.cs.unb.ca +Host id414m24.cs.unb.ca +Host id414m25.cs.unb.ca +Host id414m26.cs.unb.ca +Host id414m27.cs.unb.ca +Host id414m28.cs.unb.ca +Host id414m29.cs.unb.ca +Host id414m30.cs.unb.ca +Host id414m31.cs.unb.ca +Host id414m32.cs.unb.ca +Host id414m33.cs.unb.ca +Host id414m34.cs.unb.ca +Host id414m35.cs.unb.ca +Host id414m36.cs.unb.ca +Host id414m37.cs.unb.ca +Host id414m38.cs.unb.ca +Host id414m39.cs.unb.ca +Host id414m40.cs.unb.ca +Host id414m41.cs.unb.ca +Host id414m42.cs.unb.ca +Host id414m43.cs.unb.ca +Host id414m44.cs.unb.ca +Host id414m45.cs.unb.ca +Host id414m46.cs.unb.ca +Host id414m47.cs.unb.ca +Host id414m48.cs.unb.ca +Host id414m49.cs.unb.ca +Host id414m50.cs.unb.ca +Host id415m01.cs.unb.ca +Host id415m02.cs.unb.ca +Host id415m03.cs.unb.ca +Host id415m04.cs.unb.ca +Host id415m05.cs.unb.ca +Host id415m06.cs.unb.ca +Host id415m07.cs.unb.ca +Host id415m08.cs.unb.ca +Host id415m09.cs.unb.ca +Host id415m10.cs.unb.ca +Host id415m11.cs.unb.ca +Host id415m12.cs.unb.ca +Host id415m13.cs.unb.ca +Host id415m14.cs.unb.ca +Host id415m15.cs.unb.ca +Host id415m16.cs.unb.ca +Host id415m17.cs.unb.ca +Host id415m18.cs.unb.ca +Host id415m19.cs.unb.ca +Host id415m20.cs.unb.ca +Host id415m21.cs.unb.ca +Host id415m22.cs.unb.ca +Host id415m23.cs.unb.ca +Host id415m24.cs.unb.ca +Host id415m25.cs.unb.ca +Host id415m26.cs.unb.ca +Host id415m27.cs.unb.ca +Host id415m28.cs.unb.ca +Host id415m29.cs.unb.ca +Host id415m30.cs.unb.ca +Host id415m31.cs.unb.ca +Host id415m32.cs.unb.ca +Host id415m33.cs.unb.ca +Host id415m34.cs.unb.ca +Host id415m35.cs.unb.ca +Host id415m36.cs.unb.ca +Host id415m37.cs.unb.ca +Host id415m38.cs.unb.ca +Host id415m39.cs.unb.ca +Host id415m40.cs.unb.ca +Host id415m41.cs.unb.ca +Host id415m42.cs.unb.ca +Host id415m43.cs.unb.ca +Host id415m44.cs.unb.ca +Host id415m45.cs.unb.ca +Host id415m46.cs.unb.ca +Host id415m47.cs.unb.ca +Host id415m48.cs.unb.ca +Host id415m49.cs.unb.ca +Host id415m50.cs.unb.ca