• ベストアンサー

/etc/xinetd.d/と/etc/hosts.allow

Jack3Kの回答

  • Jack3K
  • ベストアンサー率40% (12/30)
回答No.2

TBL7.0Serverを使ったことがないので参考に見てもらえればと思います。 私の場合ですが、RHL7.2での設定でも同様にftpが出来ない事態に陥ったことがありました。 hosts.allowのみでアクセス制限を行っていたのをxinetd.dでのみの制限に切り替えた時にアクセス出来ない事がありました。 とりあえず元の設定に戻したのですが、TCP Wrapperである/etc/hosts.allowと/etc/hosts.deny のみの制限で動作させています。 only_from = 192.168.0.0/24 の記述を外して /etc/hosts.allow に ALL:127.0.0.1 in.telnetd:192.168.0. でのみのサービス提供だと二重の手間は省けると思います。 #ちなみに /etc/hosts.allow に ALL : 192.168.0.0/255.255.255.0 だと全てのサービスに対してアクセスできてしまいますのであまりよろしくないかと思われます。

holydevil
質問者

お礼

おそらく私と同じですね。ちなみに私は ALL : 192.168.0.0/255.255.255.0 で全て許可して only_from = 192.168.0.0/24 で制限をかけるとしています。 でもなんかしっくりしないんですが、 やっぱり二重で設定するものなんでしょうか? かなりWEBで調べたけど明確な答えはありませんでした。

関連するQ&A

  • xinetd を使う場合の hosts.allow/hosts.deny

    サーバ:CentOS 4.4 xinetd を使ってアクセスコントロールをしようとしています。 /etc/xinetd.d/サービス名 でサービス毎の設定が出来ますが、その中で(only_fromを使って)制御しようとしていますが、その際に /etc/hosts.allow と /etc/hosts.deny はどうなるのでしょうか。これらのファイルを削除して、xinetd の設定ファイルのみでアクセス制御するにしても、xinetd を通さないデーモンが直接 hosts.allow と hosts.deny を参照しようとする場合もありそうで怖そうです。 かといって xinetd と hosts.allow,hosts.deny の両方でアクセス制御するのもわかりにくくなりそうですし。 何かスマートなやり方というものはあるのでしょうか。

  • ファイアウォールは必要?hosts.allow と hosts.deny だけではダメ?

    ネットで調べたところ、次のことが分かりました。 ●TCP Wrappers (/etc/hosts.{allow,deny} で設定)は inetd または xinetdで制御されていないプロセスへのアクセスをブロックできない。 ●とはいえ、sshd, sendmail は inetd/xinetdで制御されていないものの、/etc/hosts.{allow,deny}を自ら読みに行って、ここで許可されてないアクセスは拒否することができる。 sshd や sendmail も hosts.allow と hosts.deny で守ることができるとすると、Firewall(iptables)は、なぜ必要なのでしょうか?hosts.allow と hosts.deny で守ることができないデーモンがあるのでしょうか?

  • /etc/hosts.allow 及び /etc/hosts.deny について

    /etc/hosts.allow 及び /etc/hosts.deny は Tcp Wrapper のみが参照するファイルなんでしょうか? それとも inetd が参照するファイルなんでしょうか? 素人な質問ですみません。

  • hosts.allowとhosts.denyについて

    centos5を利用しています。 /var/log/btmpファイルが200M、/var/log/secureファイルも20Mにもなっていました。 恥ずかしながら初めて中身をチェックしたのですが、SSHログインの失敗履歴のようでした。 このような場合の対処法をお聞きしたいのですが、 1. hosts.allowとhosts.denyを設定すればこの手のアタックは防げるのでしょうか? 2. hosts.allowとhosts.denyを設定後、/etc/rc.d/init.d/sshd restart でSSHを再起動したのですが、これで反映されたのでしょうか? 3. btmpファイルは削除しても問題ないでしょうか?削除する際に注意点などありましたらあわせて教えて頂けると幸いです。

  • /etc/hosts.allow にて alex@192.168.1.10 指定

    CENTOS5を使っております。 FIREWALL 有効 SELINUX 有効 server1 リモートホスト server2 SSHサービス稼動中。 ============================================ ここで、制御ファイルにて下記のようにしていますが、 server2側でアクセス拒否されてしまいます。 1. /etc/hosts.allow # hosts.allow This file describes the names of the hosts which are # allowed to use the local INET services, as decided # by the '/usr/sbin/tcpd' server. # ALL:127.0.0.1 sshd: alex@192.168.10.62 2 /etc/hosts.deny # hosts.deny This file describes the names of the hosts which are # *not* allowed to use the local INET services, as decided # by the '/usr/sbin/tcpd' server. # # The portmap line is redundant, but it is left to remind you that # the new secure portmap uses hosts.deny and hosts.allow. In particular # you should know that NFS uses portmap! sshd: ALL [root@server1 ssh]# ssh alex@server2 ssh_exchange_identification: Connection closed by remote host 私の認識では、allow→denyの読み取りで判断されるので許可されると 考えています。 それともUSER@を指定した記述が違うのでしょうか。 deny にて、sshd : ALL EXCEPT alex@192とも指定したがぺけでした。 どなたかご指摘お願いします。 P.S グーグルでもUSER@指定の場合を検索してみました。 http://www.cromwell-intl.com/unix/ssh.html sshd_config にてAllowUsers alexもぺけでした。。。 よろしくご指摘お願いいたします。

  • Linux hosts.allowでのアクセス制御

    いつもありがとうございます。 RedHat hosts.allowでのアクセス制御について設定方法を質問させて頂きます。 /etc/hosts.allowに以下のサービスについて制御したいと思っております。 ************************************************************* http ssh icmp smtp ntp pgadmin samba postgresql dns ************************************************************* 以下「hosts.allow」の内容 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ # ssh sshd: 192.168.1. # http httpd: ALL # dns domain: ALL # icmp icmp: ALL # ntp ntpd: ALL # netbios-ssn netbios-ssn: ALL # smtp smtp: ALL # postgresql postgresql: 192.168.1. # pgadmin pgadmin: 192.168.1. -------------------------------------------------------------------- 上記にて設定すると、SSHのみ適用されますが他の設定が反映されません。 ※hosts.denyは「ALL: ALL」としております。 また、ファイアーウォールを有効にすると、SSHも含め接続できなくなります。 ※ファイアーウォールのルールは定義していません。 初心者からの質問で申し訳ありません。 アドバイスの程よろしくお願い致します。

  • sshってxinetdを通して起動されるんでしょうか?

    hosts.allowに、 vsftpd:***.***. :allow とすることで、外部からのftpサーバへの接続を アクセス制限することは出来たのですが、 今度は、sshdが外部からアクセスできなく なってしまいました。 hosts.denyは、勿論、ALL:ALLです。 しかし、sshは、xinetdを通さないで起動していると ばかり思っていましたので、host.denyとは関係なく 接続できるとおもっておりましたが、違うのでしょうか? RedHat8をインストールした後は、何も特に変更していない のですが・・・デフォルトでsshもTCPWrapperとかいう ものの影響を受けるのでしょうか? chkconfig --list で調べた時は、 xinetdをベースとしたプログラムにはsshは無かったのですが・・・? 何卒、ご存知の方、ご指導の程願います。

  • xinetd の有効化

    /etc/xinetd.d 以下のファイルを編集して、xinetdの有効化を行おうと、以下のコマンドを実行しました。 #service xinetd reload しかし、xinetd のコマンドライン引数エラーが出力されました。 Usage: xinetd [-d] [-f config_file] [-filelog filename] [-syslog facility] [-reuse] [-limit proc_limit] [-pidfile filename] [-logprocs limit] [-shutdownprocs limit] [-cc interval] 文献等で、xinetd を有効化する方法は、上記のコマンドで間違いないとおもうのですが、期待するような結果にはなりません。 どうか、何がまずいのかご教授ください。 追伸: 自分の使用しているカーネルを以下に記載させていただきます。 2.6.11-1.1369_FC4

  • xinetdのインストールについて

    VineLinux2.6r1を使ってます。 xinetdをインストールしようと思って、公式サイトからxinetd-2.3.13.tar.gzをダウンロードして、解説サイトを参考にしながら $ tar xvfz xinetd-2.3.13.tar.gz $ cd xinetd-2.3.13 $ ./configure --with-libwrap $ make # make install とやってインストールしました。 それでログを見る限りエラーは無かったと思うんですが /etc/xinetd.confと/etc/xinetd.dが作られてないんですが、これは自分で作ってしまっていいんでしょうか? あと、解説サイトにxinetdを起動するときは、/etc/rc.d/init.d/xinetd start とやるように書かれているんですが、そのディレクトリにxinetdと言うファイルがなくて実行できません。これはインストールに問題があったんでしょうか? /usr/local/sbin/xinetdはちゃんとあって、 # /usr/local/sbin/xinetd  とやってみたのですが、 # ps aux | grep xinetd とやってみてもプロセスにxinetdがでてきません。 これは、どこに問題があるんでしょうか? 一応/etc/xinetd.confは自分で新規作成して defaults { instances = 25 log_type = FILE /var/log/xinetdlog #log_type = SYSLOG authpriv log_on_success = HOST PID log_on_failure = HOST RECORD per_source = 5 } includedir /etc/xinetd.d と書いておきました。 あと、Linuxは最小構成で入れたのでインストール時はinetdもxinetdも入っていませんでした。 分かっていないことが多くて質問もきれいに書けていないんですがよろしくお願いします。

  • VNCサーバはスタンドアロンモードでも/etc/hosts.allowで許可しないとエラー「server closed connection unexpecte

    RedHat9 eth0(192.168.0.1) | (192.168.0.2) Win2k としています。 # rpm -qa | grep vnc tightvnc-debuginfo-1.2.9-1 tightvnc-server-1.2.9-1 tightvnc-1.2.9-1 # cat /etc/sysconfig/vncservers | grep -v ^# VNCSERVERS="1:root 2:user01" VNCSERVERARGS[1]="-geometry 800x600" VNCSERVERARGS[2]="-geometry 800x600 -depth 24" # ls -al /root/.vnc 合計 12 drwxr-xr-x 2 root root 4096 2月 10 02:36 ./ drwxr-x--- 20 root root 4096 2月 10 02:40 ../ -rwxr-xr-x 1 user01 user01 316 2月 10 02:32 xstartup* # cat /root/.vnc/xstartup #!/bin/sh # Red Hat Linux VNC session startup script unset SESSION_MANAGER exec /etc/X11/xinit/xinitrc [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid grey vncconfig -iconic & xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & twm & そして、 # vncpasswd としてパスワードを入力して #/etc/rc.d/init.d/vncserver start VNCサーバを起動中: 1:root 2:user01 [ OK ] この後、 Win2k側からアクセスしてみましたら、 「server closed connection unexpectedly」 となってしまいます。 /etc/hosts.allow Xvnc: xxx.xxx.xxx.xxx という具合にで許可したらアクセス出来ました。 xinetdサーバで稼動してるわけではないのにどうして/etc/hosts.allowに反応してしまうのでしょうか?