EngelsFransSpaans

Ad


OnWorks-favicon

lshell - Online in de cloud

Voer lshell uit in de gratis hostingprovider van OnWorks via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht lshell die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


lshell - Beperkte Shell

KORTE INHOUD


schaal [OPTIES]

PRODUCTBESCHRIJVING


schaal biedt een beperkte shell die per gebruiker is geconfigureerd. De configuratie is behoorlijk gedaan
gewoon met behulp van een configuratiebestand. In combinatie met ssh's geautoriseerde_sleutels of / etc / shells
en / Etc / passwd , wordt het heel gemakkelijk om de toegang van de gebruiker te beperken tot een beperkte set van
opdracht.

OPTIES


--config
Specificeer configuratiebestand

--log
Specificeer de logmap

--
waar is *elke* configuratiebestandsparameter

-H, --help
Help-bericht weergeven

--versie
Toon versie

CONFIGURATIE


U kunt lshell configureren via het configuratiebestand:

On Linux -> /etc/lshell.conf
On * BSD -> / usr /{pkg,local}/etc/lshell.conf

schaal configuratie heeft 4 soorten secties:

[globaal] -> schaal system configuratie (enkel en alleen 1)
[standaard] -> schaal verzuim gebruiker configuratie (enkel en alleen 1)
[foe] -> UNIX gebruikersnaam "foe" specifiek configuratie
[gp:balk] -> UNIX groepsnaam "bar" specifiek configuratie

De volgorde van prioriteit bij het laden van voorkeuren is als volgt:

1- Gebruiker configuratie
2- Groep configuratie
3- Standaard configuratie

[globaal]
logpad
configuratiepad (standaard is /var/log/lshell/)

loglevel
0, 1, 2, 3 of 4 (0: geen logs -> 4: logt alles)

logbestandsnaam
- ingesteld op syslog om in te loggen op syslog
- stel de naam van het logbestand in, bijv. %u-%y%m%d (dwz foo-20091009.log): %u -> gebruikersnaam
%d -> dag [1..31]
%m -> maand [1..12]
%y -> jaar [00..99]
%h -> tijd [00:00..23:59]

syslognaam
als u syslog gebruikt, stelt u uw lognaam in (standaard: lshell)

include_dir
een map met meerdere configuratiebestanden bevatten. Deze bestanden kunnen alleen
bevatten standaard/gebruiker/groepsconfiguratie. De globale configuratie is alleen:
geladen vanuit het standaardconfiguratiebestand. Deze variabele wordt uitgebreid (bijv
/pad/*.conf).

[standaard] en / of [Gebruikersnaam] en / of [grp:groepsnaam]
aliassen
lijst met opdrachtaliassen (vergelijkbaar met de aliasrichtlijn van bash)

toegestaan
een lijst met toegestane commando's of ingesteld op 'all' om alle commando's in het PATH van de gebruiker toe te staan

toegestaan_cmd_pad
een lijst met paden; alle uitvoerbare bestanden binnen dit pad zijn toegestaan

env_pad
update de omgevingsvariabele $PATH van de gebruiker (optioneel)

env_vars
omgevingsvariabelen instellen (optioneel)

verboden
een lijst met verboden tekens of opdrachten

geschiedenis_bestand
stel de bestandsnaam van de geschiedenis in. Een wildcard kan worden gebruikt:
%u -> gebruikersnaam (bijv. '/huis/%u/.lhistory')

geschiedenis_grootte
stel de maximale grootte (in regels) van het geschiedenisbestand in

thuis_pad (verouderd)
stel de thuismap van uw gebruiker in. Indien niet gespecificeerd, is de homedirectory ingesteld op:
de omgevingsvariabele $HOME. Deze variabele wordt in de volgende versie verwijderd
van lshell, gebruik de hulpprogramma's van uw systeem om de thuismap van een gebruiker in te stellen. EEN
wildcard kan worden gebruikt:
%u -> gebruikersnaam (bijv. '/huis/%u')

intro stel de introductie in om af te drukken bij inloggen

login_script
definieer het script dat moet worden uitgevoerd bij gebruikersaanmelding

passwd wachtwoord van specifieke gebruiker (standaard is leeg)

pad lijst met paden om de gebruiker geografisch te beperken. Het is mogelijk om jokertekens te gebruiken
(bijv. '/var/log/ap*').

prompt stel de prompt-indeling van de gebruiker in (standaard: gebruikersnaam)
%u -> gebruikersnaam
%h -> hostnaam

prompt_kort
stel sorteerprompt huidige directory-update in - stel in op 1 of 0 oversch lijst met commando's
toegestaan ​​om uit te voeren via ssh (bijv. rsync, rdiff-backup, scp, etc.)

scp het gebruik van scp-verbinding toestaan ​​of verbieden - ingesteld op 1 of 0

scpkracht
forceer bestanden die via scp naar een specifieke map worden verzonden

scp_download
ingesteld op 0 om scp-downloads te verbieden (standaard is 1)

scp_upload
ingesteld op 0 om scp-uploads te verbieden (standaard is 1)

sftp het gebruik van een sftp-verbinding toestaan ​​of verbieden - stel in op 1 of 0.

WAARSCHUWING: Deze optie werkt niet als u de interne-sftp-service van OpenSSH gebruikt
(bijv. indien geconfigureerd in chroot)

sudo_opdrachten
een lijst van de toegestane commando's die kunnen worden gebruikt met sudo(8). Indien ingesteld op 'alle', alle
de 'toegestane' commando's zijn toegankelijk via sudo(8).

Het is mogelijk om de vlag -u sudo te gebruiken om een ​​opdracht als een andere uit te voeren
gebruiker dan de standaard root.

timer een waarde in seconden voor de sessietimer

streng striktheid van het loggen. Indien ingesteld op 1, wordt elk onbekend commando als verboden beschouwd,
en de waarschuwingsteller van de gebruiker wordt verlaagd. Indien ingesteld op 0, wordt het commando beschouwd als
onbekend, en de gebruiker wordt alleen gewaarschuwd (dwz *** onbekende synthax)

waarschuwing_teller
aantal waarschuwingen wanneer de gebruiker een verboden waarde invoert voordat hij wordt verlaten
schelp. Instellen op -1 om de teller uit te schakelen en de gebruiker te waarschuwen.

SHELL GEBOUWD COMMANDO'S


Hier is de reeks opdrachten die altijd beschikbaar zijn met lshell:

duidelijk wist de terminal

helpen, ?
print de lijst met toegestane commando's

geschiedenis
print de commandogeschiedenis

pad geeft alle toegestane en verboden paden weer

lsudo geeft alle sudo toegestane opdrachten weer

Voorbeelden


$ schaal
Probeert lshell uit te voeren met standaard ${PREFIX}/etc/lshell.conf als configuratiebestand.
Als het niet lukt, wordt er een waarschuwing afgedrukt en wordt lshell onderbroken. lshell-opties zijn:
geladen vanuit het configuratiebestand

$ schaal --config /pad/naar/mijnconf.bestand --log /pad/naar/mijnlog.log
Dit overschrijft de standaardopties die zijn gespecificeerd voor configuratie en/of logbestand

GEBRUIK CASE


Het primaire doel van lshell was om shell-accounts te kunnen maken met ssh-toegang en
beperken hun omgeving tot een paar benodigde commando's. In dit voorbeeld, Gebruiker 'foo' en
user 'bar' behoren beide tot de 'users' UNIX-groep:

Gebruiker foe:
- moet toegang hebben / usr en / var maar niet / Usr / local
- gebruiker alle commando's in zijn PATH maar 'su'
- heeft een waarschuwingsteller ingesteld op 5
- heeft zijn thuispad ingesteld op '/home/users'

Gebruiker bar:
- moet toegang hebben / Etc en / usr maar niet / Usr / local
- is toegestaan ​​standaard commando's plus 'ping' minus 'ls'
- striktheid is ingesteld op 1 (wat betekent dat hij geen onbekend commando mag typen)

In dit geval ziet mijn configuratiebestand er ongeveer zo uit:

# CONFIURATIE Start het spel
[globaal]
logpad : /var/log/lshell/
loglevel : 2

[standaard]
toegestaan : ['ls','pwd']
verboden : [';', '&', '|']
waarschuwing_teller : 2
timer : 0
pad : ['/ Etc', '/ usr']
env_pad : ':/ sbin:/ usr / bin /'
scp : 1 # or 0
sftp : 1 # or 0
oversch : ['rsync','ls']
aliassen : {'ls':'ls --color=auto','ll':'ls -l'}

[grp:gebruikers]
waarschuwing_teller : 5
oversch : - ['ls']

[foe]
toegestaan : 'alle' - ['zo']
pad : ['/ var', '/ usr'] - ['/ Usr / local']
thuis_pad : '/home/gebruikers'

[bar]
toegestaan : + ['ping'] - ['ls']
pad : - ['/ Usr / local']
streng : 1
scpkracht : '/home/bar/uploads/'
# CONFIURATIE EINDE

OPMERKINGEN


Om de waarschuwingen van een gebruiker in de logmap te loggen (standaard /var/log/lshell/)
je moet eerst de map maken (als deze nog niet bestaat) en deze naar lshell group chownen:

# groep toevoegen --systeem schaal
# mkdir /var/log/lshell
# chown :lshell /var/log/lshell
# chmod 770 /var/log/lshell

voeg vervolgens de gebruiker toe aan de schaal groep:

# gebruikersmod -aG schaal USER_NAME

Om lshell als standaardshell voor een gebruiker in te stellen:

On Linux:
# chsh -s /usr/bin/lshell USER_NAME

On *BSD:
# chsh -s / usr /{pkg,local}/bin/lshell USER_NAME

Gebruik lshell online met onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

Linux-commando's

Ad