なかのにっき

最新版はこちら。 突っ込みは各日付の BBS エントリのほか、 メール (nakano@st.seikei.ac.jp) や フォーム からどうぞ。 なおスパム除けのため、BBS 機能には 緩い認証を入れて います。 検索エンジンから来た方は、エンジンの方のキャッシュを見るか、 下の簡易検索を試してみてください。


hns - 日記自動生成システム - Version 2.19.5

先月 2024年09月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい
検索式:

2024年09月12日(木) [n年日記]

#2 成蹊での UPKI 証明書申請

UPKI については こちら 。学内に設定されていたサーバを見付けたので、管理者の O 先生にお尋ねしたら詳細な作業メモを送っていただけた。 たいへんありがとうございます。やってみたので自分もメモ。 「ひみつ」のところは(たいした秘密じゃないけど)秘密日記へ。

UPKI 謹製のマニュアルは ここ から辿るとよさげ。

秘密鍵つくり:

% dd if=/dev/urandom of=rand1.bin bs=200K count=1
% cat rand1.bin | base64 > rand1.txt
同様に rand2.txt, rand3.txt をつくる
% openssl genrsa -des3 -rand rand1.txt:rand2.txt:rand3.txt 2048 > server.key
(パスフレーズを要求されるので決めておく)
server.key ができたら chmod 600 する。rand?.* は消す。

証明書発行要求 (CSR) を作る:

以下の通り。プロンプトに対する '.' は何も入力しない、の意味。
% openssl req -new -key server.key -sha256 -out server.csr
Enter pass phrase for server.key: (パスフレーズいれる)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:ひみつ
Locality Name (eg, city) []:ひみつ
Organization Name (eg, company) [Internet Widgits Pty Ltd]:ひみつ
Organizational Unit Name (eg, section) []:ひみつ
Common Name (e.g. server FQDN or YOUR name) []:サーバのFQDN
Email Address []:.

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:.
An optional company name []:.
鍵長の確認は、
% openssl rsa -in server.key -text -noout | lv
で。UPKI は 2048 が必要。

CSRファイルの中身をチェックするには
$ openssl req -in server.csr -text | lv
いまのところ鍵等々は ~/UKPI/ 以下に置いてある。

TSV 作成:

申請時に送付する TSV ファイルは NII の TSV ツール でつくる。

作成開始で開く画面に、
TSVファイル種別→新規発行申請用TSV
証明書種別→サーバ証明書
証明書プロファイル→3: サーバ証明書(sha256WithRSAEncryption)
として「この内容で作成を開始。

次の画面で「CSR ファイル読込」でファイルを指定、下のほうは
主体者DN→空欄
サーバFQDN→いれる
利用管理者E-mail→いれる
利用管理者氏名→管理者のフルネーム(ローマ字表記が無難)
利用管理者所属→Fuculty of Science and Engineering
Webサーバソフトウェア名等→apache2.4
dNSName→IPアドレスが同じで別のFQDNを持つ場合、dNSName=[CNAME]
のように入れる。dNSName に「サーバFQDN」で入れた内容も重ね書きする必要はあるのかちょっと不明。不具合があったらなおそう。

これで「完了」すると TSV をダウンロードできるようになる。 その後の学内手続は秘密日記に。

証明書等が到着したあとの apache の設定はまた後日。もう certbot でできてるので、ファイルを置いて設定ファイルを書き換えるだけとは思うが。

#1 学認・eduroam サービス

大学のもの。ビジター用アカウントも設定できたのか。6 月の研究会のときに調べておけばよかったな…
コメント [全部読む/投稿する]

2024年08月29日(木) [n年日記]

#3 dovecot/fetchmail

DMZ の仕様が変わったので、surf で pop3s サーバを動かし、ローカルネットのホストから fetchmail でとってくる設定に。フォルダはまだ MH。いやまあ。

また ChatGPT さんにだいぶお世話になった。ときどき嘘をつかれたが。

dovecot:

/etc/dovecot/conf.d/10-ssl.conf に以下を追加
ssl = yes
ssl_cert = </etc/letsencrypt/live/DOMAINNAME/fullchain.pem
ssl_key = </etc/letsencrypt/live/DOMAINNAME/privkey.pem
/etc/dovecot/conf.d/20-pop3.conf に以下を追加
protocol pop3 {
  pop3_uidl_format = %08Xu%08Xv
  ssl = required
}
で systemctl restart dovecot で。

クライアントから
openssl s_client -connect yourdomain:995 -quiet
して
depth=2 C = US, O = Internet Security Research Group, CN = ISRG Root X1
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = E6
verify return:1
depth=0 CN = surf.st.seikei.ac.jp
verify return:1
+OK Dovecot (Debian) ready.
と出たのでこちらは OK。

fetchmail:

~/.fetchmailrc を 600 で作り、
set daemon 300
  poll SERVERNAME with proto POP3
  user nakano there with password PASSWORD is nakano here
  ssl
  mda "/usr/bin/procmail -d %T"
  # keep # uncomment するとサーバにメールが残る
する。.procmailrc はもともと ~/.forward で procmail にパイプして使っていたのが残っていたので、そのままで OK だった。
% fetchmail
で無事にこれまでのものも含めてとってきてくれた。

postfix:

main.cf の mynetworks を修正して reload。 でもたぶん上流の設定がおかしいのでなおしてもらわないといけない模様。

iptables:

OUTPUT は ACCEPT, FORWARD は DROP, INPUT はいろいろ制限。

#2 Let's Encrypt

大学のサーバーで使っていいかは確認しないといけないけど、ひとまず鍵をゲット。

certbot パッケージを入れて、
# certbot certonly --manual --preferred-challenges http -d DOMAINNAME -m nakano@st.seikei.ac.jp --agree-tos --manual-public-ip-logging-ok
すると、どこそこの URL にこれこれの内容を含むファイルを置け、という指令が飛ぶので、そのようにして続行すると /etc/letsencrypt/live/ に鍵をもらえる。

更新は、debian だと cron があるみたい。ひとまず手動で
# certbot certonly --manual -d surf.st.seikei.ac.jp
すれば更新はできる模様。いまは expire してないのでそのまま。

#1 サーバの引っ越し

ネットワークもいろいろ変わり、ここの surf.ml.seikei.ac.jp も CNAME で残してもらったけど A は surf.st.seikei.ac.jp となった。IP アドレスも変わりました。 ^
というわけで /etc/apache2/sites-available/000-default.conf を
<VirtualHost *:80>
        ServerName surf.ml.seikei.ac.jp
        ServerAdmin nakano@st.seikei.ac.jp

        RedirectMatch 301 ^(.*)$ http://surf.st.seikei.ac.jp/$1
</VirtualHost>

<VirtualHost *:80>
        ServerName surf.st.seikei.ac.jp
        ServerAdmin nakano@st.seikei.ac.jp
(あとはいままでとだいたい同じ)
という感じに変更した。
コメント [全部読む/投稿する]

2024年08月23日(金) [n年日記]

#1 新ネットワーク対応

各ホストでは
  1. /etc/network/interfaces を編集
  2. /etc/hosts を編集
  3. /etc/resolv.conf を編集
  4. /etc/nslcd.conf を編集
  5. nslcd を再起動…するよりたぶん本体を再起動が楽。
コメント [全部読む/投稿する]

2024年08月07日(水) [n年日記]

#1 openvpn の crt の expiration

夜に作業していたら急に接続がおかしくなり、ログを見たら
2024-08-07T23:28:14.313323+09:00 dh1700 ovpn-client[1323]: VERIFY ERROR: depth=0, error=certificate has expired: CN=(XXX), serial=(XXX)
というので繋がらなくなっていた。後知恵だけどサーバの crt を見たら、確かに
        Validity
            Not Before: Aug 23 12:13:27 2021 GMT
            Not After : Aug  7 12:13:27 2024 GMT
って書いてあったよ…

ネットが繋がらなくなっていたので大変だったが、スマホで細々と繋いで調べてみたら、これは証明書を差し替えないとどうにもならんらしい。ということで このとき(202108/23) のやり方で再生成して差し替えて無事動作。 vars は以下のみを変更
--- /usr/share/easy-rsa/vars.example	2022-05-19 10:53:50.000000000 +0900
+++ vars	2024-08-07 23:20:46.004422499 +0900
@@ -101,12 +101,12 @@
 #       dollar sign ($)
 # Use them at your own risk!
 
-#set_var EASYRSA_REQ_COUNTRY	"US"
-#set_var EASYRSA_REQ_PROVINCE	"California"
-#set_var EASYRSA_REQ_CITY	"San Francisco"
-#set_var EASYRSA_REQ_ORG	"Copyleft Certificate Co"
-#set_var EASYRSA_REQ_EMAIL	"me@example.net"
-#set_var EASYRSA_REQ_OU		"My Organizational Unit"
+set_var EASYRSA_REQ_COUNTRY	"JP"
+set_var EASYRSA_REQ_PROVINCE	"Tokyo"
+set_var EASYRSA_REQ_CITY	"Musashino"
+set_var EASYRSA_REQ_ORG	"Seikei Univ"
+set_var EASYRSA_REQ_EMAIL	"nakano[st.seikei.ac.jp"
+set_var EASYRSA_REQ_OU		"ST EMP labo"
 
 # Choose a size in bits for your keypairs. The recommended value is 2048.  Using
 # 2048-bit keys is considered more than sufficient for many years into the
次の expiration は
            Not After : Nov 10 14:29:47 2026 GMT
なので、新棟に引っ越ししたら対策しよう。

なお easy_rsa の vars ファイルで
# How many days until the next CRL publish date?  Note that the CRL can still be
# parsed after this timeframe passes. It is only used for an expected next
# publication date.
#set_var EASYRSA_CRL_DAYS       180
を変更すると valid な期間を長くできるらしい。今回は変更せずに生成して 2026/11/10 だったけど、このへんのデフォルトが Debian だと変わっているのかしら。
コメント [全部読む/投稿する]

以上、4 日分です。
タイトル一覧
カテゴリ分類
book
dept
issp
labo
paper
snap
stock
vsj
Powered by hns-2.19.5, HyperNikkiSystem Project

中野武雄 (NAKANO, Takeo) <nakano@st.seikei.ac.jp> Since 1999-10-07
RSS feed, 更新時刻, LIRS エントリ, アクセス制御 (解説)

中野のホームページへ