Для клиента отредактируйте файл ~/.ssh/config (или /etc/ssh/ssh_config) следующим образом:
Host *
TCPKeepAlive yes
ServerAliveInterval 120
TCPKeepAlive - указывает, должна ли система отправлять сообщения keepalive TCP на другую сторону. Если они будут отправлены, смерть соединения или сбой одной из машин будет правильно замечена. Однако это означает, что соединения будут умирать, если маршрут временно остановлен, а некоторые люди находят его раздражающим (по умолчанию «да»). ServerAliveInterval - устанавливает интервал времени ожидания в секундах, после которого, если данные не были получены с сервера, ssh (1) отправит сообщение через зашифрованный канал, чтобы запросить ответ от сервера. Значение по умолчанию равно 0, что указывает на то, что эти сообщения не будут отправляться на сервер. Для сервера отредактируйте свой /etc/ssh/sshd_config как:
ClientAliveInterval 600
ClientAliveCountMax 0
Если вы хотите, чтобы ssh-клиент автоматически покидал (тайм-аут) через 10 минут ( 600 секунд).
TCPKeepAlive - указывает, должна ли система отправлять сообщения keepalive TCP на другую сторону. Если они будут отправлены, смерть соединения или сбой одной из машин будет правильно замечена. Однако это означает, что соединения будут умирать, если маршрут временно отключен, а некоторые люди находят его раздражающим (по умолчанию «да»).
TCPKeepAlive - указывает время ожидания в секундах. Через x секунд, ssh-сервер отправит клиенту сообщение с запросом ответа. Deafult - 0 (сервер не будет отправлять сообщение клиенту для проверки).ClientAliveCountMax - указывает общее количество сообщений проверки, отправленных сервером ssh, без получения ответа от клиента ssh. Значение по умолчанию: 3.
Войдите в систему как обычный пользователь и используйте sudo -i для перехода к корневой оболочке.
Вы не должны использовать учетную запись root или изменить ее пароль для этого вопроса.
Пользовательский root не включен и не может выполнить вход в систему, вы можете видеть, что это делает:
sudo grep root /etc/shadow
поле, которое обычно содержит зашифрованный пароль, заполняется .
Если вы прочитали man-страницу shadow (5), вы получите это
Если поле пароля содержит некоторую строку, которая не является допустимым результатом crypt (3), например ! или *, пользователь не сможет использовать пароль unix для входа (но пользователь может войти в систему другими способами).Вы не должны включать корень пользователя из соображений безопасности.
Если вы решили использовать учетную запись root.
По крайней мере, обязательно отключите возможность входа в систему через ssh с помощью root, если ssh находится в Интернете. Вместо этого войдите в систему как пользователь, а su - в root.
Это позволит предотвратить успешные атаки грубой силы на ваш компьютер. Так как трудно угадать как правильное имя пользователя, так и пароль. В то время как с корнем нужно только угадать пароль
, изменяющий строку:
PermitRootLogin yes
в [F5]
до
PermitRootLogin no
и запустите:
service sshd restart
, чтобы перезагрузить конфигурацию.
установить пароль root с помощью следующей команды
sudo passwd
Они ответили на ваш вопрос о входе в ssh с не супер пользователем (скажем goblin@192.168.0.3 -p 22).
Сначала создайте другую учетную запись без привилегий su. После входа в ssh в качестве не-суперпользователя вы можете ввести эту команду, чтобы переключиться на root (эскалация ваших привилегий):
su
И введите пароль.