このブログを検索

ラベル さくらのVPS の投稿を表示しています。 すべての投稿を表示
ラベル さくらのVPS の投稿を表示しています。 すべての投稿を表示

2024/11/08

さくらのVPSのパケットフィルタ

さくらのVPSでsquidを設定してあったので、使ってみようと思ったのだが、使えない。

クライアントで プロキシ設定してもサーバに到達しない。firewalldやssやtcpdumpやnmapで確認する限り、どう考えてもサーバの前で止まっている。

ssで表示される、listenしているポートはすべて利用可能でsquidだけが通らない。

さくらインターネットが止めてるんじゃないか?サポートに問い合わせてみようか、と思って思い出した。さくらインターネットがパケットフィルタを提供していることを。

以前、こんなのfirewalldでやるからいらない、と無効にしたと思っていたのだが、見たら動いていて、自分が使っているポートが許可されていてsquidだけが空いてなかった。

 

2024/01/31

さくらのVPSのスケールアップ

またメモリ不足になりdnfが実行できなくなった。

不要なサービスが起動しているかもしれないしその他設定のチューニングでなんとかなるかもしれないが、そもそもこのサーバはサンドボックスというか、実験的にいろいろやってみるためのサーバなので、そんな細かいチューニングをしつつなんとかやっていかなければならないようなら、メモリを増やそうと思った。

だいたい、今までは1Gで、少なすぎたのだ。GUIも使わないしアクセスもごく少ないのでそれで運用していたが、今時1Gじゃね。と、2Gにした。2Gでも少ないだろう。Windowsパソコンだったら絶対無理だ。なんとか起動はするだろうが実用に耐えない。

スケールアップはいったんサーバを停止して、さくらインターネットのコントロールパネルでボタンをカチっと押すだけで完了する。時間は10分もかからなかったと思う。


2023/12/03

postfix/dovecot設定@centos9

昨日から今日にかけてpostfix/dovecotの設定をやった。

まずはubuntu 23.10(digital ocean)で、そしてcentos sgreanm release 9(さくらのVPS)で。

同じ設定をしたのだが設定個所や内容は微妙に異なる。osが違うというだけではなく、設定を紹介している人の理解とかやり方によるように見える。つまり、やり方は一つではない。

ubuntuでやった時はgmailのアカウントに送れなかったので、centosでやってみたのだが、こちらはspfもdkimも設定していないのに送れた。

ドメイン名は違っていて、centosでやった方のドメインは逆引きを設定している。逆引きがあれば(spfやdkimがなくても)、gmailに送れるのだろうか?


あと、iphoneの証明書の信頼は、ただCA証明書をインストールするだけではだめで、

Settings > General > About > Certificate Trust Settings 

で、ENABLE FULL TRUST FOR ROOT CERTIFICATESを有効にする必要がある。


証明書を作るとき、サーバの秘密鍵は暗号なしで作るのが楽。

いつもこういう風にしているが、

#openssl genrsa -aes256 -out ./server.key

Enter PEM pass phrase:


これでよい。

# openssl genrsa -out ./server.key


秘密鍵を暗号化して作った場合でも、以下のようにして解除できる(パスワードを入力する必要あり)。

# openssl rsa -in server.key -out server.key


また、暗号化した秘密鍵を使って、パスワードを設定する方法もある。

メールサーバを作ったがgmailに送れない(と思ったけど送れた)

※このエントリーを書いた後再確認したらgmailあてに送れるようになっていた。理由はよくわからない。備忘録のため残しておく


私はdigital oceanのVPSを使っていて、さくらインターネットで管理しているドメインの名前をつけている。そのサーバをメールサーバにしたのだが、色々やったあげくgmailアカウントにメールが送れなかった。

使ったのはpostfix/dovecotである。

postfixは送信(MTA)、dovecotは受信(MDA)でいいのだろうか?

何度か設定したが、いつもこの2つが不可分なような気がしてならない。


ただメールを送受信するだけなら簡単なのだが、まずSSL対応するのが面倒。

証明書が必要だったり、追加設定もたくさんある。設定ファイルも複数あるし。


いつもiPhoneをクライアント(MUA)として確認しているが、iphoneのメール設定もいつも忘れるのと、昔はメールと言えばSMTP/POPだったのに、いつの間にかIMAPが標準になって、でもiphoneの設定画面にはimapとpopが両方あって、どちらも使えるように見える。


あとサブミッションポートというものもよくわからない。25を587に変えるだけじゃないのか?

設定方法についてはいろんな人がブログなどで説明しているのでそれらを参考にすればできるのだが、バージョンやOSの違いなどで微妙な差がある。ブログとかだと記載ミスとかあるし、おそらく書き漏らしている手順とかもあるだろう。実際、書かれている通りにやってみてもうまくいかないことが何度もあった。


メールサーバなんか自分建てるものではない、と改めて思った。

とりあえずSSL対応してiPhoneで送受信できたのだが、gmailのアカウントに送ると、エラーになって帰ってくる。このことについても情報はたくさんあるのだが、「SPFまたはDKIMが必要」と言っている人が多いが、どうも両方必要なようである。さらに、逆引き設定も必要なようである。

SPFは簡単だがDKIMはめんどくさい。一体なんでこんなことをしなければならないのかと思いながらやっとの思いで設定を終えた。

しかしやはりgmailに送れない。ただし送れない理由がSPFとDKIMがなかった時と違っていて、「550-5.7.25 PTR record setup」がない、となっている。

逆引きが必要ならやればいいと思ってさくらインターネットのドメインコントロールパネルで追加しようとしたが、レコードの種類の選択に「PTR」がない。ドメインコントロールパネルは何度も使ったことがあるが逆引きを登録したことはそういえばなかったか。あったような気がするが、結論を言うとドメインコントロールパネルでは逆引き登録ができない。

ただし、さくらのVPSのホストの逆引き登録はサーバ自体の設定でできる。

しかし、今回私がメールサーバにしたのはdigital oceanのサーバで、そのアドレスの逆引き登録はできないのだ。

理由はよくわからないのだが、逆引き設定というのは間違いやすいとか間違うと重大な問題が起こるとかがあるのだろうか。

DNSサーバをdigital oceanのものにするとか、さくらのVPSのサーバをメールサーバにするとか、色々方法はあるだろうが、めんどくさいな....


2021/04/29

SELinux始めました

 SELinuxなんか無効にするのが当たり前となって10年くらいたった。(自分の中で)

さくらのVPSも、conohaのVPSも、SELinuxはデフォルトで無効じゃないか?

自分で無効にした覚えがないから。


初めてCentOSをさわった頃、たしか4か5の頃、なんかおかしいなと思ってSELinuxを無効にしたらうまくいった、ということがあって、そのうち最初から無効にするようになった。

私がLinuxを使うのはほとんどが実験や検証的な場合だったのでそれでよかった。


だが、セキュリティについていろいろとうるさくなってきた昨今、

「めんどくさいからオフる」

という思考回路を改めた方がいいのでは?と感じている。


そこで、とりあえず自分が使っているcentos8のSELinuxを有効にしてみた。


参考

https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/6/html/security-enhanced_linux/sect-security-enhanced_linux-working_with_selinux-enabling_and_disabling_selinux


いまSELinuxが有効かどうかは

getenforce

でわかる。

disabled

になっている。

Enforcingだと有効、Permissiveだとポリシーをチェックするが動作は止めない、disabledだとポリシーもチェックしない無効な状態である。

enforcing/permissiveの切り替えは setenforceコマンドでできるが、

disabledにする、disabledから再度有効にするには、

/etc/selinux/config

を書き換える必要がある。

有効にするなら

SELINUX=enforcing

上記のRedHatの情報を見ると、SELinuxが無効の状態から有効にするときにはいったんpermissiveにして再起動し、ログをチェックして問題がないことを確認してからenforcingにする、と書いてあった。


また、必要なSELinuxのパッケージをインストールしておく必要がある。

(私の場合は事前になんでもかんでも突っ込んでいた)


その通りにやってみると、私の場合sshdに関する以下のようなログが記録された。

Apr 29 03:03:12 god setroubleshoot[1550]: 
SELinux is preventing /usr/sbin/sshd from name_bind access 
on the tcp_socket port xxxxx. 
For complete SELinux messages run: 
sealert -l 78b09f6f-3440-421f-976d-55edb0af1088

port xxxxx の xxxxx は実際には数字が記録されていて、この数字はsshで使用するポートをデフォルトの22から変更したポート番号である。

「SELinuxが有効だとsshのポート変えられないのか!じゃあ無効にしよう!」

ではなく、

SELinuxの設定でもsshで使用するポートを変更あるいは追加すればよいのだ。

semanage port --list

で現在の設定が表示される。

sshでgrepすると

# semanage port --list | grep ssh
ssh_port_t     tcp      22

追加するには

# semanage port --add --type ssh_port_t --proto tcp xxxxx

2021/04/13

さくらのVPSをubuntuにする

 ubuntuにする。

初期ログインをrootでしようとしたら入れない。

ubuntuで入る。


ubuntuってrootになれないんだっけ。

なんかするときは sudo しないといけない。

めんどくさいな...


まずユーザを作り、su権限を付ける。

sshのポート番号を変える。

さくらのVPSのパケットフィルタを無効にする。


apache2をインストールする。


firewallはデフォルトで無効。

有効にする。


80とsshのポートを開ける。

pingはデフォルトで返すのか。

拒否するにはちょっとめんどくさそうなのでそのまま。


2020/06/06

さくらのVPSにcentos8をインストールして最初にしたこと

まず、さくらのVPSのコントロールパネルで、「パケットフィルタ」というファイアウォール的な設定があったのでSSH(カスタム)とWEBを開放したのだが、
これって、centosのfirewallのさらに外側の設定だよね?

二重管理になるから嫌だな.... 

でも、開放ポートを設定するようになっているから、
centosのFirewallで設定するようにするなら全開放にするってことか。
それもヤダな....

まあ、あとで考える。


さて、やったこと。

hostnameの変更

hostnamectlコマンド

sshd.confの設定変更
・ポート番号変更
・PermitRootLogin を noに

httpdのインストール(dnfで)


python3は最初から入っているのかと思ったら入ってなかった。
(たしかconohaは入ってた)

python3のインストール(dnfで)

python3とpip3を、それぞれ「python」「pip」で呼べるように変更

・sudo alternatives --config python を実行し、python3を選ぶ
・sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1

コントロールパネルで、OS再インストールしたら「帯域制限中」と表示されていたのに気づいたのだがいつのまにか消えた。
OSをインストール直後はこうなるのかな。

2020/01/31

ConoHaのVPS

さくらのVPSを1台借りていて2つのドメインで使用しているのだが、

やっぱり物理的に(VPSだから本当は物理的にではないが)2台ほしくなってきた。

さくらのVPSには何の不満もないのだが、VPSってほかにもないのかなと調べてみたら、
なんとConoHaというサービスの利用者はさくらより多いということを知った。

てっきりVPSといえばさくらだと思っていたのだが。

サービス内容をざっと見したところさくらとそんなに違うところはない。

初期費用がない、特定の用途向けのパッケージみたいなものがある、
というのが気づいたところ。

OSはCentOS8にした。去年リリースされたそうだ。

ようやくCentOS7に慣れたところだが、きっとこれから使うことになると思うので
勉強を兼ねて。

6→7 ほどの違いはないっぽい。

yumがdnfというものになっているそうだが、yumも使える。

yumはpython2ベース、dnfはpython3ベース。

python2と3のゴタゴタは嫌だったのでこっちの方がいい。



2018/05/02

openvpn@centos7 iPhoneで接続

参考
https://www.marbacka.net/blog/openvpn_iphone/

アプリをインストール。

クライアントプロファイルを作成する。(上記参考サイトを参照)
プロファイルの中に証明書を貼ってしまう。

PCに接続し、iTunesでiPhoneをバックアップする画面を開く。
左側のメニューの「ファイル共有」をクリックし、
Appで「OpenVPN」を選択し、「OpenVPNの書類」の下にある
「ファイルを追加...」をクリックしてプロファイルを追加し、同期する。
(同期は必要だよね?)

iPhoneでOpenVPNのアプリを起動すると、追加したプロファイルが表示されている。
あとはわかると思うので略。

iPhoneでもつながった。


openvpn@centos7 その2スプリットトンネリング

さくらのvpsの2台のサーバは同じゾーンなので、
スイッチに接続するとローカルネットワークで通信できるようになる。

コントロールパネルでスイッチを作成し、サーバを停止してから接続する。

firewalldとiptablesの設定でローカルの通信を許可する。

pingが通ることを確認。

openvpn接続後、サーバのローカルネットワーク宛の通信ができることを確認。

ローカル間で接続したもう一台のサーバへのpingは応答がない。

openvpnで割り当てるサブネットのルーティングを追加してアクセスできるようになった。


接続したクライアントでroutingテーブルを見てみると、
デフォルトルートがVPN向けになっている...と思ったが
よくみると 0.0.0.0 128.0.0.0 だ。



IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先        ネットマスク          ゲートウェイ       インターフェイス  メトリック
          0.0.0.0          0.0.0.0      192.168.0.1     192.168.0.11     25
          0.0.0.0        128.0.0.0         10.8.0.5         10.8.0.6    281
         10.8.0.1  255.255.255.255         10.8.0.5         10.8.0.6    281
         10.8.0.4  255.255.255.252            リンク上          10.8.0.6    281
         10.8.0.6  255.255.255.255            リンク上          10.8.0.6    281
         10.8.0.7  255.255.255.255            リンク上          10.8.0.6    281
===========================================================================




設定ファイルserver.confの以下をコメントにする。

push "redirect-gateway def1 bypass-dhcp"


そして、以下を追加する。サーバのローカルネットワークである。

push "route 172.16.0.0 255.255.0.0"

これによって、サーバのローカルネットワークのみがVPN経由になる。





IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先        ネットマスク          ゲートウェイ       インターフェイス  メトリック
          0.0.0.0          0.0.0.0      192.168.0.1     192.168.0.11     25
         10.8.0.1  255.255.255.255         10.8.0.5         10.8.0.6    281
         10.8.0.4  255.255.255.252            リンク上          10.8.0.6    281
         10.8.0.6  255.255.255.255            リンク上          10.8.0.6    281
         10.8.0.7  255.255.255.255            リンク上          10.8.0.6    281
       172.16.0.0      255.255.0.0         10.8.0.5         10.8.0.6    281
===========================================================================



こういうVPNの設定は「スプリットトンネリング」と言うと思うのだが、
openvpnではそのキーワードで検索してもヒットしない。





2018/04/29

openvpn@centos7

参考
https://gtrt7.com/blog/linux/install-openvpn


流れとしては、
openvpnはrpmを作ってrpmからインストール

CA作成、サーバおよびクライアント証明書作成
※easyrsaを使うのが流行っているようだがopensslでもできるはず

openvpnの設定

firewalldの設定

クライアントにクライアント証明書一式をコピー
クライアント側設定



# cat /etc/openvpn/openvpn-status.log
OpenVPN CLIENT LIST
Updated,Sun Apr 29 15:01:14 2018
Common Name,Real Address,Bytes Received,Bytes Sent,Connected Since
myclient,xxx.xxx.xxx.xxx:58735,105510,491554,Sun Apr 29 14:59:27 2018
ROUTING TABLE
Virtual Address,Common Name,Real Address,Last Ref
10.8.0.6,myclient,xxx.xxx.xxx.xxx:58735,Sun Apr 29 15:01:09 2018
GLOBAL STATS
Max bcast/mcast queue length,0
END


とりあえずつながって、サーバに10.8.0.xのアドレスでsshできることを確認。

本当はサーバのローカルネットワークにアクセスしたいのだが
うまくいってない。
後でやる。


2018/04/28

新VPS

さくらのVPSで新しいサーバを借りた。

メモリ1GB

Centos7

userを作り、wheelに登録

sshのポート変更

firewalldでsshのポート許可、firewalld再起動

さくらのコントロールパネルでゾーンの登録

dns設定はすでにあり

yum update

selinuxはすでに無効

ntpdは動いていないが chronydというもので時刻は同期されている。

yum install httpd
systemctl start httpd
systemctl enable httpd
firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --reload

パソコンからアクセスしてテストページが表示されるのを確認。

/var/www/html
にindex.htmlを作る。

パソコンからアクセスして作ったindex.htmlが表示されるのを確認。

2018/02/23

bitzenyマイニング

bitcoinのマイニングには興味を持ったがコストや手間に見合わない感じでやっていなかった。

bitzenyというのは簡単にできそうなのでやってみたが簡単ではなかった。

さくらのVPSでやらせておこうと思った。

参考
https://qiita.com/you21979@github/items/1567d6d91588e53f15d6

が、

bitzenyのビルドができない

configureで

checking for Berkeley DB C++ headers... no
configure: error: libdb_cxx headers missing

というエラーになる。

berkeleyDBというのを入れる必要があるようなので入れてみる。

http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/downloads/index.html?ssSourceSiteId=otnjp

インストール後再度 configure.... 同じ。

また今度!


windows用のwalletをダウンロードして起動。

...で?

とふと下の方を見ると同期中とかなんとか出てて、「3年と12週間遅延」とか言ってるんです。

もうね、アホかと。

2016/04/02

apacheの更新

logwatchに、大量の不審なアクセスがある。

不審といっても、logが書かれるだけでとくになんの被害もないのだが、ウザいのでなんとかしたい。

アクセス元のIPアドレスはまちまちだ。

どうやってこんなに多様なIPアドレスからアクセスできるのかが不思議なのだが、

アドレスでブロックすることは実質的に不可能だ。


たとえば、国とかプロバイダとかでガバっとブロックしてしまおうかとも思うが、

それはやりたくない。


基本的に私はインターネットにサーバを公開する以上、

アクセス方法を問わずにブロックするという中国のGFW的な態度はとりたくない。


この不審なアクセスは、サーバに存在しないファイルへアクセスしている。

それはあきらかに故意になされている。


しかし頻度はそれほど高くない。

そして、アクセス内容を特定できるある文字列を含んでいる。


最初はその文字列を含むアクセスをiptablesでブロックしようと思ったが、

うまくいかない。これは確認中である。



そのうち、そもそもWEBサーバ自体になにか脆弱性があるのではないかと思い、

診断ツールで調べてみた。

niktoとかいうものだ。


特に致命的な脆弱性はなかったが、バージョンが古いと言われた。

2.2.15 である。

yumでupdateすると最新と言われる。


最新にするにはrepositoryを変更する必要がある。



centosのデフォルトレポジトリで最新なら別にいいかとも思うが、

このさい最新にしてみる。


更新後ちょっとゴタゴタしたが、無事に2.2.27になった。


ゴタゴタしたというのは設定ファイルが初期状態になったとか

proxy moduleが読めないとか

サービスが停止できないとかである。

設定ファイルはれいのrpmsaveだかなんかを戻し、

moduleは不要なものを読まないようにし、

停止できないのはkillで殺したが死なないのでサーバごとリブートした。

2016/03/26

postfixとdovecot

こないださくらのVPSをぶっ壊してしまった。

たしかiptablesのアップデートをしようと思い、アンインストール&インストールしようと思ったら、

めちゃくちゃになってしまい、ほとんどのサービスが消えてしまったのだ。


メールはpostfix + dovecotで、試行錯誤しながらなんとか送受信できていたのだが、

これを機会に1から「構築」(この言葉はおおげさで好きではないが)方法をまとめておく。



まず確認

# service postfix status
postfix: 認識されていないサービスです。

# service dovecot status
dovecot: 認識されていないサービスです。



yum install postfix


さあ、

#vi /etc/postfix/main.cf

とやりかけて、まてよと思い、main.cfのあるフォルダを見てみると、

main.cf.rpmsave

master.cf.rpmsave

というファイルがある。


ほかのサービスもそうだったのだが、.rpmsaveという拡張子のついたバックアップファイルのようなものが残っている。

これらのファイルをmvで main.cf, master.cfにする。


# which postfix
/usr/sbin/postfix

# service postfix status
master は停止しています

# service postfix start
postfix を起動中:                                          [  OK  ]


メールが送れるかテスト

# echo test | mail (gmailのアドレス)

瞬時に届く。



iphoneに登録してあるアカウントからメールを送信してみる。

「パスワードが違う」と言われる。



saslauthd を起動しないといけない。

# which saslauthd
/usr/sbin/saslauthd

# service saslauthd
使い方: /etc/init.d/saslauthd {start|stop|status|restart|condrestart|try-restart|reload|force-reload}

# /etc/init.d/saslauthd status
saslauthd は停止しています

# /etc/init.d/saslauthd start
saslauthd を起動中:                                        [  OK  ]




もう一度送信・・・送れた。


postfixの復旧は終わり。



次はdovecot

yum install dovecot

同様に設定ファイルの.rpmsaveがあるので、戻す。
/etc/dovecot/conf.d/


10-auth.conf
10-mail.conf

起動

# service dovecot start
Dovecot Imap を起動中:                                     [  OK  ]


gmailから、メールを送ってみる。

受信できた。












2016/03/06

squid設定

設定をちょっといじったら動かなくなって
なかなか復旧できなかったので、再度メモ

認証のところ

これは、デフォルト設定にはない。

アクセス元アドレスは変わるので、限定できないが、
誰でもアクセスできるのはいやなので、認証するようにする。

とりあえずbasic認証で


---

# Example rule allowing access from your local networks.
# Adapt localnet in the ACL section to list your (internal) IP networks
# from where browsing should be allowed
http_access allow localnet
http_access allow localhost

auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
auth_param basic credentialsttl 5 hours

acl AUTH proxy_auth REQUIRED
http_access allow AUTH

# And finally deny all other access to this proxy
http_access deny all

---


auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/passwd
この行は、環境によってことなる。

/usr/lib64/squid/ncsa_auth は、認証するプログラム

find / -name ncsa_auth で、確認して書く。


/etc/squid/passwd は、ユーザとパスワードが設定されているファイル

htpasswd -c /etc/squid/passwd <username>

とすると、パスワードの入力が求められるので2回入力する。
-c は新規に作成する場合。

このファイルをcatしても、パスワードはそのまま記述されているわけではない。


認証できるか確認する
ncsa_authのあとにパスワードファイルを指定し、
ユーザ名とパスワードをスペースで区切って入力し、OKと表示されること

/usr/lib64/squid/ncsa_auth /etc/squid/passwd
<username> <password>



2016/02/26

さくらのVPSにVNC接続

以前にも一度やったのだが、
いろいろうまくいかず放置していたのを、やり直す。

vncはtigervncというのを使う。

セットアップについては省略。以前書いた気がする。

そのあと、ちょこちょこ修正というか設定が必要だった。


まず
# chkconfig messagebus on

それから
# dbus-uuidgen > /var/lib/dbus/machine-id


portが開いてるかの確認は

nmap localhost

が速い。



2016/02/20

proxyを使ったら3倍速くなった

ただ確認のために入れたsquid。

ブラウザでプロキシを設定していつものようにインターネットを見ていたら、
なんだか軽快になったように感じて、スピードテストをやってみたら90Mbpsくらいだった。

最近あまりやっていなかったが、こんな数値は見覚えがない。
プロキシ設定を外して測定すると30台である。

おそるべし、さくらのVPS。

squidの認証

proxy.pacがクライアントに適用されているかを確認しようと思ったが、
Windowsで自動設定されたプロキシが何かを簡単に確認する方法がわからなかった。

じゃあプロキシサーバ経由でどこかにアクセスしてアクセスログをみればわかるだろうと思ったが、
適当なプロキシサーバがなかったので、自分のVPSに建てることにした。

「建てる」なんておおげさなものではないが。

そもそもサーバというものは、「構築」なんていう大したものではない。

だいたい小さな簡単なソフトウェアが動くだけである。基本は。


centosにsquidをいれる。

やり方はあちこちに書いてあるが、認証の設定でちょっと迷った。


acl AUTH proxy_auth REQUIRED
http_access allow AUTH

こういう風に書くのだが、
aclの次のパラメータは任意の名前で、
次の行でそのaclに該当するアクセスを許可するのである。

2015/11/08

pam_unix(smtp:auth): authentication failure

さくらのVPSで借りているサーバで、毎日logwatchを送信しているのだが、
ほぼ毎日、下記のようなログが延々と記録されている。

 pam_unix(smtp:auth): check pass; user unknown
 pam_unix(smtp:auth): authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=
 pam_succeed_if(smtp:auth): error retrieving information about user test


これはsmtpサーバの認証をユーザー名を変えて手当たり次第におこなっているもので、
幸い認証は成功していないし特にサーバがダウンするとかパフォーマンスが低下するとかいう事態にもなっていないのでそんなに深刻なことではないのだが、ウザい。

25番ポートを閉じれば停められるのだが、それをやると外部からのメールが転送できない。

実際、ついこないだまで25番は閉じていたのだが、そうするとgmailなどから送信したメールが届かないことに気づいて開けて、そうしたらこのようなイタズラが始まったのだ。

この手のアクセスは送信元IPアドレスやセグメントを制限し始めるときりがない。

本当は送信元を知りたいのだがわからない。

不正アクセスしたアドレスを自動でブロックするものなどもあるようだが、あまり使いたくない。


smtp認証をsmtps認証にするという方法があってやってみたのだがうまくいかなかったので、とりあえず認証方式をmd5にした。


cyrus-sasl-md5 をインストール

/etc/postfix/main.cfで、

smtpd_sasl_security_options=noanonymous,noplaintext

を追加


/usr/sbin/saslpasswd2 -c -u example.com user

でパスワードを設定。


postfixとsaslauthdをrestart


iphoneのメール設定は、
usernameにドメイン名をつける(user@example.comのように)

use sslはオフ

authenticationは MD5 Challenge-Responseにする。

Server portは587(これは設定による?)