]> ruderich.org/simon Gitweb - config/dotfiles.git/blobdiff - ssh_config
lessfilter: Use test.
[config/dotfiles.git] / ssh_config
index d0a88d76194ce692edf01b76ff6a926e1413bd7c..be03a42673df4647a24d8e075112a01054a201bc 100644 (file)
@@ -1,4 +1,29 @@
 # SSH configuration file.
+#
+# Some options are set even if they are default to prevent /etc/ssh/ssh_config
+# from overwriting them.
+
+# Copyright (C) 2011-2013  Simon Ruderich
+#
+# This file is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This file is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this file.  If not, see <http://www.gnu.org/licenses/>.
+
+# Undocumented (and not very well tested) feature. This drops the connection
+# after 5 seconds of inactivity. Thanks to shad0VV in #openssh on Freenode
+# (2012-11-04 18:40 CET) for telling me about this undocumented feature.
+#
+#     ServerAliveCountMax 0
+#     ServerAliveInterval 5
 
 
 # Rules for all hosts.
@@ -14,9 +39,27 @@ Host *
 # to local X11!
     ForwardX11Trusted no
 
-# If -M is used store the control master socket in ~/.ssh. Necessary for
-# ControlMaster to work.
+# Abort if not all requested port forwardings can be set up.
+    ExitOnForwardFailure yes
+
+# Allow using -M (ControlMaster) to create a master SSH session which
+# "tunnels" other connections to the same host, thus reducing the number of
+# authentications (which are relatively slow) and TCP connections. The master
+# sockets are stored in ~/.ssh (by default ControlPath is not set).
     ControlPath ~/.ssh/master-%l-%h-%p-%r
 
+# Hash hosts in ~/.ssh/known_hosts to try to conceal the known hosts. Doesn't
+# help if the ssh hosts are stored in the shell's history file or in this file
+# as shortcut.
+    HashKnownHosts yes
+
+# Don't permit running local commands.
+    PermitLocalCommand no
+
 # Don't send any environment variables.
     SendEnv
+
+# Check host IP in known_hosts when connecting to detect DNS spoofing.
+    CheckHostIP yes
+# Ask before adding any host keys to ~/.ssh/known_hosts.
+    StrictHostKeyChecking ask