ユーザー管理の自動化(FTP + メール)

このページでは、Linux Mint 環境で行う ユーザー作成・フォルダ作成・初期化・削除を自動化するための Python スクリプトを紹介します。

これらのスクリプトは、本サイト管理者と AI(Microsoft Copilot)との共同制作教材です。

最終更新:

当学院のアカウント運用モデルについて

当学院では、受講生アカウントを「受講生本人」ではなく、 訓練枠(スロット)に紐づけて固定運用しています。

folder,username,password
180,gakuin180,180
181,gakuin181,181
182,gakuin182,182
        

目次

1. 自動化スクリプトとは

Linux Mint 上で行う作業を Python と CSV で一括処理する仕組みです。

2. 自動化のメリット

  • 作業時間の大幅短縮
  • 入力ミスの防止
  • 作業手順の標準化

3. 利用環境(Linux Mint)

Linux Mint 21.x / 22.x 系で動作確認済み。

4. 自動化スクリプト一覧

以下は、本サイトで提供している自動化スクリプトの一覧です。 目的に応じて、各スクリプトの詳細ページをご覧いただけます。

5. 自動化スクリプトの詳細

ここでは、スクリプトの役割を簡潔にまとめています。 詳細なコードや実行方法は、各スクリプトの個別ページをご覧ください。

5-1. create_students.py

  • Linux ユーザーを CSV から一括作成
  • /var/www/html/<folder> に受講生フォルダを作成
  • 所有者・パーミッション設定を自動化
  • Maildir が無い場合は自動作成

→ 詳細ページを見る

5-2. delete_students.py

  • 受講生フォルダ内の教材データを初期化
  • Maildir は削除せず保持(安全仕様)
  • 毎回の初期化に最適

→ 詳細ページを見る

5-3. maildir_create_from_csv.py

  • Maildir を CSV から一括作成
  • メール環境の再構築や修復に使用
  • Postfix + Dovecot の Maildir 形式に対応

→ 詳細ページを見る

5-4. update_cert.py

  • HTTPS 証明書の残り日数を自動チェック
  • 期限が近づいた場合のみ新しい証明書を生成
  • Apache2 を自動で reload(サービス停止なし)
  • systemd timer により毎日自動実行
  • ローカル CA(ca.crt / ca.key)を使用した安全な署名

→ 詳細ページを見る

著作権と利用について

# Created by Inajin (InaPC Linux Lab)
# AI(Microsoft Copilot)との共同制作教材
# 本スクリプトは教育目的での利用・改変を自由に行えます。
# ただし、著作権表記は削除せず残してください。