Невозможно s sh до docker (Ubuntu: 19.04) из-за отказа в разрешении - PullRequest
0 голосов
/ 24 марта 2020

я сделал s sh сервис docker из этого Dockerfile.

FROM ubuntu:19.04

RUN apt-get update && apt-get install -y openssh-server \
   postgresql-client \
   language-pack-ja

RUN update-locale LANG=ja_JP.UTF-8

RUN mkdir /var/run/sshd
ARG ROOT_PASSWORD
RUN echo root:${ROOT_PASSWORD} | chpasswd
RUN sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config

# SSH login fix. Otherwise user is kicked off after login
RUN sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd

ENV NOTVISIBLE "in users profile"
RUN echo "export VISIBLE=now" >> /etc/profile

EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]

Я следил за этой страницей.
https://docs.docker.com/engine/examples/running_ssh_service/

Это Иными словами, изменилась только версия образа Ubuntu на 19.04.

Однако я не смог sh, как это произошло, отказано в разрешении.

docker build --build-arg ROOT_PASSWORD=$ROOT_PASSWORD -t eg_sshd .

docker run -d -P --name test_sshd eg_sshd

docker port test_sshd 22
0.0.0.0:32770

ssh root@localhost -p 32770
root@localhost's password:
Permission denied, please try again.

Почему это случилось, что разрешение отклонено?

1 Ответ

0 голосов
/ 30 апреля 2020

Строка PermitRootLogin не была закомментирована, когда она была 16.04, однако закомментировала, когда она была 18.04, поэтому я установил ее на #\?, чтобы учесть оба.

Она может выполняться из следующего Dockerfile.

FROM ubuntu:19.10

RUN apt-get update && apt-get install -y openssh-server

RUN mkdir /var/run/sshd

RUN echo 'root:root' | chpasswd
RUN sed -i 's/#\?PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config

# SSH login fix. Otherwise user is kicked off after login
RUN sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd

ENV NOTVISIBLE "in users profile"
RUN echo "export VISIBLE=now" >> /etc/profile

EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]
...