Für den Archer C50 wurde unter
https://wiki.freifunk.net/TP-Link_Archer_C50_V4
eine gute Anleitung geschrieben. Diese funktioniert auch mit unserer Firmware.
Kopie:
Für diesen Router gibt es aufgrund lizenzrechtlicher Unklarheiten kein Factory Image.
Daher muss man folgendes tun (Anleitung für Linux):
- Die TP-Link-Firmware für den Router herunterladen. Wichtig ist es hierbei, die Version 180318 zu nehmen, die nachfolgende Version 190125 hatte bei mir Fehler verursacht (im Folgenden: tplink.bin).
- Die gewünschte Freifunk-Firmware für den Archer C50 V4 als sysupgrade-Image herunterladen (im Folgenden: ff.bin).
- Den Boot-Abschnitt aus tplink.bin herauslösen und an das Ergebnis ff.bin anhängen:
dd if=tplink.bin of=boot.bin bs=131584 count=1 cat ff.bin >> boot.bin
Die fertige boot.bin kann dann normal über das Webinterface des Routers als Firmware-Upgrade aufgespielt werden.
- Details
- Geschrieben von: Hendrik Wittig
- Kategorie: Router installieren und konfigurieren
Installationsanleitung
Download
Wichtig ist hierbei, auch die Hardware-Revision des Routers zu berücksichtigen. Die Hersteller verbauen teilweise in Router desselben Typs völlig unterschiedliche Hardware. Bei TP-Link findet man die entsprechende Angabe auf dem Typenschild auf der Unterseite:
In diesem Beispiel ist die Hardware-Revision also die 8.2, für die Auswahl der Firmware ist immer nur die Zahl vor dem Punkt relevant.
gluon-ffggrz-0.8.12-tp-link-tl-wr841n-nd-v8.bin
Firmware aufspielen
Der verwendete Computer wird über ein Netzwerkkabel mit einem der gelben Ports des Routers verbunden, der Router wird an den Strom angeschlossen:
Anschließend wird im Browser die Adresse http://192.168.0.1 aufgerufen. Daraufhin sollte sich folgendes Fenster öffnen:
Hier wird sowohl als User Name als auch als Password "admin" eingetragen und auf OK geklickt. Damit öffnet sich die Konfigurationsoberfläche des Routers:
Hier wird, wie im obigen Bild dargestellt, im linken Menü "System Tools" und darunter "Firmware Upgrade" gewählt. Mit Klick auf "Browse..." kann man die heruntergeladene Firmware-Datei auswählen, nach Klick auf "Upgrade" startet dieses. Dabei wird die Freifunk Firmware hochgeladen und installiert, bitte keinesfalls den Stecker des Routers ziehen!
Nach einiger Zeit leuchten zwei LEDs am Router. Die eine sollte regelmäßig blinken. Damit ist der Router bereit zur Konfiguration.
Konfiguration
Weiter geht es dann mit der Konfiguration der Freifunk-Firmware. Diese ist für alle unterstützten Routermodelle identisch und wird unter Router installieren und konfigurieren beschrieben.
Wiederherstellung
Falls z.B. nach einem Update am Router einmal gar nichts mehr gehen sollte, wird es Zeit für ein Recovery. Bei vielen Routern geht das nur umständlich über eine serielle Verbindung, welche ans Router-Board gelötet werden muß. Neuere TP-Link-Revisionen (beim TL-WR841N/ND definitiv ab v9, evtl. auch schon v7) beherrschen auch ein Recovery per TFTP. Das wird hier beschrieben:
Im folgenden Beispiel arbeiten wir mit einem Linux-System und dem TFTP-Server "in.tftp". Mit andern Betriebssystemen sollte das ähnlich funktionieren.
Die Wiederherstellung erfordert eine Factory-Firmware für den entsprechenden Routertyp und dessen Hardware-Revision (s.o.). Man kann dafür sowohl die Original-Firmware von TP-Link, als auch unsere Freifunk-Firmware verwenden. Die Original-Firmware kommt in einem ZIP-Archiv, daraus muß die eigentliche Firmware (Endung .bin) noch entpackt werden. Die .bin-Datei wird dann ins durch den TFTP-Server freigegebene Verzeichnis kopiert, im Beispiel "/tftproot". Je nach Routertyp muß diese Datei wie folgt umbenannte werden:
TL-WR841N/ND: | wr841nv9_tp_recovery.bin |
TL-WDR3600: | wdr3600v1_tp_recovery.bin |
Der Router wird mit einem seiner (gelben) LAN-Ports über ein Netzwerkkabel mit dem PC verbunden. Zum Einschalten wird die Reset-Taste gedrückt gehalten und der Einschalter betätigt. Danach leuchtet die Power-LED. Nach kurzer Zeit leuchtet zusätzlich eine LED auf der anderen Seite, dann kann die Reset-Taste losgelassen werden.
Der Router gibt sich selbst nun die IP-Adresse 192.168.0.86 und versucht, die o.g. Datei von einem TFTP-Server mit der IP-Adresse 192.168.0.66 herunterzuladen. Also geben wir unserem PC diese Adresse und starten den TFTP-Server:
$ sudo ip addr add 192.168.0.66/24 dev enp0s25 $ sudo in.tftpd -R 4096:32767 -s /tftproot/ -L
Im Beispiel heißt die Netzwerk-Schnittstelle des PCs "enp0s25", häufig wird das aber "eth0" sein. Der Router beginnt dann automatisch mit dem Download. Ein zum Test verwendeter TL-WR841NDv9 versuchte dies immer nur für wenige Sekunden und startete dann wieder neu. Dabei wurde auch der Netzwerk-Port deaktiviert und damit auch der des PCs. Damit geht am PC auch die eingestellte IP-Adresse wieder verloren. Man muß also nach dem Einschalten des Routers dem PC recht schnell seine IP-Adresse geben und dien TFTP-Server starten. Am besten schaltet man zwischen Router und PC noch einen Switch, dann bleibt die PC-Schnittstelle aktiv. Ein TL-WDR3600 v1.5 hatte dieses Problem dagegen nicht.
Nach dem Laden der Firmware vom TFTP-Server startet der Router mit dieser neu. War das unsere Freifunk-Firmware, kann diese nun wie oben beschrieben konfiguriert werden.
- Details
- Geschrieben von: Eric
- Kategorie: Router installieren und konfigurieren
Kurze Anleitung wie man ganz einfach einen Yubikey 4 für SSH verwendet.
Die Anleitung zielt nicht auf absolute Sicherheit ... wer Bedenken hat sollte folgende Dinge zusätzlich machen:
- offline Live-System verwenden und danach löschen
- management-Key setzen
- PINs anpassen
- den Key auf dem Sicherungs-Datenträger zusätzlich verschlüsseln
- Passphares beim SSH-Key
- den Key direkt auf den Stick erstellen (keine Backup-Möglichkeit)
Pakete installieren
sudo apt-get install yubikey-personalization yubico-piv-tool opensc pcscd
SSH-Key erstellen
Stick auf PGP umstellen:
ykpersonalize -m82
Temporäres Verzeichnis für die Schlüssel:
mkdir ~/tmp_key cd ~/tmp_key
SSH-Key generieren:
ssh-keygen -t rsa -b 2048 -f id_rsa
Den Stick mit den Schlüssel füttern:
openssl rsa -in id_rsa -out id_rsa.pem -outform pem yubico-piv-tool -a import-key -s 9a -i id_rsa.pem rm id_rsa.pem
Den Stick mit den Zertifikaten füttern (PIN ggf. anpassen):
ssh-keygen -e -f id_rsa.pub -m PKCS8 > id_rsa.pub.pkcs8 yubico-piv-tool -a verify -P 123456 -a selfsign-certificate -s 9a -S "/CN=joe/O=Test/" -i id_rsa.pub.pkcs8 -o 9a-cert.pem yubico-piv-tool -a verify -P 123456 -a import-certificate -s 9a -i 9a-cert.pem
Schauen ob alles geklappt hat:
yubico-piv-tool -a status
Die Datei "id_rsa.pub" können wir behalten, diese brauchen wir später noch.Die Dateien "id_rsa" und "id_rsa.pub" am besten auf einer Speicherkarte oder Stick speichern und sicher verwahren.Das löschen des Verzeichnis "tmp_key" auf den PC nicht vergessen:
rm -rf ~/tmp_key
SSH-Key erstellen für Paranoide
Diese Variante bietet kein Backup vom Key!
Stick auf PGP umstellen:
ykpersonalize -m82
Temporäres Verzeichnis für die Schlüssel:
mkdir ~/tmp_key cd ~/tmp_key
Schlüssel direkt auf den Stick erstellen:
yubico-piv-tool -a generate --touch-policy=always -s 9a -o public.pem
Den Stick mit den Zertifikaten füttern (PIN ggf. anpassen):
yubico-piv-tool -a verify-pin -P 123456 -a selfsign-certificate -s 9a -S "/CN=SSH key/" -i public.pem -o cert.pem yubico-piv-tool -a import-certificate -s 9a -i cert.pem
Den Public-Key generieren:
export OPENSC=$(dpkg -L opensc-pkcs11 | grep \\/opensc-pkcs11.so\\$ | head -n1 ) ssh-keygen -D $OPENSC -e
SSH-Key Anwenden
SSH-Key auf den Zielsystem installieren:
ssh-copy-id -i id_rsa.pub holy_moly_server.de
SSH-Agent starten und den Stick als Quelle angeben:
export OPENSC=$(dpkg -L opensc-pkcs11 | grep \\/opensc-pkcs11.so\\$ | head -n1 ) eval `ssh-agent -s` ssh-add -s $OPENSC
Zum Zielsystem mit den Stick verbinden:
ssh -A holy_moly_server.de
Quellen
https://wikitech.wikimedia.org/wiki/Yubikey-SSH
http://blog.rchapman.org/posts/Import_an_existing_ssh_key_into_Yubikey_NEO_applet/
- Details
- Geschrieben von: Marcus
- Kategorie: SSH
Server
libpam: ab Debian 9
sudo apt-get install libpam-ssh-agent-auth
libpam: ältere Debian-Versionen
Aktuelle Version herunter laden: https://sourceforge.net/projects/pamsshagentauth/
sudo apt-get install libpam0g-dev libssl-dev tar -xf pam_ssh_agent_auth-0.10.3.tar.bz2 cd pam_ssh_agent_auth-0.10.3 ./configure --libexecdir=/lib/security --with-mantype=man make sudo make install
Konfiguration
/etc/sudoers:
Defaults env_keep += SSH_AUTH_SOCK
/etc/pam.d/sudo:
#auth sufficient pam_ssh_agent_auth.so file=~/.ssh/authorized_keys auth sufficient pam_ssh_agent_auth.so file=/etc/ssh/sudo_authorized_keys{{{ sudo cp ~/.ssh/authorized_keys /etc/ssh/sudo_authorized_keys sudo chown root:root /etc/ssh/sudo_authorized_keys }}}
Client
{{{ eval `ssh-agent -s` ssh-add ~/.ssh/my_damn_key/id_rsa ssh -A holy_moly_server.de sudo ls }}}- Details
- Geschrieben von: Marcus
- Kategorie: SSH
In dieser Anleitung wird beschrieben, wie du ein Schlüsselpaar unter Mac OSX erstellst, was geeignet ist um SSH Zugang zu deinem Router zu bekommen. OSX bringt alle Bordmittel mit um dies zu bewerkstelligen, du brauchst also nichts zusätzlich installieren.
Kurzer Hinweis vornan
Du erzeugst mit dieser Anleitung einen öffentlichem und einen privaten RSA-Schlüssel. Der öffentliche Schlüssel kann verbreitet werden, wie beispielsweise auf deinem Freifunk-Router hinterlegt werden. Der private Schlüssel sollte geheim bleiben und nicht weiterverbreitet werden. Dieser Schlüssel sollte deshalb nicht bei online-Diensten hinterlegt werden oder über diese auf andere Geräte synchronisiert werden - Es ist dein persönliches Ausweisdokument. Beide Schlüssel bilden ein Schlüsselpaar.
Generierung des Schlüsselpaars
Zur Generierung des Schlüsselpaars benötigst du wie bereits beschrieben keine weitere Software, das Mac OSX die benötigten Komponenten bereits mitbringt. Das Terminal wird im kommenden für alles ausreichen. Starte dieses indem du Die Taste CMD+Leertaste drückst. Es erscheint die Spotlight-Suche. Gib in dieses Overlay Terminal ein und bestätige mit der Eingabetaste. Das Programm Terminal öffnet sich.
Wechsel nun als erstes in das Verzeichnis, in dem standardmäßig die persönlichen SSH-Dateien liegen. dies ist das versteckte Verzeichnis .ssh in deinem persönlichen Ordner. Gib dazu im Terminal folgenden Befehl ein:
cd ~/.ssh
Sollte der Verzeichniswechsel fehlschlagen, ist das Verzeichnis noch nicht existent und du musst es erst anlegen. Sollte das der Fall ein lege das Verzeichnis mit dem Befehl mkdir ~/.ssh an.
im Verzeichnis .ssh angekommen kannst du nun bereits den Schlüssel anlegen. Gib dazu in das Terminalfenster folgenden Befehl ein:
ssh-keygen -t rsa -b 8192
Es wird damit ein Schlüssel generiert (ssh-keygen), der den Typ RSA hat (-t rsa) und die Länge 8192 Bit besitzt (-b 8192).
Du wirst nun gefragt, wie das generierte Schlüsselpaar heißen soll und wie das Passwort für den Schlüssel sein soll. Bitte gib beides an.
Ist der Vorgang abgeschlossen kannst du in dein Terminalfenster ls -a eingeben und du wirst sehen, dass nun zwei Dateien dort zu finden sind, die den eben eingegebenen Namen tragen - das ist dein Schlüsselpaar. Einer der beiden Schlüssel trägt die Endung .pub, was dein öffentlicher Schlüssel ist, der im Router hinterlegt werden kann, der andere ist dein privater Schlüssel, der mit dem oben angegebenen Passwort geschützt ist. Fertig
Weiterarbeit mit dem Schlüssel
Den Inhalt des öffentlichen Schlüssels kannst du sehen indem du cat deinschluesselname.pub eingibst. Das Ergebnis sollte folgender Form folgen:
ssh-rsa LaNgEZeiCHEenKetteAuskleinenundGROSSENBuchStabENUndZahLEn2237682t43== IrgendeinNameDerDeinenComputerBeschreibt
Diese gesamte Zeichenkette kannst du nun im Router hinterlegen und hast damit einen SSH-Zugang zu diesem eingerichtet. Dazu setzt du deinen Router in den Konfigurationsmodus indem du die Reset-Taste ein paar Sekunden lang gedrückt hältst. Der Router startet damit neu und direkt in den Konfigurationsmodus. Verbinde deinen Mac über Ethernet (Netzwerkkabel) mit (einer) der LAN-Buchse(n) des Routers.
Gib nun im Browser die Adresse 192.168.1.1 ein. Nun öffnet sich die Konfigurationsoberfläche des Routers und du klickst oben rechts auf 'Expert Mode' und dann wählst du dort 'Remote Access' bzw. 'Remotezugriff' aus.
Jetzt kannst du den oben angezeigten öffentlichen Schlüssel in der Liste der SSH-Schlüssel in einer neuen Zeile ergänzen.
Bestätige nun mit 'Submit' bzw. 'Absenden', wechsele in der obigen freifunkmagentafarbenen Leiste in 'Wizard' und starte das Gerät neu.
Sehr einfach erreichst du nun deinen Router indem du eine SSH-Config anlegst - das wird dir das Leben deutlich erleichtern. Wie du diese ähnlich schnell wie den Schlüssel anlegst zeigt dir die Anleitung zum Anlegen einer SSH-Config unter OSX in unserem Wiki. Weil du schonmal im .ssh-Ordner bist, das so schnell geht und so nützlich ist, wird an dieser Stelle auch nicht darauf eingegangen, wie du den Router ohne SSH-Config erreichen kannst. Leg dir diese Config einfach an, spare Schreibarbeit und werde glücklich damit.
- Details
- Geschrieben von: Eric
- Kategorie: SSH