Kilka ciekawych opcji do configa ssh:
ConnectTimeout 30
ServerAliveInterval 30
Przydatne jak masz “kiepskie” połączenie (rozłącza się często), zamiast czekać wieki aż ssh się zamknie albo zamykać terminal po 30 braku kontatku wywali connection timed out
Forwardowanie Xow:
Klient:
ForwardX11 yes
Serwer:
X11Forwarding yes
X11DisplayOffset 10
Per-server config:
Host bla.bla.pl
Port 1243
Host blop.blop.pl
User kanapka
Host *
User root
Wyłączanie sprawdzania zgodności kluczy z known_host (UWAGA, z tym włączonym trzeba uważać! za to dobre jak reinstalujesz kompy i klicz sshd zmienia się dla tego samego IP)
StrictHostKeyChecking no
Logowanie roota ale tylko przez klucz publiczny (przez hasło bezpośrenio na roota nie działa) na serwerze
PermitRootLogin without-password


6 ResponsesLeave a comment ?
Jest jeszcze parę ciekawszych zabawek w sshd jak Match {User, Group, Host, Address} [...] {AllowTcpForwarding, Banner, ChrootDirectory, ForceCommand, GatewayPorts, GSSAPIAuthentication, HostbasedAuthentication, KbdInteractiveAuthentication, KerberosAuthentication, MaxAuthTries, MaxSessions, PasswordAuthentication, PermitOpen, PermitRootLogin, RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset, X11Forwarding, X11UseLocalHost}, AllowUser/Group, force-command-only, from=…, Subsystem internal-sftp, ChrootDirectory i parę innych.
Tak, ale przepisywanie dokumentacji mija się z celem ;].
Może i tak, ale:
– internal-sftp i ChrootDirectory nareszcie umożliwia zamknięcie sesji sfp w klatce; rzecz całkiem nowa (chyba od 4.8), a fajna.
– force-command-only też rzadko używane, a można tym pięknie przycinać ręczne wykonywanie jobów z prawami roota, do tego from= ładnie przycinające pulę adresową, z której klucz może uwierzytelniać,
– Match… genialna rzecz, umożliwiająca aplikowanie przeróżnych ustawień w zależności od adresu, sesji, etc; np. w środowisku korporacyjnym można wyłączyć wyświetlanie głupawych bannerów dla sesji inicjowanych z wewnątrz sieci — mała rzecz, a cieszy. Też stosunkowo nowa rzecz i, jak widzę w różnych miejscach, raczej niespecjalnie rozpowszechniona.
o ChrootDir wiedziałem od jakiegoś czasu ale Match mi jakoś umknęło, rzeczywiście przydatna rzecz, chociaż w sumie to temat na oddzielny artykuł np. “Jak zastąpić ftp przez scp/sftp” ;].
Sam przedtem do tego używałem scponly ale to trochę “na opak”
Co do force-command-only, znam, ale generalnie nie mam potrzeby używania, chociaż na pewno w pewnych przypadkach się przydaje.
Miałem jeszcze opisać robienie VPNów używając ssh, ale szczerze mówiąc po krótkiej zabawie z tym preferuje po prostu ustawić OpenVPN, jest bardziej “plugandplayowe” (w sumie najmniej kłopotliwy soft do robienia VPNów jaki używałem, działa też dobrze w windzie)
OpenVPN ma tę przewagę, że tuneluje w UDP, więc nie rozpieprzają się mechanizmy regulacyjne TCP/IP. Natomiast VPN-y w OpenSSH mają jedną zasadniczą zaletę: można je zestawić od strzału, bez instalowania czegokolwiek po obu stronach, wystarczy OpenSSH, które jest na większości maszyn.
I jeszcze jedna fajna rzecz: connection multiplexing (ControlMaster/ControlPath. Uwierzytelniamy się raz i w takiej sesji otwieramy następne do tej samej lokalizacji (albo jedną cyklicznie we wciąż otwartej sesji master). W pewnych warunkach może się przydawać (wszelkie ograniczenia w liczbie jednocześnie otwieranych sesji po drodze czy w liczbie otwieranych sesji w jednostce czasu).
Tak, czy inaczej, warto zwracać uwagę na fakt, że OpenSSH to nie jest tylko coś, co służy do zdalnego zalogowania się.
Również z OpenVPN’em mam najlepsze doświadczenia, – żadne iproute, racoony i inne kombinacje nie są tak łatwe, przyjazne i PROSTE w utrzymaniu dla userów niż OpenVPN – IMHO.