CH-J Server Managerservera pārvaldība virs SSH
Izvēlne
Visas pamācības un raksti →

Kā rediģēt failus /etc direktorijā, izmantojot SFTP un sudo

Kāpēc SFTP liedz piekļuvi /etc direktorijā un kā droši mainīt konfigurācijas failu, neatverot root piekļuvi.

Kāpēc SFTP ziņo par liegtu piekļuvi

SFTP darbojas ar kontu, ar kuru pieteicāties, un tam nav sudo ekvivalenta. Lielākā daļa failu /etc direktorijā pieder root, tāpēc parasts konts dažus no tiem var lasīt, bet nevar rakstīt nevienā. Tā ir pareiza darbība, un to nevajag labot, vājinot piekļuves atļaujas.

Ko nedarīt

Nepalaidiet chmod 777 konfigurācijas failam, nemainiet /etc failu īpašnieku uz savu kontu un neiespējojiet root pieteikšanos ar paroli tikai vienas rediģēšanas dēļ. Daži pakalpojumi atsakās izmantot failus ar pārāk plašām atļaujām, un ikviena šāda izmaiņa samazina servera drošību vēl ilgi pēc rediģēšanas.

Izmantojiet sudoedit terminālī

sudoedit nokopē failu uz pagaidu atrašanās vietu, atver to jūsu redaktorā ar jūsu kontu un ieraksta atpakaļ tikai pēc saglabāšanas. Pats redaktors nedarbojas kā root.

sudoedit /etc/nginx/nginx.conf

Augšupielādējiet kopiju, pēc tam uzstādiet to vietā

Ja vēlaties izmantot lokālu redaktoru, augšupielādējiet failu savā mājas direktorijā un uzstādiet to vajadzīgajā vietā ar sudo. Vispirms izveidojiet oriģināla rezerves kopiju vietā, no kuras neviena konfigurācijas iekļaušanas direktīva neko nelasa. Komanda install iestata īpašnieku un piekļuves atļaujas, bet sistēmās ar SELinux komanda restorecon iestata pareizo kontekstu. Pirms pārņemat šīs vērtības, pārbaudiet oriģināla īpašnieku un atļaujas, jo ne visiem failiem tiek izmantoti root un 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.conf

Pārbaudiet pirms izmaiņu piemērošanas

Fails ar sintakses kļūdu var apturēt pakalpojumu nākamajā restartēšanas reizē. Pirms pārlādēšanas palaidiet attiecīgā pakalpojuma pārbaudi. Mainot SSH iestatījumus, atstājiet pašreizējo sesiju atvērtu un otrā logā pārbaudiet jaunu pieteikšanos.

sudo nginx -t
sudo sshd -t
sudo visudo -cf /etc/sudoers.d/example

Rediģēšana ar sudo lietotnē CH-J Server Manager

File Manager piedāvā atvērt failu ar sudo, ja SSH konts to nevar lasīt, un brīdina, ka saglabāšanai būs vajadzīgs sudo. Saglabājot dati nonāk konta privātajā pagaidu direktorijā, un pēc pārbaudes sudo pārvieto tos uz paredzēto vietu, saglabājot īpašnieku, atļaujas, ACL un SELinux kontekstu. Neobligāta rezerves kopija pirms aizstāšanas saglabā oriģināla kopiju. Parole tiek nosūtīta tikai sudo serverī un netiek glabāta diskā vai žurnālos. Ja sudo politika pieprasa termināli (requiretty), lietotne šo prasību neapiet. Lietotne nepārbauda faila saturu, tāpēc pakalpojuma pārbaude jāpalaiž pašiem.

Sīki izstrādāta dokumentācija

man: sudo / sudoedit →

man: install →

Biometriskā atbloķēšana un drošība →