CentOS, ssh, pam, radius авторизация

Захотелось попробовать сие дело в действии, да и централизованное хранение паролей тоже не помешает, хотя есть и свои минусы, но когда оборудования реально дохрена, то на каждый сервер ставить пас, потом менять его ручками, становится слегка геморно, хотя можно юзать ключи для ssh, но ведь зачастую авторизация не только по ssh необходима, в общем решил потестить как себя будет вести данная связка.
Начнем со сборки pam модуля для radius авторизации на машине которую переводим на данную авторизацию:

# wget ftp://ftp.freeradius.org/pub/radius/pam_radius-1.3.17.tar.gz
# tar -xvf pam_radius-1.3.17.tar.gz
# cd pam_radius-1.3.17
# make

если получаем Error 1, то читаем как побороть тут
после в текущей директории получим файлик:
pam_radius_auth.so
копируем его куда надо:

# cp pam_radius_auth.so  /lib64/security

либо для 32 битной оси

# cp pam_radius_auth.so /lib/security


Далее создадим файл настроек для конекта к радиус серверу:

# mkdir /etc/raddb/
# cp pam_radius_auth.conf /etc/raddb/server
# vi /etc/raddb/server

приводим к такому виду:

# Radius Server IP address           Secret                                   Timeout
192.168.100.1                                       supersecret                          3

где
192.168.100.1 — радиус сервер
supersecret — секретная фраза для конекта
3 — таймаут
Настраиваем ssh

# vi /etc/pam.d/sshd

перед строкой

auth       include      password-auth

вставляем строку:

auth        sufficient    pam_radius_auth.so

получаем нечто похожее на нижнее:

auth        sufficient    pam_radius_auth.so
auth       include      password-auth

Добавлем юзера в систему который предварительно заведен на радиус сервере

# adduser test

рестартим sshd

# service sshd restart
Stopping sshd:                                             [  OK  ]
Starting sshd:                                             [  OK  ]

и пробуем залогиниться.
Для того чтобы работал sudo, правим

# vi /etc/pam.d/sudo

до такого вида:

#%PAM-1.0
auth        sufficient    pam_radius_auth.so
auth       include      system-auth
account    include      system-auth
password   include      system-auth
session    optional     pam_keyinit.so revoke
session    required     pam_limits.so

Похожие посты

Комментировать

Комментировать email не будет опубликован