Permitir login com senha SSH na rede local

Permitir login com senha SSH na rede local

Eu tenho um servidor doméstico rodando o Fedora 16 e gostaria de poder acessar remotamente via SSH. Para usuários com acesso sudo, eles só devem ter permissão para se conectar da WAN com uma chave, mas quero permitir que eles se conectem com uma senha da rede local.

Aqui está meu sshd_config:

#Logging
SyslogFacility AUTHPRIV

#Allow the two types of ssh groups
AllowGroups ssh_key_users ssh_pass_users
PermitRootLogin no

#Accept environment variables - these come from the fedora default config
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

#Other options
X11Forwarding yes
GSSAPICleanupCredentials yes
#Set up sftp subsytem
Subsystem       sftp    /usr/libexec/openssh/sftp-server

#Just as a default, we'll change it per network and group
PasswordAuthentication no

#Re-enable password access for the local network
Match Address 192.168.1.0/24 Group ssh_key_users
PasswordAuthentication yes

#Settings for users which can login by password (non-sudoers)
Match Group ssh_pass_users
PasswordAuthentication yes
ChrootDirectory %h

A parte divertida é que isso funciona perfeitamente quando executo sshd -d -p 4000para colocá-lo no modo de depuração e testá-lo, mas tentar fazer login com uma senha quando executo o sshd através do systemctl falha.

Como tem acontecido com a maioria dos problemas durante a configuração desta máquina, acredito que o SELinux é o culpado. Aqui está a mensagem de erro de audit.log

type=USER_AUTH msg=audit(1345320824.824:123275): 
pid=0 uid=0 auid=4294967295 ses=4294967295 
subj=system_u:system_r:sshd_t:s0-s0:c0.c1023 
msg='op=password acct="chockey" exe="/usr/sbin/sshd" 
hostname=? addr=192.168.1.201 terminal=ssh res=failed'

Se eu desligar o SELinux temporariamente, ele funcionará. Se eu usar audit2why nesta mensagem, não haverá saída. Se eu tentar usar audit2allow nesta mensagem, serão geradas 3 novas linhas, mas nada mais. Talvez eu esteja usando errado, mas aqui está o que fiz:

$ tail -n 1 /var/log/audit/audit.log > error.txt
$ audit2why -i error.txt
$ audit2allow -i error.txt


$ 

Alguém já se deparou com isso antes? Vale a pena deixar o SELinux ativado?

informação relacionada