LoginSignup
4
4

More than 5 years have passed since last update.

sshログインができるcentos7イメージを作った

Posted at

いろいろハマったのでメモ。
ハマりポイントが多すぎて調べきれてないので、一旦成功したDockerfileを書いておく。

Dockerfile
FROM tukiyo3/centos7-ja-systemd

# 必要に応じ
RUN yum -y install systemd-libs-208-11.el7_0.4 systemd-sysv-208-11.el7_0.4
# systemdがupdateされてerrorが発生するためらしい。`
RUN echo 'exclude=systemd*' >> /etc/yum.conf
RUN yum -y update

# install package
RUN yum -y install passwd openssh openssh-server openssh-clients sudo rsync git vim && \

# Create user
    useradd docker && \
    passwd -f -u docker && \

# Set up SSH
    mkdir -p /home/docker/.ssh; chown docker /home/docker/.ssh; chmod 700 /home/docker/.ssh && \
    echo "公開鍵" > /home/docker/.ssh/authorized_keys && \
    chown docker /home/docker/.ssh/authorized_keys && \
    chmod 600 /home/docker/.ssh/authorized_keys && \

# setup sudoers
    echo "docker ALL=(ALL) ALL" >> /etc/sudoers.d/docker && \

# Set up SSHD config

    sed -ri 's/#PermitRootLogin yes/PermitRootLogin yes/g' /etc/ssh/sshd_config && \
    sed -ri 's/UsePAM yes/#UsePAM yes/g' /etc/ssh/sshd_config && \
    sed -ri 's/#UsePAM no/UsePAM no/g' /etc/ssh/sshd_config && \
    # PAMを利用するときには下記をオフにしないとSSHログインできない
    # Centos7からPAMをオフにするのが推奨されてないので、下記設定は必須?
    sed -i -e 's/^\(session.*pam_loginuid.so\)/#\1/g' /etc/pam.d/sshd

すでに回避されている方がいたのでそれを丸パクリして、あとはsshdできるようにもろもろ設定してこのような形になりました。もう少し細かい部分まで調べておきたいですね。

参考

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4