CentOS 5.8にVNCサーバーをインストールして実行していますが、VNCビューアーを使用して接続できません。次のエラーメッセージが表示されます。
接続:接続がタイムアウトしました(10060)
何が問題なのですか?
ここでは、ファイアウォールの例外を追加する方法を説明します(ポート5900および5800を開く必要があります)。 Linuxは私の強みではないので、この写真がお役に立てば幸いです...
次のことを行う必要があります。
vi /etc/sysconfig/iptables
次に、次のようなファイルが見つかります。
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
# <add the line for eth>
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
# <add the line for ports>
-A INPUT -j REJECT --reject-with icmp-Host-prohibited
-A FORWARD -j REJECT --reject-with icmp-Host-prohibited
COMMIT
Ifconfigの正しいethを使用して、iptablesに次の行を追加します。
-A INPUT -i eth1 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp -m multiport --dports 5801:5803,5901:5903,6001:6003 -j ACCEPT
ファイルが保存された後:
Sudo service iptables restart
Sudo service vncserver restart
詳細については、 http://wiki.centos.org/HowTos/VNC-Server を参照してください。ただし、VNCViewerを機能させるために追加する必要がある5801:5803とは記載されていないことがわかります。
よろしく、
Vncserverが実行されているポート(5901など)からファイアウォールで保護されたアクセス許可が拒否されるため、例外的なルールを作成し、ポート5901のみがtcpを受け入れます。それでおしまい。 Linuxボックスで以下のコマンドのように、最初にfirewalldを起動してから、例外的なルールを作成する必要があります。firewalldとデーモンをリロードすることを忘れないでください。
systemctl start firewalld
firewall-cmd --zone=public --permanent --add-port=5901/tcp
firewall-cmd --reload
systemctl daemon-reload
試してみる。