Archiv des Autors: hermann

ssh Benutzer im Ordner einsperren

Seit der openssh Version 5 ist es möglich einen Benutzer der sich per ssh anmelden in einem Ordner einzusperren.

So bin ich vorgegangen:

Als erstes habe ich eine Gruppe angelegt namens sftponly. Den Benutzer bzw die Benutzerin lieschen habe ich der Gruppe hinzugefügt.

groupadd sftponly
useradd lieschen
usermod -aG sftponly lieschen

Die /etc/ssh/sshd_config habe ich wie folgt angepasst:

Subsystem sftp internal-sftp

Match Group sftponly
ChrootDirectory /srv/transfer
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no

Im Anschluss der Anpassung den sshd Dienst neu starten.

Als letztes müssen noch die Ordner erstellt werden:

mkdir -p /srv/transfer
chown root:sftponly /srv/transfer
chmod 755 /srv/transfer
mkdir -p /srv/transfer/lieschen
chown lieschen:sftponly /srv/transfer/lieschen
chmod 700 /srv/transfer/lieschen

Ein Benutzer der in der Gruppe sftponly ist, darf sich nur per sftp mit dem Server verbinden. Bei der Anmeldung landet er im Ordner /srv/transfer. Dort sieht er zwar alle Ordner, kann jedoch nur auf seinen zugreifen.

Ich bin nach dieser Anleitung vorgegangen: http://meshfields.de/sftp-chroot-centos/

[gerrit] kein push/pull möglich

In der Gerrit Version 2.3.1 kann es vorkommen das sich der interne sshd Dienst aufhängt, dann kann nicht mehr auf die Repositorys zugegriffen werden. Das Problem scheint aufzutreten, wenn ein oder mehrere Jenkins Server auf das gerrit zugreifen.
Greift ein Benutzer auf das gerrit zu, kommen in den sshd logs die login, aktion und logout Meldungen. Meldet sich jedoch der im jenkins hinterlegte Benutzer an, gibt es hauptsächlich nur login Meldungen. Irgendwann folgt dann die Meldung das die Verbindung gekilled wurde.
Über netstat -an | grep 29418 sieht man auch, das die Jenkins Server viele Verbindungen öffnen und nicht wieder schließen.

In der error Log Datei kommt dann folgende Meldung:

[2012-09-25 01:11:01,557] WARN org.apache.sshd.server.session.ServerSession : Exception caught
java.io.IOException: Connection reset by peer
at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:218)
at sun.nio.ch.IOUtil.read(IOUtil.java:191)
at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:359)
at org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:214)
at org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:42)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:673)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:646)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:635)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$400(AbstractPollingIoProcessor.java:67)
at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1079)
at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
[2012-09-25 01:16:01,279] WARN org.apache.sshd.server.session.ServerSession : Exception caught
java.io.IOException: Connection reset by peer
at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:218)
at sun.nio.ch.IOUtil.read(IOUtil.java:191)
at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:359)
at org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:214)
at org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:42)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:673)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:646)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:635)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$400(AbstractPollingIoProcessor.java:67)
at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1079)
at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)

Ein Update auf 2.4.1 behebt das Problem.

Kleine Howto für ein gerrit update:https://www.itbasic.de/gerrit-update/

Centos Version ermitteln

Dieser Artikel ist im Endeffekt eine kleine Notiz für mich. Aus irgendeinem Grund kann ich mir nicht merken wie ich die Version von centos ermittle, die gerade installiert ist.
Dabei reicht ein einfaches

cat /etc/redhat-release

XCOM Enemy Unknown – Ein würdiger Nachfolger

Ich habe damals XCOM Terror from the deep gespielt, damals noch auf 4 Disketten und ich war begeistert. Mannschaft ausrüsten, Gebiet von den Aliens säubern und die gefundenen Artefakte erforschen. Zu Ende gespielt hatte ich es jedoch nie, warum auch immer. Die Nachfolgenden teile habe ich mir auch angesehen, aber so wirklich haben sie mir nicht gefallen. Entweder war es mir zu komplex oder die Steuerung gefiel mir nicht.

Nun kommt bald XCOM Enemy Unknown raus und es gibt seit ein paar Tagen auch eine Demo. Ich habe Sie angespielt und ich bin begeistert. In der Demo kann man bereits die gute Grafik erkennen und die Steuerung der Einheiten wurde gegenüber den alten Teilen vereinfacht. Als weitere Neuerung sieht man die Basis jetzt nicht mehr von oben sondern von der Seite, in dieser Ansicht wird sie auch erweitert.

Nun heißt es warten bis es rauskommt und dann die Welt retten.

Das Spiel kann bei Amazon vorbestellt werden.

OSBN das Open-Source-Blog-Netzwerk

Im Internet gibt es sehr viele Blogs. Die Blogs decken die verschiedensten Themen ab zum Beispiel Koffeinhaltige Getränke, Hochzeiten, das private Leben, dies und das und natürlich Blogs die sich mit Open Source beschäftigen.

Da ich mich auch mit Open Source beschäftige bin ich auf www.osbn.de gestoßen. Bei OSBN handelt es sich um Open-Source-Blog-Netzwerk, im Endeffekt eine große Sammlung von Blogs die sich mit Open Source beschäftigen. Wenn im eigenen Blog ein neuer Artikel erscheint, wird er im Ticker auf www.osbn.de angerissen. Möchte der Leser den Artikel ganz lesen, wird er auf den eigentlichen Blog weitergeleitet.

Das Open-Source-Blog-Netzwerk gibt es noch nicht sehr lange, aber schon jetzt sind viele bekannte Blogger dabei und jeder der sich mit Open Source beschäftigt kann mitmachen.