Intern Diskussion:Server HTW Dresden

Aus Wiki StuRa HTW Dresden
Zur Navigation springen Zur Suche springen

easterhegg 3182

Bespaßung auf dem rob bei rawa
Sachen speziell zur Fakultät Bauingenieurwesen/Architektur
Noten an der Fakultät Bauingenieurwesen/Architektur
cat /home/rex/fb/rawa/public_html/cgi-bin/bau/noten_alle.txt
ls -al /home/rex/fb/rawa/datf/wazlawek/
Passwörter für Noten an der Fakultät Bauingenieurwesen/Architektur
cat /home/rex/fb/rawa/public_html/cgi-bin/bau/not_pw.txt
less /home/rex/fb/rawa/public_html/cgi-bin/bau/not_fak_t3.cgi
festes salt ab?!
Prüfungen melden
less /home/rex/fb/rawa/public_html/cgi-bin/zu/prfer_nw.php
cat /home/rex/fb/rawa/public_html/cgi-bin/nw_prfung_ein.csv
cat /home/rex/fb/rawa/public_html/cgi-bin/nw_prfung.csv
Schutz vom Ordner cgi-bin/zu/nw_pr/
cat /home/rex/fb/rawa/public_html/cgi-bin/zu/nw_pr/.htaccess
cat /home/rex/fb/rawa/passen
nw-admin:T0Wx8SHx8CisM
Zuordnen einer Matrikelnummer zu einer Studiengruppe
less /home/rex/fb/rawa/public_html/cgi-bin/auf/raiplan.php
cat /home/rex/fb/rawa/public_html/cgi-bin/auf/raimsti_neu.csv | grep <matrikelnummer>
<Studiengruppe>,<Matrikelnummer>,<Studienjahrgang>,<Studiengang><Studienabschluss>,<Verlust des Studentenausweises>,<Immatrikulationsjahr>,1
Studiengruppe Studiengruppe innerhalb des Studiengangs (und Jahrgangs) einstellig
,
Matrikelnummer fünfstellig
,
Studienjahrgang Kalenderjahr des Jahrgangs zweistellig
Nummer des Studiengangs zweistellig Art des Studienabschlusses | einstellig
,
Verlust des Studentenausweises Anzahl des Verlustes der Karte des Studentenausweises inhaltslos oder einstellig (aber vielleicht auch mehr)
,
Jahr der Studienordnung Jahr des Erlasses der zu verwendenden Studienordnung (Zeitpunkt der Immatrikulation) vierstellig
,
1

Bereitstellen der Mail-Adressen, untergliedert nach Fakultäten

works for me
(auf dem rob, beispielsweise als Account fsr_wiwi)
dir=$HOME/public_html/dir
#rm -rf ${dir}
mkdir -p ${dir}
####    Zuweisen des auffindbaren Buchstabens fuer die 8 Fakultaeten
for i in $(seq 1 8)
do
        case $i in
                1)
####    Bau
                        fak="b";;
                2)
####    ET
                        fak="e";;
                3)
####    LaUCh
                        fak="l";;
                4)
####    Info
                        fak="i";;
                5)
####    GI
                        fak="v";;
                6)
####    MBau
                        fak="m";;
                7)
####    WiWi
                        fak="w";;
                8)
####    Design
                        fak="g";;
                *)
####    sonstiges (Fehler)
                        echo "w00t?";;
        esac
####    besonderer Fall der Untergliederung bei der Fakultaet Informatik/Mathematik
        if [ "$fak" = "i" ]
                then
####v   be
#               for j in $(seq 1 4)
#               do
#                       case $j in
#                               1)
#                                       fak="ia";;
#                               2)
#                                       fak="im";;
#                               3)
#                                       fak="iw";;
#                               4)
#                                       fak="iv";;
#                       esac
#               done
####v   en
#               touch ${dir}/${i}
                getent group | grep "^${fak}.[1-2][0-9]:" > ${dir}/${i}
        else
                getent group | grep "^${fak}[1-2][0-9]:" > ${dir}/${i}
        fi
####    Aenderung der Berechtigungen, sodass der web server sie ausliefern kann
        chmod 644 ${dir}/*
####    Entfernen der Inhalte, die vor der Aufzaehlung der Accounts stehen
####    ####    Entfernung aller Inhalte vor dem letzen ':' aller Zeile
        sed -i 's/^.*://g' ${dir}/${i}
####    Entfernen aller (entstanden) Leerzeilen
####    ####    Entfernung aller Leerzeilen
        awk -i inplace NF ${dir}/${i}
####    Ersetzen der Zeilenumbrueche (Ende der Zeile) durch eine Trennung ','
        sed -z -i 's/\n/,/g' ${dir}/${i}
####    Ersetzen aller Trennungen ',' zwischen den Accounts mit der Endung fuer die Mail-Adresse und einen Zeilenumbruch am Ende
        sed -z -i 's/,/@htw-dresden.de\n/g' ${dir}/${i}
done

cleanup
(auf dem rob, mit den zuvor verwendeten Account)
rm ~/public_html/dir/*

Bereitstellen der Mail-Adressen aller Angestellten (der Fakultäten und der Hochschulverwaltung)

works for me
(auf dem rob, beispielsweise als Account fsr_wiwi)
dir=$HOME/public_html/dir
rm -rf ${dir}
mkdir -p ${dir}
####    Zuweisen des auffindbaren Buchstabens fuer die 8 Fakultaeten
getent group | grep "^hv:" > ${dir}/ma
for i in $(seq 1 8)
do
        case $i in
                1)
####    Bau
                        fak="b";;
                2)
####    ET
                        fak="e";;
                3)
####    LaUCh
                        fak="l";;
                4)
####    Info
                        fak="i";;
                5)
####    GI
                        fak="v";;
                6)
####    MBau
                        fak="m";;
                7)
####    WiWi
                        fak="w";;
                8)
####    Design
                        fak="g";;
                *)
####    sonstiges (Fehler)
                        echo "w00t?";;
        esac
        getent group | grep "^f${fak}:" >> ${dir}/ma
done
####    Entfernen der Inhalte, die vor der Aufzaehlung der Accounts stehen
####    ####    Entfernung aller Inhalte vor dem letzen ':' aller Zeile
        sed -i 's/^.*://g' ${dir}/ma
####    Entfernen aller (entstanden) Leerzeilen
####    ####    Entfernung aller Leerzeilen
        awk -i inplace NF ${dir}/ma
####    Ersetzen der Zeilenumbrueche (Ende der Zeile) durch eine Trennung ','
        sed -z -i 's/\n/,/g' ${dir}/ma
####    Ersetzen aller Trennungen ',' zwischen den Accounts mit der Endung fuer die Mail-Adresse und einen Zeilenumbruch am Ende
        sed -z -i 's/,/@htw-dresden.de\n/g' ${dir}/ma
####    Aenderung der Berechtigungen, sodass der web server sie ausliefern kann
        chmod 644 ${dir}/*
works for me
(auf dem Server/Mailman (srs14), mit einem Account der administrative Berechtigungen (mit sudo erlangen kann))
Es sind (zuvor) entsprechende Mail-Verteiler (mailman) anzulegen.
src=www2.htw-dresden.de/~fsr_wiwi/dir
wget  https://${src}/ma
sudo /usr/local/mailman/bin/add_members\
	--regular-members-file=./ma\
	--welcome-msg=n\
#	--admin-notify=n\
	ma.htw-dresden.de

cleanup
(auf dem rob, mit den zuvor verwendeten Account)
rm ~/public_html/dir/*

Erstellen einer eigenen Datenbank aller Account von uns Studentinnen

Exportieren
hostname
rob

Auslesen aller "frei" zugänglichen Informationen von Einträgen per LDAP, die als student angehörig sind

ldapsearch -x -LLL -b "dc=htw-dresden,dc=de" "eduPersonAffiliation=student"
ldapsearch -x -LLL -H ldap://141.56.15.38 -b "dc=htw-dresden,dc=de" "eduPersonAffiliation=student"
ldapsearch -x -LLL -H ldap://141.56.15.40 -b "dc=htw-dresden,dc=de" "eduPersonAffiliation=student"
ldapsearch -x -LLL -b "eduPersonAffiliation=student"
dn: uid=s77991,ou=people,dc=htw-dresden,dc=de
uid: s77991
cn: Stephan Rankl
givenName: Stephan
sn: Rankl
mail: s77991@htw-dresden.de
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: eduPerson
objectClass: dfnEduPerson
objectClass: schacPersonalCharacteristics
objectClass: schacLinkageIdentifiers
objectClass: posixAccount
objectClass: top
loginShell: /bin/bash
uidNumber: 72778
gidNumber: 72700
homeDirectory: /home/rex/fw/w17/s77991
gecos: Stephan Rankl
l: Dresden
o: HTW Dresden
ou: wiwi
eduPersonPrincipalName: s77991@htw-dresden.de
eduPersonAffiliation: student
eduPersonTargetedID: 77991

Auslesen von den Klassen für Objekte (und Schema)

testen vom anmelden beim server für datenbanken mit herumliegenden zugangsdaten

passwort (von einem wohl versehentlich abgelegten passwort) lesen, um es nachfolgend verwenden zu können

grep password /home/rex/fi2/mschnitt/public_html/phpMyAdmin/config.inc.php
grep host /home/rex/fi2/mschnitt/public_html/phpMyAdmin/config.inc.php exit
grep user /home/rex/fi2/mschnitt/public_html/phpMyAdmin/config.inc.php exit

testweise anmelden bei der zentralen instanz für datenbanken für mysql

mysql -h rdbs.rz.htw-dresden.de -u mschnitt -p
exit

testweise ausgeben vom inhalt aller datenbanken (ohne speicherndes umlenken) bei der zentralen instanz für datenbanken für mysql

mysqldump -u mschnitt -h rdbs.rz.htw-dresden.de -p --all-databases