# If not running interactively, don't do anything [[ $- != *i* ]] && return
alias ls='ls --color=auto' PS1='[\u@\h \W]\$ ' sh onoff.sh ############## i na to exit ############ pa na to Generalnie chodzi o to, że przy loginie ma wykonać skrypt i od razu wyjść.
Jednakże wciąż można za pomocą np:
ssh user@host ls onoff.sh
wykonać dowolną komendę.
W jaki sposób ograniczyć użytkownika, aby mógł wykonać tylko to, co zawarte jest w .bashrc?
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
alias ls='ls --color=auto'
PS1='[\u@\h \W]\$ '
sh onoff.sh ############## i na to
exit ############ pa na to
Generalnie chodzi o to, że przy loginie ma wykonać skrypt i od razu wyjść.
Jednakże wciąż można za pomocą np:
ssh user@host lsonoff.sh
wykonać dowolną komendę.
W jaki sposób ograniczyć użytkownika, aby mógł wykonać tylko to, co zawarte jest w .bashrc?
@grappas: Możesz mu podać ten skrypt jako shell?
Ogólnie to masz opcję w systemie na stworzenie ograniczonego shella dla danego usera.
https://research.kudelskisecurity.com/2013/05/14/restrict-ssh-logins-to-a-single-command/
@Kryspin013: rozwiniesz?
@grappas: a po co tylko co jest w .bashrc
zrób mu odzielny wpis w /etc/sudoers.d/user
@grappas: a głośno myślę czy ustawienie userowi skryptu jako shell w /etc/passwd by zdziałało bo w sumie nigdy nie próbowałem xd
Ale w authorized_keys doczytałem, że możesz userowi wymusić tylko użycie jednej komendy polecenia lub ograniczyć shell
@open-alpha: dalej nie czaję, jak to ma ograniczyć zwykłego basha?