sudo
Ubuntu 14.04サーバーに最初に入力したのは常に遅かったです。パスワードプロンプトがすぐに表示されますが、Enterキーを押した後に印刷が表示されるまでに約10〜15秒かかります。以降のすべてのsudoコマンドはすぐに実行されます。
この場合、同様のコマンドを実行してもsudo strace -S time -c sudo echo hi
有用な情報は表示されません。なぜなら、sudo fromはsudo echo hi
すでに2番目のsudoであり、非常に高速に実行されているからです。時間が経過して実行中のセッションでパスワードを再入力する必要があると、再び速度が遅くなります。
私が見つけたすべての解決策は、127.0.0.1の解像度でファイルにホスト名を追加することでしたが、/etc/hosts
役に立ちませんでした。su root
すぐに実行してください。過去数日間私が変更したことを覚えている唯一のことは、サーバーがルーティングされるサブネットのネットマスクであり、samba、dnsutils、およびbind9をインストールすることです。しかし、これらのプロセスのどれも実行されておらず、物理アクセス、sshセッション、およびtmuxセッションに問題がまだ存在します。
編集:新しい方法
sudo tcpdump -vvvi any > tcpdump.log
すべてのネットワークカードを取り外した状態で実行しようとしました。ログには次のような内容がたくさん表示されます。
18:35:09.453399 IP (tos 0x0, ttl 64, id 49112, offset 0, flags [DF], proto UDP (17), length 76)
localhost.38498 > localhost.domain: [bad udp cksum 0xfe4b -> 0x1050!] 58546+ SRV? _kerberos._udp.KF.OURLOCALDOMAIN.DE. (48)
18:35:09.457412 IP (tos 0x0, ttl 64, id 49113, offset 0, flags [none], proto UDP (17), length 76)
localhost.domain > localhost.38498: [bad udp cksum 0xfe4b -> 0x8fcd!] 58546 ServFail q: SRV? _kerberos._udp.KF.OURLOCALDOMAIN.DE. 0/0/0 (48)
同じエントリがudpではなくtcpとして表示されます。私たちの大学のドメイン名をOURLOCALDOMAINに変更しました。
今私はkerberosがそれに関連していると思いましたが、/etc/krb5.confを削除して再起動しましたが、まだ変更はありません。サーバーが私たちの大学ネットワークの中央Kerberosサーバーに対して自分自身を認証しようとしているようです。私は数年前にこのIPが私たちの部門のSambaを実行しているサーバーに登録されていることを知っています。連絡してもいいですか?ホスト名を当時使用していた名前に変更しましたが、sudoの動作に変更はありませんでした。 LmwangiはPAMについて何かを提案しましたが、私はそれについてほとんど知らなかったので、この問題を解決する方法がわかりません。 Sambaをインストールすると、Sambaのインストールに問題があり、Heimdal KerberosからMIT Kerberosに切り替えたことを思い出してください。私も数日間コメントにあるアイデアを試してみる予定ですが、数日間旅行に行かなければならないので時間がかかることがあります。
編集2:解決済み
すべてを混乱させる既存のDNS検索項目があります/etc/network/interfaces
。私自身が愚かに感じる。今、すべてがうまくいきます。
答え1
お使いのコンピュータがPAMを使用して外部認証サービス(NIS / LDAPなど)に接続しようとしているようです。
PAMを正しく理解すると、strace呼び出しでPAMルックアップが表示されません。 tshark / tcpdumpを実行し、特定のネットワークトラフィックをsudo試行に関連付けることができることを確認することをお勧めします。ここで、容疑者は DNS ルックアップと LDAP コールです。
tcpdump -i eth0 -w network.pcap -s0 -Av
発見の原因を見つけたら、関連するPAMモジュールを見つけて問題を編集して解決します。またはDNSルックアップの場合は、/etc/hostsエントリを追加して名前を偽造し、localhostにリダイレクトします。これにより、ルックアップが高速化され、localhostにリダイレクトされ、localhostがリッスンしているエントリがないため、ネットワークトランザクションが迅速に失敗するため、sudoが高速化されます。