ユーザー管理の自動化(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)との共同制作教材
# 本スクリプトは教育目的での利用・改変を自由に行えます。
# ただし、著作権表記は削除せず残してください。