Hvorfor SFTP nægter adgang
SFTP kører under den konto, du loggede ind med, og har ingen pendant til sudo. De fleste filer i /etc tilhører root, så en almindelig konto kan læse nogle af dem, men ikke skrive til nogen af dem. Det er korrekt adfærd og skal ikke løses ved at svække rettighederne.
Hvad du skal undgå
Kør ikke chmod 777 på en konfigurationsfil, overfør ikke ejerskabet af filer i /etc til din konto, og aktivér ikke root-login med adgangskode blot for én redigering. Nogle tjenester afviser filer med for åbne rettigheder, og enhver sådan ændring gør serveren mindre sikker længe efter, at redigeringen er afsluttet.
Brug sudoedit i en terminal
sudoedit kopierer filen til en midlertidig placering, åbner den i din editor under din egen konto og skriver den først tilbage, når du har gemt. Selve editoren kører ikke som root.
sudoedit /etc/nginx/nginx.confUpload en kopi, og installér den derefter
Hvis du foretrækker en lokal editor, kan du uploade filen til din hjemmemappe og installere den med sudo. Tag først en sikkerhedskopi af originalen et sted, hvor ingen konfigurationsinkludering læser den. Kommandoen install angiver ejer og rettighedstilstand, og på systemer med SELinux angiver restorecon den korrekte kontekst. Kontrollér originalens ejer og rettighedstilstand, før du overtager værdierne, da ikke alle filer bruger root og 644.
stat -c '%U %G %a' /etc/nginx/nginx.conf
sudo cp -a /etc/nginx/nginx.conf /root/nginx.conf.bak
sudo install -o root -g root -m 644 ~/nginx.conf.new /etc/nginx/nginx.conf
sudo restorecon -v /etc/nginx/nginx.confKontrollér før ændringen tages i brug
En fil med syntaksfejl kan stoppe en tjeneste ved næste genstart. Kør den pågældende tjenestes kontrol, før du genindlæser den. Når du ændrer SSH-indstillinger, skal du holde den aktuelle session åben og teste et nyt login fra et andet vindue.
sudo nginx -t
sudo sshd -t
sudo visudo -cf /etc/sudoers.d/exampleRedigering med sudo i CH-J Server Manager
File Manager tilbyder at åbne en fil med sudo, når SSH-kontoen ikke kan læse den, og advarer om, at det kræver sudo at gemme. Ved lagring overføres dataene til kontoens private midlertidige mappe, og efter kontrol flytter sudo dem på plads, mens ejer, rettigheder, ACL og SELinux-kontekst bevares. En valgfri sikkerhedskopi gemmer en kopi af originalen, før den erstattes. Adgangskoden sendes kun til sudo på serveren og gemmes hverken på disk eller i logfiler. Hvis sudo-politikken kræver en terminal (requiretty), omgår appen ikke kravet. Appen validerer ikke filens indhold, så du skal selv køre tjenestens kontrol.