<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   >
<channel>
    
    <title>Netz - Rettung - Recht (Artikel mit Tag ssh)</title>
    <link>https://netz-rettung-recht.de/</link>
    <description>Netzleben, Rettungs- und Rechtswesen</description>
    <dc:language>de</dc:language>
    <generator>Serendipity 2.5.0 - http://www.s9y.org/</generator>
    <pubDate>Thu, 13 Sep 2018 05:47:05 GMT</pubDate>

    <image>
    <url>https://netz-rettung-recht.de/templates/2k11/img/s9y_banner_small.png</url>
    <title>RSS: Netz - Rettung - Recht - Netzleben, Rettungs- und Rechtswesen</title>
    <link>https://netz-rettung-recht.de/</link>
    <width>100</width>
    <height>21</height>
</image>

<item>
    <title>Auswahl des SSH-Ports auf Servern</title>
    <link>https://netz-rettung-recht.de/archives/2098-Auswahl-des-SSH-Ports-auf-Servern.html</link>
            <category>Bits'n'Bytes</category>
    
    <comments>https://netz-rettung-recht.de/archives/2098-Auswahl-des-SSH-Ports-auf-Servern.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2098</wfw:comment>

    <slash:comments>6</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2098</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Damit zwei Rechner über das Internet kommunizieren können, müssen sie ihre IP-Adressen kennen; will man einen bestimmten Dienst auf einem Rechner ansprechen, muss man auch den Port kennen, unter dem dieser Dienst angeboten wird. Damit das nicht zu einem Ratespiel gerät, gibt es für die meisten Dienste Standardports - der Webserver läuft auf Port 80 (kann aber auch mal auf Port 8080 oder anderswo lauschen), SMTP funktioniert über Port 25 (oder 465 oder 587), und SSH-Verbindungen werden standardgemäß auf Port 22 erwartet.&lt;/p&gt;

&lt;p&gt;Dienste auf ungewohnte Ports zu verlegen macht meist nur wenig Sinn, weil der Rest der Welt damit nicht rechnet - wer seinen SMTP-Server auf Port 2525 laufen lässt, wird nicht allzuviel Mail erhalten. Beim SSH-Dienst kann das aber schon sinnvoll sein, weil SSH-Zugänge üblicherweise nicht öffentlich verfügbar sind, und den Berechtigten kann man neben dem Hostnamen, ihrer Benutzerkennung und ggf. dem Passwort dann auch den richtigen Port mitteilen.&lt;/p&gt;

&lt;p&gt;Das erhöht natürlich nicht wirklich die Sicherheit gegen Angriffe, hatte aber über lange Jahre immerhin den Vorteil, das Logfile zu entlasten: statt Dutzender Meldungen täglich über unbefugte Zugriffsversuche auf Port 22, der routinemäßig gescannt wird, herrscht Ruhe, wenn der &lt;em&gt;sshd&lt;/em&gt; eben auf Port 2022 lauscht. Für die notwendige Sicherheit sorgt dann die Beschränkung des Zugriffs auf per SSH-Key authentifizierte Nutzer und ggf. ein Dienst wie &lt;em&gt;fail2ban&lt;/em&gt;, der nach mehreren Fehlversuchen die betreffende IP für einen beschränkten Zeitraum bereits auf Ebene der Hostfirewall blockt.&lt;/p&gt;

&lt;p&gt;Über die Jahre funktioniert dieser &amp;#8220;Trick&amp;#8221; aber immer weniger. War 2004 dann noch Ruhe im Karton (bzw. Logfile), sind mir &lt;a href=&quot;https://netz-rettung-recht.de/archives/1365-SSH-Woerterbuchangriffe-aus-den-Niederlanden.html&quot; title=&quot;&quot;&gt;2009&lt;/a&gt; bzw. &lt;a href=&quot;https://netz-rettung-recht.de/archives/1612-Brute-Force-Angriffe-gegen-Passworte.html&quot; title=&quot;&quot;&gt;2010&lt;/a&gt; bereits vereinzelte Zugriffsversuche auf den an einem nicht standardisierten Port lauschenden SSH-Server aufgefallen. Mittlerweile erfolgen Dutzende dieser Zugriffe täglich.&lt;/p&gt;

&lt;p&gt;Daher frage ich mich: lohnt es sich überhaupt noch, den &lt;em&gt;sshd&lt;/em&gt; auf einen anderen Port zu verlegen, oder kann man es bei Port 22 belassen (und sich damit die gesonderte Konfiguration des Ports in allen verwendeten Programmen und Diensten sparen)?&lt;/p&gt;

&lt;p&gt;Eine Antwort auf diese Frage hat - genau einen Tag, nachdem ich sie mir das erste Mal gestellt hatte - &lt;a href=&quot;http://felix.pfefferkorn.de/&quot; title=&quot;   Felix Pfefferkorn - Herzlich Willkommen!  &quot;&gt;Felix&lt;/a&gt; bereits auf Twitter gegeben:&lt;/p&gt;

&lt;p&gt;&lt;a class=&quot;serendipity_image_link&quot;  href=&#039;https://twitter.com/fpfka/status/1031296695676686336&#039;&gt;&lt;!-- s9ymdb:634 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;612&quot; height=&quot;238&quot;  src=&quot;https://netz-rettung-recht.de/uploads/articles/2018/fpka-2018-08-19.png&quot;  alt=&quot;&quot;&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ich möchte die Frage aber nochmals in die Runde stellen - welche Erfahrungen und Empfehlungen hat die werte Leserschaft?&lt;/p&gt;
&lt;img src=&quot;https://ssl-vg03.met.vgwort.de/na/0c2b040d58ab4922a03f7b24b65aaa71&quot; width=&quot;1&quot; height=&quot;1&quot; alt=&quot;&quot;&gt; 
    </content:encoded>

    <pubDate>Thu, 06 Sep 2018 05:50:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2098-guid.html</guid>
    <category>followerpower</category>
<category>ssh</category>

</item>
<item>
    <title>Github: alte TLS-Versionen und SSH-Algorithmen deaktiviert</title>
    <link>https://netz-rettung-recht.de/archives/2062-Github-alte-TLS-Versionen-und-SSH-Algorithmen-deaktiviert.html</link>
            <category>Bits'n'Bytes</category>
    
    <comments>https://netz-rettung-recht.de/archives/2062-Github-alte-TLS-Versionen-und-SSH-Algorithmen-deaktiviert.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=2062</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=2062</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;&lt;em&gt;Github&lt;/em&gt; hat am 22.02.2018 Änderungen an der &lt;em&gt;HTTPS&lt;/em&gt;-und &lt;em&gt;SSH&lt;/em&gt;-Konfiguration vorgenommen und ältere und weniger sichere &lt;a href=&quot;https://githubengineering.com/crypto-removal-notice/&quot; title=&quot;Redirecting&amp;hellip;&quot;&gt;Zugriffsmöglichkeiten deaktiviert&lt;/a&gt;. Das betrifft sowohl &lt;em&gt;TLS 1.0&lt;/em&gt; und &lt;em&gt;TLS 1.1&lt;/em&gt; als auch - für den &lt;em&gt;SSH&lt;/em&gt;-Schlüsselaustauch - &lt;em&gt;diffie-hellman-group1-sha1 und *diffie-hellman-group14-sha1&lt;/em&gt;. Wenn die verwendete Client-Software nicht mindestens &lt;em&gt;TLS 1.2&lt;/em&gt; bzw. einen anderen Schlüsselaustausch-Algorithmus beherrscht, muss man mithin aktiv werden.&lt;/p&gt;

&lt;p&gt;Wer - wie ich - &lt;em&gt;&lt;a href=&quot;https://gitforwindows.org/&quot; title=&quot;Git for Windows&quot;&gt;Git for Windows&lt;/a&gt;&lt;/em&gt; zusammen mit &lt;em&gt;PLink&lt;/em&gt; aus dem &lt;em&gt;Putty&lt;/em&gt;-Paket als &lt;em&gt;SSH&lt;/em&gt;-Client verwendet, bekommt sonst möglicherweise - wenn er &lt;em&gt;Putty&lt;/em&gt; länger nicht mehr geupdatet hat - beim &lt;code&gt;git pull&lt;/code&gt; oder &lt;code&gt;git push&lt;/code&gt; eine Meldung dieser Art zu sehen:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;FATAL ERROR: Couldn&#039;t agree a key exchange algorithm (available: curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Natürlich (?) hatte ich die Ankündigungen über die Änderungen bei Github nicht präsent, vermutete aber etwas in der Art - und Google führte mich nach einiger Zeit zu einem &lt;a href=&quot;https://github.com/desktop/desktop/issues/4105&quot; title=&quot;Authentication failed when pushing to my repository · Issue #4105 · desktop/desktop · GitHub&quot;&gt;Issue&lt;/a&gt; im Github-Desktop-Projekt. Und siehe da - &lt;em&gt;Putty&lt;/em&gt; kann erst ab Version &lt;em&gt;0.68&lt;/em&gt; (21.02.2017) elliptische Kurven:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;Support for elliptic-curve cryptography (the NIST curves and 25519), for host keys, user authentication keys, and key exchange.
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Ein &lt;em&gt;putty&lt;/em&gt;-Update später flutschte dann auch wieder alles.&lt;/p&gt;

&lt;p&gt;(Ab dieser Version wird allerdings ggf. eine 64bit-Version von &lt;em&gt;Putty&lt;/em&gt; installiert, die dann unter Windows nicht in &lt;code&gt;C:\Program Files (x86)&lt;/code&gt; landet, sondern in &lt;code&gt;C:\Program Files&lt;/code&gt;, so dass ggf. die Umgebungsvariable &lt;code&gt;GIT_SSH&lt;/code&gt; angepasst werden muss.)&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Tue, 03 Apr 2018 04:40:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/2062-guid.html</guid>
    <category>git</category>
<category>ssh</category>
<category>ssl</category>

</item>
<item>
    <title>Tips und Tricks für den Umgang mit git</title>
    <link>https://netz-rettung-recht.de/archives/1650-Tips-und-Tricks-fuer-den-Umgang-mit-git.html</link>
            <category>Bits'n'Bytes</category>
    
    <comments>https://netz-rettung-recht.de/archives/1650-Tips-und-Tricks-fuer-den-Umgang-mit-git.html#comments</comments>
    <wfw:comment>https://netz-rettung-recht.de/wfwcomment.php?cid=1650</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>https://netz-rettung-recht.de/rss.php?version=2.0&amp;type=comments&amp;cid=1650</wfw:commentRss>
    

    <author>nospam@example.com (Thomas Hochstein)</author>
    <content:encoded>
    &lt;p&gt;Bei meiner Arbeit mit &lt;em&gt;git&lt;/em&gt; stehe ich immer wieder vor der Frage, ob man dieses oder jenes damit nicht einfach machen können müßte. Meistens lautet die Antwort auf diese Frage &amp;quot;ja&amp;quot;, aber teilweise muß man schon etwas googeln, um diese Antwort zu finden. &lt;img src=&quot;https://netz-rettung-recht.de/plugins/serendipity_event_emoticate/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; class=&quot;emoticon&quot; /&gt; Daher möchte ich ab und an kleine ergoogelte Wissensschnippsel mit der Leserschaft teilen; vielleicht steht ja noch einmal jemand anderes vor demelben Problem (und überdies sind deutschsprachige Informationen zu &lt;em&gt;git&lt;/em&gt; nicht so wirklich umfänglich vorhanden).&lt;/p&gt;

&lt;h2&gt;Git über SSH und mehrere SSH-Keys pro Host&lt;/h2&gt;

&lt;p&gt;Mehr eine allgemeine SSH-Frage, aber da sie sich mir im Zusammenhang mit &lt;em&gt;git&lt;/em&gt; gestellt hat &amp;#8230; &lt;br /&gt;&lt;/p&gt;

&lt;p&gt;Ein beliebter Zugriffsweg auf Git-Repositories ist der über SSH, insbesondere, wenn es auch um einen schreibenden Zugang geht und man diesen authentifizieren will. Zu diesem Zweck kann man sich den passenden SSH-Schlüssel für den Zugriff auf das Git-Repository über die SSH-Konfiguration definieren, bspw. durch einen Eintrag in &lt;em&gt;~/.ssh/config&lt;/em&gt; wie den folgenden:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;Host git.example.org
Port 2022
IdentityFile ~/.ssh/gitkey
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;SSH-Zugriffe auf den Server &amp;quot;git.example.org&amp;quot;&amp;#160; erfolgen also auf Port 2022 (statt 22) und unter Verwendung des Schlüssels &amp;quot;gitkey&amp;quot;. Der Git-Zugriff via SSH berücksichtigt diese Einstellungen dann automatisch.&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;Was aber tun, wenn man von demselben Client mit mehreren verschiedenen SSH-Schlüsseln auf denselben Server zugreifen muß, wie es insbesondere bei der Verwendung von Tools wie &lt;em&gt;gitosis&lt;/em&gt; auf der Serverseite vorkommen kann? Dieselbe Frage stellt sich natürlich, wenn man sich neben dem Zugriff auf ein Git-Repository auch ganz normal per SSH auf dem Server einloggen können will. Auf die obige Art und Weise läßt sich nur ein Key für den Zugriff auf &amp;quot;git.example.org&amp;quot; vordefinieren - und will man wirklich immer einen abweichenden Schlüssel per Option angeben? Eine Lösung wäre die Vergabe von weiteren CNAMEs im DNS für git.example.org, aber das skaliert auf die Dauer auch nicht.&lt;/p&gt;

&lt;p&gt;Die einfachste Lösung dafür bieten Aliase direkt in der SSH-Konfiguration, wie das Git-Wiki &lt;a href=&quot;https://git.wiki.kernel.org/index.php/GitTips#How_to_pass_ssh_options_in_git.3F&quot; title=&quot;301 Moved Permanently&quot;&gt;empfiehlt&lt;/a&gt;:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;Host private.example.com
    User myname
    Hostname git.example.com
    IdentityFile ~/.ssh/private-identity
Host public.example.com
    User groupname
    Hostname git.example.com
    IdentityFile ~/.ssh/public-identity
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Auf diese Art und Weise kann man denselben Server mit zwei verschiedenen Konfigurationen ansprechen.&lt;br /&gt;&lt;/p&gt;

&lt;h2&gt;Übernahme einer einzelnen Datei aus einem anderen Branch&lt;br /&gt;&lt;/h2&gt;

&lt;p&gt;Alle Änderungen aus einem anderen Entwicklungszweig zu übernehmen ist einfach und geht per &lt;em&gt;merge&lt;/em&gt;; nur bestimmte Änderungen (&lt;em&gt;commits&lt;/em&gt;) zu übernehmen funktioniert via &lt;em&gt;cherry-pick&lt;/em&gt;. (Warum auch immer das Rosinenpicken der Deutschen dem Angelsachsen ein Picken nach Kirschen ist &amp;#8230;) Aber wie kann man eine bestimmte Datei - also alle Änderungen, aber nur die in einer bestimmten Datei - aus einem anderen Branch übernehmen?&lt;/p&gt;

&lt;p&gt;Zu dieser Frage hat Jason Rudolph die passende &lt;a href=&quot;http://jasonrudolph.com/blog/2009/02/25/git-tip-how-to-merge-specific-files-from-another-branch/&quot; title=&quot;301 Moved Permanently&quot;&gt;Antwort&lt;/a&gt;: das geht mit &lt;em&gt;git-checkout&lt;/em&gt;, und zwar in der Form &lt;em&gt;git checkout $branch $path&lt;/em&gt;. Nehmen wir an, ich möchte die Fassung der Datei &amp;quot;README&amp;quot; aus dem Branch &amp;quot;test&amp;quot; in meinen Branch &amp;quot;master&amp;quot; übernehmen, aber eben nur diese Datei in genau dem Zustand, den sie im &amp;quot;test&amp;quot;-Branch hat. Das geht dann folgendermaßen:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;git checkout master
git checkout test README
git commit -m &#039;Imported README from test branch&#039;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Genauso funktioniert das natürlich mit mehreren Dateien:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;git checkout test README doc/explanation.txt doc/TODO
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Voilà. Soviel für heute. &lt;img src=&quot;https://netz-rettung-recht.de/plugins/serendipity_event_emoticate/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt; &lt;br /&gt;&lt;/p&gt;
&lt;img src=&quot;https://ssl-vg03.met.vgwort.de/na/b0f5095597b5454285c7cf88fcaebdaf&quot; width=&quot;1&quot; height=&quot;1&quot; alt=&quot;&quot;&gt; 
    </content:encoded>

    <pubDate>Wed, 12 Jan 2011 16:30:00 +0000</pubDate>
    <guid isPermaLink="false">https://netz-rettung-recht.de/archives/1650-guid.html</guid>
    <category>git</category>
<category>gitosis</category>
<category>ssh</category>

</item>

</channel>
</rss>
