Unser Team hat beschlossen, allen unseren Gastgebern ein Willkommensbanner hinzuzufügen. Ein Teammitglied hat anstelle der Nachricht in /etc/motddie Nachricht mit echoin hinzugefügt ~/.cshrc.
Dies bricht scpzwischen den Hosts. Kann jemand erklären, wie das bricht scp? Wird auch dann cshrcgeladen, wenn Sie dies tun scp? Und wie werden einige Echo-Nachrichten darin es brechen?
Mir ist die interne Funktionsweise von nicht bekannt scp.
Die Nachricht, die wir hinzugefügt haben ~/.cshrc:
echo "##############################################################################"
echo " Alert! Aler! Alert! Alert! Alert! Alert!"
echo "This is a restricted box, any actions performed here will be reported to xxx@yyy.com"
echo "##############################################################################"
echoBefehle .cshrc: auf dem lokalen Computer scpund / oder auf dem Remote-Server? Bitte beschreiben Sie "Brechen": Welcher genaue scpBefehl wird ausgeführt und welche Ausgabe- / Fehlermeldung wird erzeugt?
[aime@abc ~]$ scp 20160830210005defaults.conf aime@xyz:/scratch/aime aime@xyz's password: ########################################################################################################
.cshrcDatei wird immer gelesen, auch in nicht interaktiven Shells, wie sie von scp gestartet wurden. Alles, was eine Ausgabe erzeugen kann, wie z. B.echooderstty, muss sich in einerif ($?prompt )Anweisung befinden. Es gibt andere, sicherere Möglichkeiten, Bannermeldungen anzuzeigen (z. B. dieBannerAnweisung in der SSH-Serverkonfiguration), aber ein Administrator muss dies einrichten.