У меня есть сервер Ubuntu, работающий на экземпляре EC2. Для входа на этот сервер я использую файл сертификата без пароля.
Я установил и настроил vsftpd и создал пользователя (назовем его "testuser"), для которого я установил / bin / false ssh-терминал, чтобы он мог подключаться только через sftp и загружать / получать доступ к файлам в своем доме каталог.
Однако - когда я пытаюсь подключиться к серверу со своего компьютера, запускается
sftp testuser@my-ec2-server
я получил
В разрешении отказано (публичный ключ).
Соединение закрыто
сообщения, поэтому я не могу войти.
Как я могу удалить требование сертификата только для этого пользователя (то есть пользователю «ubuntu» все равно придется использовать файл сертификата для входа через ssh), чтобы обычные клиенты sftp могли подключаться, используя имя пользователя и пароль?
Спасибо.
PS Использование официального AMI Ubuntu Server 10.10 из канонической, 64-битной версии на микро-экземпляре.
Чтобы осуществить то, что вы хотите, вам нужно сделать две разные вещи.
Прежде всего, я скажу, что это плохая идея, я бы предпочел сгенерировать сертификат для вашего пользователя, чем активировать пароли, тем не менее, если вы хотите это сделать, просто отредактируйте /etc/ssh/sshd_config
и измените или раскомментируйте его, чтобы PasswordAuthentication yes
. Как только это будет сделано, перезапустите sshd service ssh restart
Для этого вам необходимо установить rsh (реститированная оболочка) и изменить на нее пользовательскую оболочку. chsh username
Вот пошаговое руководство, которое позволит:
Сначала отредактируйте файл / etc / ssh / sshd_config:
sudo nano /etc/ssh/sshd
Прокрутите вниз и измените:
PasswordAuthentication yes
и добавьте это внизу:
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
Нажмите Ctrl-X, чтобы выйти и сохранить.
Теперь добавляем пользователя:
sudo useradd bob
sudo passwd bob
Теперь добавьте группы и отключите ssh:
sudo groupadd sftpusers
sudo usermod -g sftpusers bob
sudo usermod -s /usr/bin/rssh bob
sudo usermod -d /home/bob bob
Теперь установите разрешения:
sudo chown root:root /home/bob/
sudo chmod 755 /home/bob/
sudo mkdir /home/bob/uploads
sudo chown bob /home/bob/uploads
sudo service sshd restart
Все это происходит при входе в систему как пользователь root (пользователь ec2 в AMI Amazon Linux)