Configure ssh params
Материал из pNp Wiki
Содержание
Конфигурирование SSH. Параметры подключения
Предварительные требования
- Виртуальная машина с двумя сетевыми интерфейсами
- Установленные пакеты:
bash-completion
,openssh-clients
,openssh-server
Дополнительные параметры
Поведение ssh
сервера задается редактированием файла /etc/ssh/sshd_config
Запретим вход пользователю root
, а так же запретим авторизацию по паролям, предварительно
убедившись, что наш ключ находится на целевом сервере, иначе мы не сможем попасть на интересующую нас машину по протоколу ssh
!
Нам понадобятся следующие опции:
-
PermitRootLogin no
- запрещаем подключение пользователемroot
-
PermitEmptyPasswords no
- запрещаем использование пустых паролей -
PasswordAuthentication no
- запрещаем использование паролей (вход только по ключам) -
PubkeyAuthentication yes
- аутентикация происходит только по ключам
В результате, конфигурационный файл принимает следующий вид:
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
SyslogFacility AUTHPRIV
PermitRootLogin no
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PermitEmptyPasswords no
PasswordAuthentication no
ChallengeResponseAuthentication no
GSSAPIAuthentication yes
GSSAPICleanupCredentials no
UsePAM yes
X11Forwarding yes
UsePrivilegeSeparation sandbox # Default for new installations.
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS
Subsystem sftp /usr/libexec/openssh/sftp-server
[root@vm-01 ~]#
Далее, необходимо заставить ssh
перечитать настройки конфигурационного файла:
[root@vm-01 ~]# systemctl is-active sshd
active
[root@vm-01 ~]# systemctl reload sshd
[root@vm-01 ~]# systemctl is-active sshd
inactive
[root@vm-01 ~]# systemctl status -l sshd
● sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Tue 2018-02-27 03:28:29 MSK; 14s ago
Docs: man:sshd(8)
man:sshd_config(5)
Process: 10989 ExecReload=/bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)
Process: 10890 ExecStart=/usr/sbin/sshd $OPTIONS (code=exited, status=0/SUCCESS)
Main PID: 10868 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/sshd.service
└─10990 /usr/sbin/sshd
Feb 27 03:17:36 vm-01 systemd[1]: Starting OpenSSH server daemon...
Feb 27 03:17:36 vm-01 systemd[1]: Started OpenSSH server daemon.
Feb 27 03:28:29 vm-01 sshd[10868]: Received SIGHUP; restarting.
Feb 27 03:28:29 vm-01 systemd[1]: Reloaded OpenSSH server daemon.
Feb 27 03:28:29 vm-01 sshd[10990]: Server listening on 0.0.0.0 port 22.
Feb 27 03:28:29 vm-01 sshd[10990]: Server listening on :: port 22.
[root@vm-01 ~]#
После правки конфигурационного файла, сервис sshd
может отображаться как неактивный, однако он будет слушать порт 22
и принимать соединения.
Проверяем подключение:
[andy@vm-02 ~]$ ssh andy@192.168.1.1
Last login: Tue Feb 27 03:30:38 2018 from 192.168.1.2
[andy@vm-01 ~]$ su -
Password:
Last login: Tue Feb 27 02:25:07 MSK 2018 from gateway on pts/0
[root@vm-01 ~]# systemctl is-active sshd
inactive
[root@vm-01 ~]#