ssh接続時のポート変更の際にSELinuxの設定を変更する
ssh接続してますか?
ssh接続のポートを変更する際はいろいろな設定を変更しなければいけませんよね。
sshのコンフィグ、iptables、 もしAWS使ってたらセキュリティグループもいじらないといけません。
しかし実は SELinux
もいじらないといけないんです。上記だけ変更して満足したら、ssh接続できない。。。なんてことになりがちです。
SELinuxでの接続設定の確認から変更
$ semanage port -l | grep ssh ssh_port_t tcp 22
上記コマンドで、SELInuxがどのポートでの接続を許可しているかを確認することができます。
sshでgrepしなかったら各種いろいろなポート制限を見ることができるので面白いですよ。
さて、上記だと22番ポートだけに限定されているようです。つまり22番ポート以外で接続するには上記に該当のポートを追加しなければいけません。
$ semanage port -a -t ssh_port_t -p tcp 20000 $ semanage port -l | grep ssh ssh_port_t tcp 22, 20000
上記コマンドでOKです。わかりやすいコマンドですね。
SELinuxにはいろいろな制限があります。めんどくさいから解除なんてこともよく聞きますが、脆弱性への対策としては心強い味方です。
SELinuxとは上手につきあえる道をさがしていきましょう。