saya memiliki pengaturan server (debian 7) di universitas saya dengan ip publik. ketika saya ssh ke dalam sistem (dari luar kampus), saya mendapatkan penundaan aneh 5-10 detik sebelum saya mendapatkan prompt kata sandi. Mengapa demikian?
Saya menjalankan ssh -v
untuk mendapatkan output verbose:
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
.... delay of 5-10 seconds here
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: /home/nass/.ssh/id_rsa
debug1: Trying private key: /home/nass/.ssh/id_dsa
debug1: Trying private key: /home/nass/.ssh/id_ecdsa
debug1: Next authentication method: password
maka saya mendapatkan prompt kata sandi baik-baik saja.
saya resolv.conf
terlihat seperti
domain <mydomain>.edu
nameserver <dns ip address>
firewall dikendalikan oleh webmin
, dan konfigurasi /etc/webmin/firewall/iptables.save
terlihat seperti:
# Generated by iptables-save v1.4.14 on Mon Feb 10 17:41:38 2014
*filter
:FORWARD DROP [0:0]
:IP_TCP - [0:0]
:INPUT DROP [0:0]
:IP_UDP - [0:0]
:OUTPUT ACCEPT [0:0]
:IP_ICMP - [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state ESTABLISHED -j ACCEPT
-A INPUT -m state --state RELATED -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags ACK ACK -j ACCEPT
-A INPUT -s 127.0.0.1/32 -i eth0 -j DROP
-A INPUT -p icmp -i eth0 -j IP_ICMP
-A INPUT -p udp -m udp -i eth0 -j IP_UDP
-A INPUT -p tcp -m tcp -i eth0 -j IP_TCP
-A INPUT -m limit --limit 3/second --limit-burst 3 -j ULOG --ulog-prefix "FW_INPUT: " --ulog-nlgroup 1
-A IP_ICMP -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A IP_ICMP -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A IP_ICMP -p icmp -m icmp --icmp-type 4 -j ACCEPT
-A IP_ICMP -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A IP_ICMP -p icmp -m icmp --icmp-type 12 -j ACCEPT
-A IP_ICMP -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A IP_ICMP -p icmp -j RETURN
-A IP_TCP -p tcp -m tcp --dport 2049:2050 -j DROP
-A IP_TCP -p tcp -m tcp --dport 6000:6063 -j DROP
-A IP_TCP -p tcp -m tcp --dport 7000:7010 -j DROP
-A IP_TCP -p tcp -m tcp --dport 19001 -j ACCEPT
-A IP_TCP -p tcp -m tcp --dport 12321 -j ACCEPT
-A IP_TCP -p tcp -m tcp --dport 80 -j ACCEPT
-A IP_TCP -p tcp -m tcp --dport 443 -j ACCEPT
-A IP_TCP -p tcp -m tcp -j RETURN
COMMIT
# Completed on Mon Feb 10 17:41:38 2014
# Generated by iptables-save v1.4.14 on Mon Feb 10 17:41:38 2014
*mangle
:PREROUTING ACCEPT [2386474:238877913]
:INPUT ACCEPT [2251067:225473866]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1100410:5416839301]
:POSTROUTING ACCEPT [1100428:5416842284]
COMMIT
# Completed on Mon Feb 10 17:41:38 2014
# Generated by iptables-save v1.4.14 on Mon Feb 10 17:41:38 2014
*nat
:PREROUTING ACCEPT [211832:26633302]
:INPUT ACCEPT [444:26827]
:OUTPUT ACCEPT [1817:114098]
:POSTROUTING ACCEPT [1817:114098]
COMMIT
# Completed on Mon Feb 10 17:41:38 2014
Last but not least, seorang kolega yang juga memiliki akun di sistem yang sama langsung mendapatkan prompt!
UseDNS yes
diaktifkan. Ini terkenal karena memperlambat login. Selain itu, kita perlu melihat log debug server ($(which sshd) -d
).Jawaban:
Seperti yang ditunjukkan dalam komentar, ini kemungkinan disebabkan oleh
UseDNS yes
pengaturan disshd_config
server.The
UseDNS
Pengaturan adalah penyebab umum untuk masalah ini sangat. Pada dasarnya yang terjadi adalah netblock IP Anda entah memiliki server DNS yang rusak atau hilang. Jadi sshd sedang mencoba melakukan pencarian balik pada alamat IP Anda, dan menunggu sampai waktu habis. Orang lain tidak mengalami penundaan karena mereka memiliki server DNS fungsional untuk netblock mereka.Kebanyakan orang mematikan pengaturan ini karena alasan ini. Sementara ya, pengaturannya ada untuk keamanan, itu cukup banyak tidak berguna .
Solusinya adalah dengan mengatur hal berikut di
sshd_config
:sumber
sshd_config
di debian 7 datang tanpa klausa ini di file konfigurasi. Satu harus mengetik di.