KVMで作ったサブホストで日本語の切り替えに漢字キーが使えない

色々いじったが原因が分からないので暫くほって置いた。この時の状況は漢字キー(全角半角)とひらがな/カタカナが効かないだけで、画像2にあるように Alt+@ではひらがな入力と英数入力が押すたびにトグルするので日本語から英語に行ったり来たりは出来るが、二ツのキーを押すのと、この切り替えは漢字キー一つでやるのに慣れているので、どうも面倒臭い。

 

 

しばらくして、サブホストの設定を見直している時に”はっ”と気が付いた。

 

画像1はサブホストの設定画面である(これは仮想マシンマネージャーのsmb0を選び”開くアイコン”をクリックし、赤いアンダーラインのある”電球”をクリックし、”ディスプレー Spice”を選んだもの)このキー配列に”ja”を選び、適用をクリックすると、無事サブホストでも、漢字キーで日本語/英語の切り替えができるようになった。

カテゴリー: Linux運用時のメモ | コメントする

一週間も経たないのにまたAMAZONが語られる危険メール

いつも言っているが、メールを見るときは

1:差出人を見る事(画像の1)。今回は本文はアマゾンと言っておきながら、差出人はアマゾンでない info@em2302.kt.city。今回はこれですぐわかるが、ここは偽装ができるので、amazonになっていたり、自分のメアドになっていたりする。

2:これが一番大事。画像2をクリックするとそこに飛ぶのだが、どこに飛ぶかを確認できる。それにはマウスをオレンジの確認用アカウントの上に持っていく(絶対にクリックしてはいけない、)と、画像の3の下に赤線のアンダーラインで示した所が実際に飛ぶ場所。https://u7815977.ct.sendgrid.net にとぶ。ほーらここはあまぞんでないよー これはTHUNDERBIRDというメールソフトの場合だが、ほかの物でも必ずどこかに表示される筈。

カテゴリー: 危険メールや手紙、IP | コメントする

またまたアマゾンが語られる(狙われてるなー)

コロナの自粛生活の為かまたまたAMAZONが語られている。

この所悪さをする奴のやり方が巧妙になって来ている。は差出人だが偽造である。なんでこのアドレスが使われたか?実はこのWEBに良くアクセスし、その確認メールがくるがそのメアドが noreply@info.yachin-shien.go.jp である。と言う事は敵は私のメアドをウォッチしている事になる。気味が悪いけど防ぎようは無さそう。ちなみに昔はここが出鱈目なアドレスを使っていたが、最近のメールサーバーは差出人のアドレスが存在するかチェックをしていることが多いので、このように実際にあるメアドに偽装している。良くあるのは自分のメアドになっている。

問題はの所をクリックさせたいのだろうが、これが問題、ここにマウスを持って来ると実際に飛ぶアドレスが左下のに表示される(メールソフトはサンダーバードだが、ほかのソフトでも同じようなものが出る筈)ここには
https://www.amazboc.club/
となっている。はーー amazboc.club  よくもamazonに似たようなドメインだがここはアマゾンでは無い。ここをクリックすると、あなたは彼らの餌食になるよ!!!

何度もこのWEBに書いているが、クリックする場所にマウスを持って行き、このように表示されたとび先を必ずチェックしてね。

蛇足だが、上のようなとび先はURLと呼ばれ、このURLは一文字でも違うと別のURLとして登録出来てしまう。なので悪さをする奴は似たようなURLを登録している。

カテゴリー: 危険メールや手紙、IP | コメントする

4:設定時に躓いた事

メールソフト(thunderbird)の設定ミス 最初はvirtual domain でなく単独のメールサーバーでテストをし、その後virtual domainを導入していました。virtual domain 関連の設定をしたが、如何してもdovecot にログイン出来無い。その時のログは

Jan 08 10:09:00 auth-worker(13946): Info: sql(otake,xxx.xxx.xx.xx,<i1aZM1m4qOig7U0V>): unknown user
Jan 08 10:09:06 auth-worker(13946): Info: sql(otake,1xxx.xxx.xx.xx,<i1aZM1m4qOig7U0V>): unknown user
Jan 08 10:09:12 auth-worker(13946): Info: sql(otake,xxx.xxx.xx.xx,<i1aZM1m4qOig7U0V>): unknown user
Jan 08 10:09:14 imap-login: Info: Disconnected (auth failed, 3 attempts in 14 secs): user=<otake>, method=PLAIN, rip=xxx.xxx.xx.xx, lip=192.168.xx.xx, TLS, session=<i1aZM1m4qOig7U0V>

これはvirtual の設定をした後なので、ユーザー名の後にドメインが無いのがおかしい。dovecot の設定を色々見たが判らない。やっとの事でメールソフト側の問題である事が分かり thunderbirdのサーバー設定のユーザー名(N):にユーザー名@ドメイン名 とし、同じ様に、送信(SMTP)サーバーの設定のユーザー名(M):に同じものを設定設楽ログイン出来た。

メールの保存が本来と違う所に出来てしまう 私の場合、メールの保存場所は /Mail/ドメイン名/ユーザー名(ドメイン無し)だが、送信メールは本来の場所に保存されているが、dovecotでログインすると/Mail/ドメイン名/ユーザー名@ドメイン名が出来てそこを参照している。postfix は正常なので、dovecotの設定が間違えている筈。local.confの mail_location = maildir:/Mail/%d/%u になっていた。最後の%uはユーザー名@ドメイン名を指すのでこれが原因、ココの最後の %u を %n に変更したら正常になった。

dovecotにログイン出来無い これは結論から言うとpostfixadmin とdovecotの暗号化の違いが原因。これはhttps://www.kinryo.net/?p=1997 を参照して下さい

apacheの Alias の設定が出来無い /etc/httpd/conf.d/postfixadmin.conf を設定している時、本来の場所に飛ばない。この設定は
Alias /postfixadmin “/サーバーのルート/postfixadmin/public”としているが、どうしても最後のPublicでは無く、postfixadminに行ってします。これには二日間も原因が解らなかった。仕方無くアパッチの本家にアクセスし(http://httpd.apache.org/docs/2.2/ja/mod/mod_alias.html)このページの処理の順番を見て、もしやと思い、/etc/httpd/conf.d/ を探すと、在った。如何してこんな所に書いたか全くおかしいが、awreport.conf にAlias /postfixadmin “/サーバーのルート/postfixadmin の記入がある。しかもこのファイルはpostfixadmin.confより前にあるので、ここでヒットし、public に飛ばなかった!!!

カテゴリー: メールサーバーに挑戦 | コメントする

3:postfixadminのインストールと設定

ダウンロードはhttps://sourceforge.net/projects/postfixadmin/にReleased /postfixadmin-3.3.2/PostfixAdmin 3.3.2 – bug fix.tar.gzがありましたのが、私がインストールした時は3.2でしたので、この分の設定です。postfixadmin ディレクトリーを保存した所に INSTALL.TXT がありますのでこれに従って設定して行きますが、postfixadminへのアクセスの為にapacheの設定をします。/etc/httpd/conf.d/ にpostfixadmin.conf というファイルを作成
# gedit /etc/httpd/conf.d/postfixadmin.conf

Alias /postfixadmin "/xxxxxxxx/xxxxx/kinryo/postfixadmin/public"

<Location "/postfixadmin">
	Require all denied
	Require ip 127.0.0.1
	Require ip 192.168.xx.xx/24
	Require all granted
</Location>

一部に伏せ字があります。この設定は自分のネットワークからのみアクセスを許可しています。
# systemctl reload httpd
とし、設定を反映。

次はデーターベースの制作 (mysql(mariadb)自体は既にインストール済みです)
データーベースは mysql(mariadb)
其ユーザーは postfixadmin
データーベース名は postfix として作成
# mysql -u root -p
パスワードを入力
MariaDB [(none)]> create database postfix;
MariaDB [(none)]>grant all privileges on postfix.* to postfixadmin@localhost identified by ‘postfixadminのパスワード’;
MariaDB [(none)]>quit
作成したユーザーパスワードでログインできることを確認
# mysql -u postfixadmin -p
パスワードを入力

postfixadminはconfig.inc.phpと同じ場所に config.local.php というファイルを置いておくとデフォルトをオーバーライドしてくれるので、早速作成
# gedit /WEBのルートディレクトリ/postfixadmin/config.local.php


<?php
$CONF['database_type'] = 'mysqli';
$CONF['database_user'] = 'postfixadmin';
$CONF['database_password'] = 'xxxxxxxxxx';
$CONF['database_name'] = 'postfix';

$CONF['configured'] = true;
$CONF['default_language'] = 'ja';
?>

次は、template_c ディレクトリーの作成
# mkdir /WEBのルートディレクトリ/postfixadmin/template_c
postfixadmin ディレクトリー以下のオーナーをapacheにする。
# chown -R apache. /WEBのルートディレクトリ/postfixadmin

そしてブラウザで ドメイン/postfixadmin/setup.phpにアクセス

この画面は全く初めてアクセスすると上の画面とは若干違う(この画面は二回目以降の画面)ここで、管理者に自分のメールアドレスを入力し、設定するパスワードを二回入れ、管理者をクリックすると

赤字の最後の行の $CONF[‘setup_password’] で始まる行をconfig.local.phpにコピー

<?php
$CONF['database_type'] = 'mysqli';
$CONF['database_user'] = 'postfixadmin';
$CONF['database_password'] = 'XXXXXXXXX';
$CONF['database_name'] = 'postfix';

$CONF['configured'] = true;
$CONF['default_language'] = 'ja';

$CONF['setup_password'] = '07dfece4c2cce2b07b8bb1b8b477310b:7ab14259fc21b0e3a79610c5386d3f76a3f06c0a';
?>

これで、 ドメイン/postfixadmin にアクセスすると
そして、メアドとパスワードを入れ、ログインをクリックすると

これで、ドメインやメアドなどが作れる。

カテゴリー: メールサーバーに挑戦 | コメントする

2:dovecotの設定

dovecotの認証はmysql(mariadb)を使います、SSLはletsencryptを使用、ログはデフォルトのmail.logでは無くdovecot.logにする。imapとpop3の設定が入っているが、pop3はファイヤーウォールで禁止しています。SMTP認証もdovecot側でやります。
メールの保存場所には新規に作った50GBの領域である /Mail にドメイン/ユーザー名(メアドの@より前の部分)として保存、ここをアクセスするユーザーは新規にvmailというユーザーを作成し、其UID、GIDを10000とし、このユーザーでメールの保存などをする。
dovecotは、/etc/dovecot/local.conf を作る事でデフォルトの設定を変更できます。
まずはlocal.confを有効にする為に /etc/dovecot.conf の最後に !include_try local.conf を書き入れます。次に /etc/dovecot/conf.d/10-auth.conf を変更
#!include auth-system.conf.ext 先頭に#を入れてコメントアウト(これはシステムのログインを使う場合なので今回はコメントアウト)
!include auth-sql.conf.ext の先頭の#を削除し有効化。
次に、local.confを作成
# gedit /etc/dovecot/local.conf
protocols = imap pop3
listen = *
login_greeting = ready.
syslog_facility = local5
log_path = /var/log/dovecot.log
ssl = yes
ssl_cert = </etc/letsencrypt/live/mail.kinryo.net/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.kinryo.net/privkey.pem
mail_location = maildir:/Mail/%d/%n
first_valid_uid = 10000
first_valid_gid = 10000
mail_uid = 10000
mail_gid = 10000
#auth_mechanisms = plain
auth_mechanisms = plain login cram-md5
service auth {
     unix_listener /var/spool/postfix/private/auth {
          mode = 0660
          user = postfix
          group = postfix
          }
}
#protocol imap {
#     mail_plugins = quota imap_quota
#}
#protocol pop3 {
#     mail_plugins = quota
#}
#auth_verbose = yes
#auth_debug = yes

quotaは現時点では未使用(将来の為)、最後のauthから始まる二行はデバッグをするときに有効にする。ドメインやユーザーの作成はpostfixadminから行いますが、その際パスワードの暗号化を同じにするために、auth_mechanisms = plain login cram-md5 を入れてあります。ここはcram-md5 だけでいいと思いますが、未検証です。また、postfixadmin側の暗号化をcram-md5にするために、postfixadminの下にある config.inc.phpに
//$CONF[‘encrypt’] = ‘md5crypt’; の下に
$CONF[‘encrypt’] = ‘dovecot:CRAM-MD5’; を記入し保存。これでパスワードの暗号化がcram-md5になる。次にmysql(mariadb)関連の設定
# gedit /etc/dovecot/dovecot-sql.conf.ext
driver = mysql
connect = host=localhost dbname=postfix user=postfix password=xxxxxxx default_pass_scheme = CRAM-MD5
user_query = select concat(‘/Mail/’, maildir) as home, 10000 as uid, 10000 as gid FROM mailbox WHERE username = ‘%u’ AND active = ‘1’;
password_query = SELECT password FROM mailbox WHERE username = ‘%u’ AND active = ‘1’;

次はpostfixadminのインストールと設定。3:postfixadminのインストールと設定を参照

カテゴリー: メールサーバーに挑戦 | コメントする

1:postfixの設定

2021-1-10現在の情報です。現時点でのテストは二つのドメインの内、kinryo.netに関してはほぼテストが終了していますが、kinryokai.netに関してはローカルネットワーク内でのテストのみが終了していますが、グローバルからのテストはまだ出来て居ません。というのも、このドメインは現時点で全く別のホストで現行のメールサーバーが稼働しており、DNSの設定を変更しないとならないのですが、過去のメールのデーターを移し変えていないからです。

postfixはvirtualで複数のメールサーバーを稼動させます。下記に postconf -n の結果を記します。(ご存じだと思いますが、これはデフォルトの設定から変更した部分のみを表示しています)この設定はメイルボックスはMaildir形式(一つのメールが一つのファイル)、ipv6は使はない、スパムやウィルスチェックは centossrv.comを参考に設定、sasl authを導入、その認証は dovecotに委せる(dovecotの設定で出てきますが、認証はmysql(mariadb)を使う)、メールの暗号化は letsencrypt を使う、メイルデーターの保存場所は /Mail (これは移設を簡単にするために、新たに専用の領域を作った。又、新規ユーザーとしてvmailを作成しそのUID、GIDを10000にした。又 /mail以下の所有者をvmailにした。)、バーチャルドメインやバーチャルメイルボックスにはmysql(mariadb)を使う。IPアドレスは伏せ字。
# postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5
disable_vrfy_command = yes
header_checks = regexp:/etc/postfix/header_checks
home_mailbox = Maildir/
html_directory = no
inet_interfaces = all
inet_protocols = ipv4
local_recipient_maps =
local_transport = virtual
luser_relay = unknown_user@localhost
mail_owner = postfix
mailbox_command = /usr/bin/procmail
mailbox_size_limit = 9663676416
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
message_size_limit = 52428800
milter_command_timeout = 150
milter_default_action = tempfail
milter_mail_macros = {auth_author} {auth_type} {auth_authen}
milter_protocol = 6
mydestination =
mydomain = kinryo.net
myhostname = mail.kinryo.net
mynetworks = 192.168.X.X/24, 127.0.0.0/8
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.10.1/README_FILES
sample_directory = /usr/share/doc/postfix-2.10.1/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
smtp_tls_ciphers = high
smtp_tls_mandatory_protocols = !SSLv2,!SSLv3
smtp_tls_protocols = !SSLv2,!SSLv3
smtp_tls_security_level = may
smtpd_banner = $myhostname ESMTP unknown
smtpd_client_restrictions = permit_mynetworks, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unknown_client, reject_rbl_client all.rbl.jp, reject_rbl_client zen.spamhaus.org, permit
smtpd_helo_required = yes
smtpd_milters = unix:/var/run/milter-manager/milter-manager.sock
smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_sender_restrictions = reject_unknown_sender_domain, reject_non_fqdn_sender
smtpd_tls_cert_file = /etc/letsencrypt/live/mail.kinryo.net/fullchain.pem
smtpd_tls_ciphers = high
smtpd_tls_key_file = /etc/letsencrypt/live/mail.kinryo.net/privkey.pem
smtpd_tls_loglevel = 1
smtpd_tls_mandatory_ciphers = high
smtpd_tls_mandatory_protocols = !SSLv2,!SSLv3
smtpd_tls_protocols = !SSLv2,!SSLv3
smtpd_tls_received_header = yes
smtpd_tls_security_level = may
smtpd_tls_session_cache_database = btree:/var/lib/postfix/smtpd_scache
tls_high_cipherlist = kEECDH:+kEECDH+SHA:kEDH:+kEDH+SHA:+kEDH+CAMELLIA:kECDH:+kECDH+SHA:kRSA:+kRSA+SHA:+kRSA+CAMELLIA:!aNULL:!eNULL:!SSLv2:!RC4:!MD5:!DES:!EXP:!SEED:!IDEA:!3DES
unknown_local_recipient_reject_code = 550
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:10000
virtual_mailbox_base = /Mail
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 9663676416
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_transport = virtual
virtual_uid_maps = static:10000
尚、smtpd_client_restrictions, smtpd_sender_restrictions, smtpd_recipient_restrictions, は同じような設定が出来るが、勘違いしやすいので、https://www.netmarvs.com/archives/3808 を参考にすると良い。

/etc/postfix/master.cf は
smtp inet n – n – – smtpd
smtps inet n – n – – smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
pickup unix n – n 60 1 pickup
cleanup unix n – n – 0 cleanup
qmgr unix n – n 300 1 qmgr
tlsmgr unix – – n 300 1 tlsmgr
rewrite unix – – n – – trivial-rewrite
bounce unix – – n – 0 bounce
defer unix – – n – 0 bounce
trace unix – – n – 0 bounce
verify unix – – n – 1 verify
flush unix n – n 1000? 0 flush
proxymap unix – – n – – proxymap
proxywrite unix – – n – 1 proxymap
smtp unix – – n – – smtp
relay unix – – n – – smtp
showq unix n – n – – showq
error unix – – n – – error
retry unix – – n – – error
discard unix – – n – – discard
local unix – n n – – local
virtual unix – n n – – virtual
lmtp unix – – n – – lmtp
anvil unix – – n – 1 anvil
scache unix – – n – 1 scache

mysql(mariadb)関連。尚、postfixadminのdatabase名:postfix, user名:postfixadmin, パスワードは伏せ字
# cat /etc/postfix/mysql_virtual_alias_maps.cf
user = postfixadmin
password = XXXXXX
hosts = localhost
dbname = postfix
table = alias
select_field = goto
where_field = address

# cat /etc/postfix/mysql_virtual_domains_maps.cf
user = postfixadmin
password = XXXXXX
hosts = localhost
dbname = postfix
table = domain
select_field = domain
where_field = domain
additional_conditions = and active = ‘1’

# cat /etc/postfix/mysql_virtual_mailbox_maps.cf
user = postfixadmin
password = XXXXXX
hosts = localhost
dbname = postfix
table = mailbox
select_field = maildir
where_field = username

 

カテゴリー: メールサーバーに挑戦 | コメントする

CentOS7にphp-imapをインストールする方法(php7.3)

postfixadminをインストール後、setup.phpにアクセスすると二つの問題が表示された。

一つは  Error: Can’t connect to database
Please edit the $CONF[‘database_*’] parameters in config.inc.php.

で、これはデーターベースの設定が間違っているので、チェックするとして

もう一つが   Warning: Depends on: IMAP functions – NOT FOUND
To install IMAP support, install php5-imap
Without IMAP support, you won’t be able to create subfolders when creating mailboxes.

それで、php5-imap をインストールすることにする。

だが、色々やっても何も無いとか、phpのバージョンが違うと言われてしまう。私がインストールしているのはphp7.3.25だ。今更phpのバージョンを下げたくないし、下げるとWEBサーバーに使っているCMSのwordpressの問題が出てきそう。そうだと思い、yumのレポジトリーをチェックすると(/etc/yum.repos.d) remi-php73.repoがあった。これを開くと

[remi-php73]
name=Remi’s PHP 7.3 RPM repository for Enterprise Linux 7 – $basearch
#baseurl=http://rpms.remirepo.net/enterprise/7/php73/$basearch/
#mirrorlist=https://rpms.remirepo.net/enterprise/7/php73/httpsmirror
mirrorlist=http://cdn.remirepo.net/enterprise/7/php73/mirror
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi 後略

とゼロ(つまりdisabled)になっているので、

# yum install –enablerepo=remi-php73 php-imap (php5-imapでは無い)

と打ち込むと、php-imap と共にphp-cliやphp-mbstring 等々色んなものがアップデートされた。

 

カテゴリー: Linux運用時のメモ | コメントする

また、AMAZONを騙った危険なメールが来た

このメールは一目で危険なメールだと判る理由は差出人と相手先(受取人)が同じで、自分になっている。こんなメールは送ってない。

何度も言うが、差出人は偽造できる。昔はでたらめなメアドを入れていたが、今ではほとんどのメールサーバーが差出人が存在するかチェックをしているので、でたらめなメアドは使用できなくなってきているので、受取人のメアドと同じにすればこれをかいくぐれるからこのようなことになっている。

まず、あれと思ったら、必ず差出人(送信者)をチェックする事。自分なら記憶がある筈。

上の画像はメールヘッダーと呼ばれている物を詳細に表示したものだが、これは下の赤線のサーバー(cloud-mail.jp がドメインだから、これはアマゾンじゃ無い。)から上の赤線のサーバー経由で私の所に来た。

カテゴリー: 危険メールや手紙、IP | コメントする

また、危険なSMSが来た

少し専門的だが。このドメインのddns.netは固定IPがない人がIPが変更してもトレースしてくれて、WEBなどを公開できるサービスだが、ここを悪用しているな!!

絶対にクリックしてはいけない。ちなみに表示されている電話番号は多分偽造だろう。

カテゴリー: 危険メールや手紙、IP | コメントする