証明書でログインする際に毎回イロイロ忘れるのでスクリプトを作ってみたんだけど

そのスクリプトをどこに保存したかを更に忘れるという悪循環に陥るので、ここに書いておこうw

やってる事はrootと同じ権限を持った別のユーザを作成して証明書でログイン出来るようにしてるだけ。

ユーザ名は引数で渡す。てか、固定だったとしても書いといたらアタックされるだろうから書かないwww

#!/bin/bash -eu



USERNAME=$1

chk_user() {
  if [ -e /home/${USERNAME} ]; then
    echo ${USERNAME}は既に作成されています
    exit 1
  fi
}

create_user() {
  useradd -o -u 0 ${USERNAME}
  cd /home/${USERNAME}/
  ssh-keygen -t rsa -f /home/${USERNAME} -f remote_rsa
  mkdir .ssh
  chmod 700 .ssh
  cat remote_rsa.pub >> .ssh/authorized_keys
  chmod 600 .ssh/authorized_keys
  chown -R remoteadmin: .ssh
}

set_sshd() {
  cd /etc/ssh/
  cp -p sshd_config sshd_config.bk

  echo "Match User ${USERNAME}" >> sshd_config
  echo "        PermitRootLogin yes" >> sshd_config
  echo "        RSAAuthentication yes" >> sshd_config
  echo "        PubkeyAuthentication yes" >> sshd_config

  service sshd restart
}

### MAIN ###
#chk_user
create_user
set_sshd