{"id":18,"date":"2017-07-23T13:50:29","date_gmt":"2017-07-23T11:50:29","guid":{"rendered":"https:\/\/linux.netreaper.de\/?p=18"},"modified":"2017-07-23T21:13:51","modified_gmt":"2017-07-23T19:13:51","slug":"erste-linux-session-2017-07-22-was-ich-bisher-gelernt-habe-befehle-mechanismen","status":"publish","type":"post","link":"https:\/\/blog.sscho.de\/?p=18","title":{"rendered":"Erste Linux Session: 2017-07-22 | Was ich bisher gelernt habe, Befehle + Mechanismen"},"content":{"rendered":"<p>Gestern meine erste \"Linux Session\", hier nur stichpunktartig was ich gelernt habe. Bedauerlicherweise ist mir die erste Logdatei vom SSH-Client PuTTy verloren gegangen, die zweite habe ich aber noch.<\/p>\n<p><strong>Grundlegendes<\/strong><\/p>\n<p>Instinktiv richtig gemacht habe ich bei meiner Erstinstallation, dass ich neben root auch einen weiteren Benutzer angelegt habe. Den root nimmt man nur wenn man den root braucht, also arbeitet man im Normalfall mit Benutzerrechten. SSH-Zugriff \u00fcber den Benutzer root ist komplett abgeschaltet (dazu sp\u00e4ter mehr).<br \/>\nDas CentOS 7 l\u00e4uft bei mir in einer Hyper-V VM im Windows 10 Host, ganz hervorragend. Ich erinnere mich beim Installationsassistenten etwas wie einen Dienst f\u00fcr Virtualisierungen mit installiert zu haben. Auf jeden Fall kann ich z.B. das herunterfahren Kommando vom Host weiterleiten an den Client. Das reicht f\u00fcr mich.<\/p>\n<p><strong>erste Software-Installation: xrdp<\/strong><\/p>\n<p>Da ich der irrigen Annahme war ich br\u00e4uchte ja wohl garantiert eine M\u00f6glichkeit auch per Microsoft RDP auf den Server zuzugreifen, habe ich xrdp installiert. <a href=\"http:\/\/www.itzgeek.com\/how-tos\/linux\/centos-how-tos\/install-xrdp-on-centos-7-rhel-7.html\">Diese Anleitung<\/a>\u00a0(<a href=\"http:\/\/archive.is\/p4LxN\">Archiv<\/a>) hier war daf\u00fcr sehr hilfreich, und ich habe gleich etliche andere Sachen gelernt.<\/p>\n<p>Die Installation der Repositorys:<\/p>\n<blockquote><p># rpm -Uvh https:\/\/dl.fedoraproject.org\/pub\/epel\/7\/x86_64\/e\/epel-release-7-5.noarch.rpm<br \/>\n# rpm -Uvh http:\/\/li.nux.ro\/download\/nux\/dextop\/el7\/x86_64\/nux-dextop-release-0-1.el7.nux.noarch.rpm<\/p><\/blockquote>\n<p>Dabei habe ich schon den ersten Fehler festgestellt. Die Doku war von Anfang 2016, inzwischen gibt es das epel-release 7.10. URL angepasst, schon klappte alles.<\/p>\n<p>Die Installation des xrdp:<\/p>\n<blockquote><p># yum -y install xrdp tigervnc-server<\/p><\/blockquote>\n<p>Und sehr wichtig f\u00fcr mich: das starten des Services und das setzen auf enabled, also mitstarten nach jedem reboot.<\/p>\n<blockquote><p># systemctl start xrdp.service<br \/>\n# systemctl enable xrdp.service<\/p><\/blockquote>\n<p>Und nat\u00fcrlich das setzen der Firewall-Ausnahme auf dem entsprechenden Port, inklusive obligatorischem Reload.<\/p>\n<blockquote><p># firewall-cmd &#8211;permanent &#8211;zone=public &#8211;add-port=3389\/tcp<br \/>\n# firewall-cmd &#8211;reload<\/p><\/blockquote>\n<p><strong>netstat und grep<\/strong><\/p>\n<p>netstat kann die offenen Verbindungen zeigen, und grep generell kann die Ausgaben bestimmter Zeilen beschr\u00e4nken.<\/p>\n<blockquote><p>netstat -nlp|grep -i tcp<\/p><\/blockquote>\n<p>Gibt eine Liste der offenen tcp und tcp6 Verbindungen, das -i sorgt dabei daf\u00fcr, dass nicht auf Gro\u00df- und Kleinschreibung geachtet wird. Mehrere Begriffe lassen sich so filtern:<\/p>\n<blockquote><p>netstat -nlp | grep -i 'tcp\\|udp'<\/p><\/blockquote>\n<p>In dem Fall bekomme ich also die Liste der tcp und udp Verbindungen angezeigt.<\/p>\n<p><strong>locate<\/strong><\/p>\n<p>Sucht Dateien im Filesystem mit der Benennung. Mit\u00a0<strong>updatedb<\/strong> l\u00e4sst sich die Liste aktualisieren, dauert ggf etwas. Benutzt hatte ich das f\u00fcr\u00a0<strong>locate sshd<\/strong>, um die Konfigurationsdatei des ssh-Dienstes anzupassen<\/p>\n<p><strong>ps -waux<\/strong><\/p>\n<p>War irgendwie wichtig, zeigt glaube ich die Liste aller Tasks, beginnend mit 1.<\/p>\n<p><strong>top und htop<\/strong><\/p>\n<p>Das Programm <strong>top<\/strong><b>\u00a0<\/b>zeigt die Liste der Tasks mit der h\u00f6chsten CPU-Last absteigend.\u00a0<strong>htop<\/strong>, nachinstalliert mit<\/p>\n<blockquote><p>yum install htop<\/p><\/blockquote>\n<p>macht dasselbe, aber schicker und einfacher zu bedienen mit mehr M\u00f6glichkeiten. In htop kann man auch Prozesse direkt abschie\u00dfen, ist also sehr hilfreich und sollte immer mit installiert werden.<\/p>\n<p><strong>runlevel und init<\/strong><\/p>\n<p>Mit den verschiedenen init-leveln kann man bestimmte Betriebszust\u00e4nde des OS ausl\u00f6sen, <em>init 1<\/em> versetzt in den Modus ohne Netzwerk und nur mit lokaler Konsole direkt an der Maschine, <em>init 3<\/em> ist ein normaler Zustand allerdings ohne grafische Oberfl\u00e4che (sehr sinnvoll, wenn man die mal neu starten muss),\u00a0<em>init 5<\/em> ist der normale Betriebsmodus mit grafischer Oberfl\u00e4che.<\/p>\n<p>Laut Doku l\u00e4sst sich das System mit init 0 herunterfahren, init 6 rebootet.<\/p>\n<p>Das ganze l\u00e4sst sich auch verketten (wie generell alle Kommandos), das sieht dann z.B. so aus:<\/p>\n<blockquote><p>init 3; sleep 2; init 5<\/p><\/blockquote>\n<p>Das Kommando beendet also die grafische Oberfl\u00e4che, wartet 2 Sekunden, startet dann die grafische Oberfl\u00e4che neu.<\/p>\n<p><strong>Verzeichniszeug<\/strong><\/p>\n<blockquote><p>mkdir name<br \/>\nrmdir name<br \/>\nrm -Rf name<br \/>\nrm -Rf \/<\/p><\/blockquote>\n<p>Ist f\u00fcr inzwischen selbsterkl\u00e4rend, vor Allem der letzte Befehl.<\/p>\n<blockquote><p>df -h<\/p><\/blockquote>\n<p>zeigt den freien Speicherplatz der verbundenen Laufwerke. -h zeigt dabei die \"human readable\" an, also mit Einheiten, G wie GB, M wie MB, etc.<\/p>\n<p><strong>cat und fstab<\/strong><\/p>\n<p>Die Datei \/etc\/fstab ist die Konfigurationsdatei um das Einh\u00e4ngen von Partitionen zu automatisieren, z.B. beim Neustart.<\/p>\n<p>Das <strong>cat<\/strong> zeigt den Inhalt einer Datei, also f\u00fchrt mich\u00a0<em>cat \/etc\/fstab\u00a0<\/em>zu diesem Ergebnis:<\/p>\n<blockquote><p>#<br \/>\n# \/etc\/fstab<br \/>\n# Created by anaconda on Sun Jul 16 13:34:56 2017<br \/>\n#<br \/>\n# Accessible filesystems, by reference, are maintained under '\/dev\/disk'<br \/>\n# See man pages fstab(5), findfs(8), mount(8) and\/or blkid(8) for more info<br \/>\n#<br \/>\n\/dev\/mapper\/cl_nr&#8211;lx11-root \/ xfs defaults 0 0<br \/>\nUUID=192110e7-6a34-4fd4-817b-083d243958b4 \/boot xfs defaults 0 0<br \/>\n\/dev\/mapper\/cl_nr&#8211;lx11-swap swap swap defaults 0 0<\/p><\/blockquote>\n<p>Was das Neueinh\u00e4ngen und automatische Einh\u00e4ngen von Laufwerken angeht, gibt es bei ubuntuusers wohl eine <a href=\"https:\/\/wiki.ubuntuusers.de\/fstab\/\">brauchbare Anleitung<\/a>\u00a0(<a href=\"https:\/\/archive.is\/6Pxsn\">Archiv<\/a>).<\/p>\n<p><strong>vim und nano, Editoren<\/strong><\/p>\n<p>vim, ein was die Bedienung angeht Schmerzen bereitender Editor.<br \/>\nnano, ebenfalls Schmerzen bereitend, aber f\u00fcr Umsteiger leichter zu bedienen.<\/p>\n<p><strong>mc &#8211; midnight commander<\/strong><\/p>\n<p>Der von MS DOS Zeiten bekannte midnight commander, mc, l\u00e4sst sich nachinstallieren. Ich glaube mit\u00a0<em>yum install mc<\/em>, das war schon alles.<br \/>\nSehr praktisch wenn man sich den Inhalt von Dateien anschauen will.<\/p>\n<p><strong>man<\/strong><\/p>\n<p>Ein Allzweckmanual f\u00fcr alle Befehle.<\/p>\n<blockquote><p>man &lt;befehl&gt;<\/p><\/blockquote>\n<p>Zeigt das Handbuch zu einem bestimmten Befehl an. Mit einem Slash \"\/\" kann man bestimmte Begriffe suchen.<\/p>\n<p><strong>ssh und sshd<\/strong><\/p>\n<p>Auf einen Tipp hin habe ich die Konfiguration des sshd ver\u00e4ndert, und zwar um das einloggen durch den root-Benutzer per ssh zu verhindern. Klappt soweit:<\/p>\n<blockquote><p>PermitRootLogin no<\/p><\/blockquote>\n<p>setzen in der Datei\u00a0<em>\/etc\/ssh\/sshd_config<\/em>, und anschlie\u00dfend mit\u00a0<em>systemctl restart sshd<\/em> den Dienst neu starten.<\/p>\n<p><strong>history<\/strong><\/p>\n<p>history zeigt die Eingabehistorie des jeweils angemeldeten Benutzers an. im Standard limitiert auf 1000 Eintr\u00e4ge.<\/p>\n<p><strong>SELinux<\/strong><\/p>\n<p>Standardm\u00e4\u00dfig aktiviert unter CentOS, soll ein \"abgeh\u00e4rtetes\", besonders sicheres Linux schaffen. Habe ich deaktiviert, wie das geht schreibt RedHat, die das zusammen mit der NSA entwickelt haben, <a href=\"https:\/\/access.redhat.com\/documentation\/en-US\/Red_Hat_Enterprise_Linux\/6\/html\/Security-Enhanced_Linux\/sect-Security-Enhanced_Linux-Enabling_and_Disabling_SELinux-Disabling_SELinux.html\">hier<\/a>\u00a0(<a href=\"https:\/\/archive.is\/OkAQ9\">Archiv<\/a>).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Gestern meine erste \"Linux Session\", hier nur stichpunktartig was ich gelernt habe. Bedauerlicherweise ist mir die erste Logdatei vom SSH-Client PuTTy verloren gegangen, die zweite habe ich aber noch. Grundlegendes Instinktiv richtig gemacht habe ich bei meiner Erstinstallation, dass ich neben root auch einen weiteren Benutzer angelegt habe. Den root nimmt man nur wenn man &hellip; <a href=\"https:\/\/blog.sscho.de\/?p=18\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eErste Linux Session: 2017-07-22 | Was ich bisher gelernt habe, Befehle + Mechanismen\u201c<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[2,3],"tags":[],"class_list":["post-18","post","type-post","status-publish","format-standard","hentry","category-linux","category-linux-tagebuch"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/blog.sscho.de\/index.php?rest_route=\/wp\/v2\/posts\/18","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.sscho.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.sscho.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.sscho.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.sscho.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=18"}],"version-history":[{"count":1,"href":"https:\/\/blog.sscho.de\/index.php?rest_route=\/wp\/v2\/posts\/18\/revisions"}],"predecessor-version":[{"id":19,"href":"https:\/\/blog.sscho.de\/index.php?rest_route=\/wp\/v2\/posts\/18\/revisions\/19"}],"wp:attachment":[{"href":"https:\/\/blog.sscho.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=18"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.sscho.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=18"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.sscho.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=18"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}