エントリー

メールサーバ構築

7月中頃にメールクライアントPCのOSが不良(不調かな)となり,またメールが読めなくなってしまった(実はこの1年半で3度目)

拙者はセキュリティのためメール読み込み用PCを単独で置いてあるのだが,ここのところ何故か良く壊れる

で,ようやく復旧できた訳だが・・・これはタイトルにあるメールサーバ構築を実施するトリガーである

本題はここから

今年の暑さは凄まじく玄箱の設置している部屋の温度も放出した熱で上昇ぎみなので空冷での冷却は無理と判断し玄箱を諦めることに

玄箱ではメールサーバを運用していたのでこれを移行しなければならない

そこでまず試験的に既存サーバにメールサーバを置いて最終的には熱放出の少ないメールサーバに移行することにした

玄箱でのメールサーバは「postfix」と「popa3d」で運用,今回は「exim4」と「dovecot」を使ってみる

参考サイトもあるが,いろいろ嵌ったので記録しておこうと思う(ただしセキュリティの問題があるので非公開部分もある)

尚,当初は簡単に終わるはずだったのだが・・・随分と時間を費やしてしまう

exim4の設定方法

参考サイト1参考サイト2で問題ないが,参考サイト3(英語)が一番良い

前提としてプロバイダ配下のSMTPサーバはOP25対策のためプロバイダのSMTPをリレーしなければならない

①これを踏まえて以下のコマンドでexim4の設定を行う

# dpkg-reconfigure exim4-config 

/etc/exim4/update-exim4.conf.conf が作成される(以下参考)

# /etc/exim4/update-exim4.conf.conf
#
# Edit this file and /etc/mailname by hand and execute update-exim4.conf
# yourself or use 'dpkg-reconfigure exim4-config'
#
# Please note that this is _not_ a dpkg-conffile and that automatic changes
# to this file might happen. The code handling this will honor your local
# changes, so this is usually fine, but will break local schemes that mess
# around with multiple versions of the file.
#
# update-exim4.conf uses this file to determine variable values to generate
# exim configuration macros for the configuration file.
#
# Most settings found in here do have corresponding questions in the
# Debconf configuration, but not all of them.
#
# This is a Debian specific file

dc_eximconfig_configtype='smarthost'
dc_other_hostnames='mail.inoshita.jp; inoshita.jp'
dc_local_interfaces=''
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost='xxxx.xxxx.xxx::587' # ::(コロン2個)ポート番号
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='false'
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'

直接編集しても良いが反映させるには

# update-exim4.conf

を実行すること

②/etc/exim4/passwd.clientの編集

プロバイダのSMTPサーバに接続するためのIDとパスワートを書き込む(プレーンテキスト)

# password file used when the local exim is authenticating to a remote
# host as a client.
#
# see exim4_passwd_client(5) for more documentation
#
# Example:
### target.mail.server.example:login:password
smtp.xxx.ne.jp:hoge:hoge-hoge        #プロバイダのSMTP:認証ユーザID:認証パスワード

③/etc/email-addressesの編集

送信元メールアドレスがプロバイダに登録認証されているメールアドレスでないと蹴られるのでメールを送信するUIDに対応した書き換えリストを作成する

# This is /etc/email-addresses. It is part of the exim package
#
# This file contains email addresses to use for outgoing mail. Any local
# part not in here will be qualified by the system domain as normal.
#
# It should contain lines of the form:
#
#user: someone@isp.com
#otheruser: someoneelse@anotherisp.com
user1: hoge@xxxx.xxxx.ne.jp
user1@localhost: hoge@xxxx.xxxx.ne.jp
user2: hoge@xxxx.xxxx.ne.jp

結果,送信元メールアドレスはすべて同じになる

これをミスると接続できない旨のログが出て苦しむ(拙者はtelnetで接続確認したがログインできず嵌った)

④/etc/exim4/passwdの編集

MUAから接続するためのIDとパスワートで,/etc/shadow からコピーするか exim-adduser で追加する

形式:

user:password:comment

/etc/shadow からコピーすると3フィールド以上あるが最初の3つしか利用してないので問題なし

送信元メールアドレスがすべて同じになるのが問題なのでSMTPサーバをプロバイダからMyDNSのメールリレーサービスを利用させていただくことにしたが今度は認証しようとするのを外せず断念して「postfix」を使うことに変更(exim4 は色々できるが調整部分が多く面倒すぎる)

postfixの設定

これはこここちらを参考にすれば問題なし

「postfix」の設定はログの扱いを考えるだけで他は問題なし

(追記)

ローカルのMUAからSMTP経由でメールする場合は以下の編集が必要

/etc/postfix/master.cf の編集

submission inet n       -       -       -       -       smtpd
#  -o syslog_name=postfix/submission
#  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING

/etc/postfix/main.cf の追加編集(「Relay access denied」となる)

mynetworks = 127.0.0.0/8, [メール送信元IP]/32
doveconfの設定

上記の「postfix」の参考サイトにある

pop で悩むのは,mboxの扱いでsmtpソフトとの兼ね合いもあるのだが,最近はディレクトリ展開が当たり前なのか

imap も使うなら ディレクトリ展開 の方が良いけどユーザHOMEディレクトリを作成しないといけないので無駄(popだけならいらない)

なので

mail_location = INBOX=/var/mail/%u

だけにしたのだけど動作不良に陥る(既にimapの環境になってしまっている?)

仕方ないので

mail_location = mbox:~/.mbox:INBOX=/var/mail/%u

として各ユーザのHOMEを作成

メール受信時

pop3(user01): Error: file_dotlock_create(/var/mail/user01) failed: Permission denied 
(euid=1001(user01) egid=100(users) missing +w perm: /var/mail, we're not in group 8(mail),
dir owned by 0:8 mode=0775) (set mail_privileged_group=mail)

というエラーが出て、受信したメールが/var/spool/mail/から消えない,/etc/dovecot/conf.d/10-mail.confに

mail_privileged_group = mail

を追加で解決

低抵抗測定器

低抵抗を測定するのに毎回測定準備するのが手間なので簡単に測定できるようにしておきたいと思っていた

そこで何か良さそう例はないか調べた結果,こちらの簡易低抵抗測定器を参考にして実験することにした

ただしマイコンはAVRを使うしパーツも同じではないので全く同じというわけではない

回路図

対象となる低抵抗に定電流を流し降下電圧を計測,回路構成は定電流回路と低電圧測定回路となる

回路図

定電流は80~100mA位とし,Max.100mAのLM317Pを使用,手持ちの金属被膜抵抗で27Ω並列で13.5Ωにして92.6mAにする

(追加):(LM317:定電流)=(out-adj間:1.25V)÷ (out-adj間)RΩ(こちらに特性評価あり)

低電圧測定は定番のLM358を使って101倍(Max.0.26Ω)と11倍(Max.2.58Ω)へ増幅(2レンジ切替)してADCで計測する

定電流

定電流は計算上93mA(92.6mA)のところ実測で93.4mA

ブレッドボードで測定試験

実験

左上=抵抗値,右上=抵抗の降下電圧,左下=バージョン,右下=0Ω調整値(※)

(※)測定端子を短絡させ測定するとオペアンプのオフセット電圧を含む0Ω調整値になる

ブレッドボード上では僅かな揺れでピンの接触抵抗が変化するため計測値が安定しない

改良すべき点
  • 定電流回路と低電圧測定回路で単独電源にして4端子法の測定回路にする
  • ミノムシクリップでは扱い難いのでケルビンクリップを使う(自作している方を参考にするかクリップを購入
  • 定電流を100mAになるように調整可能にする
  • 基準電圧や抵抗など気温によって影響する部分がある(調整可能か?)
  • ADCの精度が悪いので補正が必要

AMD Ryzen 5 1600にパワーアップ

Ryzen 5 を購入

RyzenRyzen5

理由としては

  • 5年半も使用したためか電源が入りにくいとか稀に危うい現象が発生すること
  • 先月グラフィックボードを「GeForce GTX 1060」にアップグレードしたがCPUが性能不足で100%の性能が出てないこと
  • 最新との性能差が倍位になったかなっと思ったこと
  • 動画のエンコードが早くなってほしいなっと思ったこと
  • AMDの新プロセッサが発売されたこと

等であり,1600にしたのは単にコストパフォーマンスが良いと判断したから(1700もコストが良さそうだが8コアは将来の改良版にて検討することにする)

Ryzen5

立派なCPUクーラーも付属している

中身1中身2

マザーボードは,「MSI B350 TOMAHAWK」を選択

マザーボードマザーボード

メモリーは「DDR4ー2666」の価格が良かったので選択

メモリーメモリー

ハードウェアセットアップ

マザーボードにCPUをセットして(これがCPUの見納め)

CPU

CPUクーラーをセット

クーラー

他,電源・FAN・デバイス・SW類の接続を行い,まずはディスクを外した状態にして電源ON

BIOS起動でハード面に問題ないのを確認してソフトの移行へステップ

OSは使用していたWindows10でおそらく問題ないだろうとバックアップもしないでディスクを付け替えて電源ON

約10分位かな全部自動でやってくれて移行完了(昔はドライバーの入れ替えで苦労したんですけどね)

ベンチマーク

お待ちかねの性能測定(気持ちが高まる)

さくっとCystalMarkをやってみると

CM1

前のがこれなんで,ALUが330%,FPUが230%と凄い結果がでた(予想通りかw)

他も簡単に,

3DMARK(Total): 3257 → 4310 : CPU scoreの分Up

3DMARK(Graphics): 4191 → 4161 : 変わらず

3DMARK(CPU): 1440 → 5413 : 375%

MHFベンチマーク【大討伐】: 27397 → 32552 : 118%

ファイナルファンタジーXIV: 紅蓮のリベレーター: 7906 → 11881 : 150%

他に40分位の映像をx264でエンコードするのに15~20分必要だったのが約6分に短縮

(2020.5.23 追加)

新しいCPUのデータがあったので参考までに追記

Ryzen 5 2600:ALU = 161195, FPU = 111393

Ryzen 5 3600:ALU = 209368, FPU = 129780

整数演算の向上の割にフローティングは向上していないようにみえる

メモリをOC

Ryzenはメモリネックになっている部分があるらしく簡単に性能向上させるにはメモリクロックをアップするとのことだそうだ

そこで2666を購入しているので2166から2666にメモリクロップをアップ(123%)させた結果

メモリアップ

69825 → 86865 の 124% となり

ファイナルファンタジーXIV: 紅蓮のリベレーター: 11881 → 12472: 105% : 5%アップ

ダイソー電球型LEDライト

ダイソーの電球型LEDライト(名称はLED電球型ライトかもしれない)を購入

外箱

店で単に目に付いたのとUSBケーブルが1.2mも付いているので素材利用しようかと思ったのが購入した理由

ちょうどダイソーのUSBモバイルバッテリーが転がっていたので使って点灯させてみると案外明るく電球色でモダンな感じが良さそう

背部に引っ掛けの鍵が付いているのでちょいと引っ掛けて照らすこともできる

点灯点灯2

電流を計測してみると,350mA,5.04V × 0.35A = 1.764W であった

モバイルバッテリ

仕様では,5V × 1.2A = 5~6W と箱に記載されているが異なるようだ

350mA位なら大丈夫かなと,例のACアダプタに接続して電流を計測してみる

200円のACアダプタの場合

200円

300円のACアダプタ(Android版)の場合

300円

お粗末なACアダプタだが何とか点灯した

使い道は?

この電球型LEDライトは100円とは思えない出来であり良い物なんだけど難点として(部品取り用途は除き)使い道があるのかどうか?

少し考えてみる

  • アウトドアとしてテントや夜釣りの明かり,庭などでも夜のバーベキューとかの照明など普段照明が設置されてない場所での一時的な利用
  • 停電などの緊急用(停電時のトイレ照明など)
  • 持って移動しながら使用するようにはできていないが軽量なので出来ないこともない
  • 電球色なので電源コンセントから給電して寝室に常備とか一時的にバーの雰囲気を出すために部屋で使う

必要なくなったら部品取りかな

中身を見るため分解

分解

部品点数は非常に少ない

  • ライトのカバーはハメ込みで引っ張ると取れる
  • USBケーブルが出ている方はネジ式になっていて2~3回すと取れる
  • USBケーブルは1.2mもある
  • 5730チップLEDが10個で電流制限抵抗(18Ω)が1つづつ付いている
  • LED基板は非常に薄い(放熱対策はどうなっているのか?)

根本USBケーブル

背部は簡単なねじ込み式で1.2mのUSBケーブル

基板抵抗

薄い基板に10個のLEDと電流制限抵抗(18Ω)

疑問

5730チップLED(廉価版だろうが情報源はこちら)の仕様

Vf:3.2V@50mA(MAX150mA),50~55lm@150mA

1セット5730と抵抗(18Ω)が直列で,Vfから考えると5Vを抵抗で1.8V電圧降下させるため100mA流すことになる

10セットが並列なので全体で5V1Aとなり5Wで(ほぼ)仕様通りとなる

しかし実際は全体で350mAしか流れていない(つまり1セット当たり約35mA)

疑問を解決させるため,抵抗,LEDの電圧を見ると,それぞれ0.6V,3.1Vであった・・・なんで?

基板側の全体電圧を計測すると3.7Vだったので辻褄はあうがUSB元が5Vなのに先は3.7Vなのは何故?

ユーティリティ

検索

エントリー検索フォーム
キーワード

新着コメント

Re:ATS-25を作製する
2025/03/23 from kazu
Re:ATS-25を作製する
2025/03/22 from admin
Re:ATS-25を作製する
2025/03/22 from kazu
Re:NOAA受信システム復旧
2025/03/20 from admin
Re:NOAA受信システム復旧
2025/03/16 from とおりすがり

過去ログ

Feed