Допустим через SSH подключено несколько пользователей.
Сначала посмотрим список онлайн пользователей:
w
Допустим отобразилось следующая информация (где test — это логин пользователя):
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
test tty1 11:20 1:07 0.03s 0.03s -bash
test pts/0 192.168.1.5 11:21 13.00s 0.02s 0.02s -bash
test pts/1 192.168.1.3 11:21 0.00s 0.02s 0.00s w
tty1 — это клиент вошедший локально, то есть находится возле компьютера.
pts/1 — судя например по IP и WHAT, допустим что это мы, соответственно pts/0 это клиент которого мы хотим отсоединить.
Смотрим список процессов и их PID:
ps faux |grep sshd
У меня отобразилось:
root 946 0.0 0.5 65508 5368 ? Ss 12:00 0:00 /usr/sbin/sshd -D
root 1147 0.0 0.6 92828 6920 ? Ss 12:01 0:00 \_ sshd: test [priv]
test 1178 0.0 0.3 92828 3384 ? S 12:01 0:00 | \_ sshd: test@pts/0
root 1192 0.0 0.6 92828 6592 ? Ss 12:02 0:00 \_ sshd: test [priv]
test 1223 0.0 0.3 92828 3532 ? S 12:02 0:00 \_ sshd: test@pts/1
test 1248 0.0 0.0 15468 956 pts/1 S+ 12:25 0:00 \_ grep --color=auto sshd
Находим test@pts/0 и соответственно 1178 — это нужный PID.
Завершаем процесс указав его ID, после чего пользователь сразу отсоединится:
sudo kill -9 1178
Смотрите также мои статьи:
Установка и настройка SSH
Настройка тайм-аута SSH сессий