Entries tagged ssh

Use ssh-agent for atom.io remote-sync under MacOS

Posted on 22. Januar 2017 Comments

If you use the IDE atom.io with some sort of remote sync/scp/sftp package you can’t just use ssh-keys out of the box, if you set them up with a passphrase (which you should!). Here’s the 3 options most plugins offer:

  1. Use password (unless you disabled the option on the server)
  2. Use ssh-key
  3. Use ssh-agent

The problem with #2 is, that you would have to save your passphrase in a clear-text file which is never a good idea. But you can use the ssh-agent on MacOS the following way:

  1. create a ~/.ssh/config file
  2. add this line: AddKeysToAgent yes
  3. $ ssh-add .ssh/id_rsa
  4. restart atom

Mit acp_commander root Zugriff auf Buffalo TeraStation Pro

Posted on 9. Februar 2012 Comments

Bei der Arbeit haben wir eine TeraStation Pro II und eine TeraStation Live. Dort kommt man leider nur per Web-Interface drauf, wir brauchten aber root haben also hab ich mich mal umgeguckt. Man kann natürlich die Firmware flashen, aber es geht auch noch einfacher. Mit dem Tool acp_commander und ein paar Linux-Befehlen kann man sich ebenfalls root Zugriff verschaffen.

Bei der TeraStation Live klappte folgendes:

java -jar acp_commander -t IPADRESSE -o

Vorrausgesetzt ist natürlich eine funktioniernde Java Installation. Wenn das unter Windows geschieht, muss das bin-Verzechnis der Java Installation im PATH sein(war bei mir nicht standardmässig der Fall). Für IPADRESSE ist die IP-Adresse des Geräts einzusetzen(wird evtl. auf Display angezeigt).

Wenn man folgende Meldung bekommt, sollte man der TeraStation eine statische IP geben, dem PC ebenfalls und die dann einfach direkt verbinden, denn irgendwas ist in den Router/W-LAN Einstellungen nicht in Ordnung bzw. zu restriktiv:

A SocketTimeoutException usually indicates bad firewall settings.
Check especially for *UDP* port 22936 and make sure that the connection to your LS is working.
ERROR: Exception: SocketTimeoutException (Receive timed out) [ACP Send/Receive (Packet:8020 = ACP_Discover)]

Wenn alles geklappt hat, kann man sich mit root und keinem Passwort über telnet anmelden:

telnet -l root IPADRESSE

oder über putty(telnet auswählen, Standard ist natürlich SSH). Jetzt kann man SSH nach belieben in /etc/sshd_config konfigurieren und dann mit /etc/init.d/ssh restart neustarten.

Die andere Kiste war nicht ganz so einfach zu öffnen, hier braucht man ein paar Linux-Befehle:

Setzen eines neuen root Passworts:

java -jar acp_commander.jar -t IPADRESSE -ip IPADRESSE -pw ADMINPASS -c "(echo ADMINPASS;echo ADMINPASS)|passwd"

Schaltet die Authentifizierung über PAM via SSH wieder an:

java -jar acp_commander.jar -t IPADRESSE -ip IPADRESSE -pw ADMINPASS  -c "sed -i 's/UsePAM yes/UsePAM no/g' /etc/sshd_config"

Einstellung in der /etc/sshd_config, dass sich auch root direkt anmelden kann und nicht über su ein User zum root wird(gibt es unter busybox wohl nicht):

java -jar acp_commander.jar -t IPADRESSE -ip IPADRESSE -pw ADMINPASS -c "sed -i 's/PermitRootLogin no/PermitRootLogin yes/g' /etc/sshd_config"

Zu guter Letzt: SSH Server neu starten

java -jar acp_commander.jar -t IPADRESSE -ip IPADRESSE -pw ADMINPASS -c "/etc/init.d/sshd.sh restart"

Für ADMINPASS ist jeweils das Administratorpassowort einzusetzen und für IPADRESSE die IP-Adresse(s.o.). Auch hier muss der UDP Port frei sein, also am besten direkt über statische IPs mit nem Kabel von Computer zu TeraStation verbinden.

Man findet sonst auch noch interessante Informationen auf cpradio.org.

Credits to BigDiver und eine andere Quelle, die ich gerade nicht mehr wiederfinde.

DynDNS auf OpenWrt mit updatedd

Posted on 24. Juli 2011 Comments

Nachdem ich mir irgendwie LuCI und Webif² zerschossen habe auf meinem WRT54GL und mein DynDNS nicht mehr funktionierte, musste ich das ja irgendwie über SSH wieder anstellen. Es hat mich einige Zeit gekostet das passende Programm zu finden. Auf einer Website fand ich den Hinweis, dass es sich hierbei um updatedd handelt, einfach mal eingetippt bekam ich die folgende Meldung:

root@router:/usr/bin# updatedd --help

Usage: updatedd [OPTION]... SERVICE -- ...

Please use `updatedd-wrapper' instead of updatedd.

Options:
-L        list installed plugins (services) and exit
-Y        use syslog
--help    print help and exit
--version    print version information and exit

Report bugs to <updatedd@philipp-benner.de>.

Mit updatedd -L bekommt man zu sehen, welcher Service installiert ist.

root@router:/usr/bin# updatedd -L

Services:
dyndns

Die Zugangsdaten für den DynDNS Account liegen in /etc/config/updatedd:

config 'updatedd'
	option 'service' 'dyndns'
	option 'username' 'alice'
	option 'password' 'secret'
	option 'host' 'bob.dyndns.org'
	option 'update' '1'

Denke mal der Aufbau ist selbsterklärend. Wenn man sich ein bisschen umguckt, findet man auch noch die Datei /etc/init.d/updatedd, die man, entgegen des Hinweises von updatedd, updatedd-wrapper zu benutzen, startet, den Service zu updaten:

root@router:/# /etc/init.d/updatedd start
Connecting to checkip.dyndns.org (1.2.3.4:80)
updatedd_ip_check    100% |*******************************|   104  --:--:-- ETA

bzw.

/etc/init.d/updatedd enable

für den Autostart.