Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2018-02-11 00:29:02

  Raptoor2 - Użytkownik

Raptoor2
Użytkownik
Zarejestrowany: 2017-08-22

użytkownik z brakiem dostępu poza swój katalog

hej, mam mały problem

chciałbym użyczyć troche miejsca na moim vps znajomemu, jednakże mam mały problem

otóż chciałbym aby znajomy zaraz po zalogowaniu poprzez protokół sftp lub też ssh był w w swoim domowym katalogu i nie mógł go opuścić, podglądać zawartości plików konfiguracyjnych np nginxa itd

jakie rozwiązanie mi polecicie?

Offline

 

#2  2018-02-11 00:42:04

  noyo - Użytkownik

noyo
Użytkownik
Skąd: Mazury
Zarejestrowany: 2014-05-06
Serwis

Re: użytkownik z brakiem dostępu poza swój katalog

Tworzysz użytkownika np. kolega , nadajesz mu katalog domowy.

Edytujesz linie związaną z nim w pliku /etc/passwd i zmieniasz /bin/bash na /dev/null

Następnie dodajesz w pliku /etc/ssh/sshd_config na końcu te linie:

Kod:

Subsystem sftp internal-sftp       
Match User kolega        
    ChrootDirectory %h  
    AllowTCPForwarding no          
    X11Forwarding no    
    ForceCommand internal-sftp    
Match all

Restartujesz ssh i działa.

Ostatnio edytowany przez noyo (2018-02-11 00:43:38)


[url]http://www.kazuko.pl[/url] - Mikrotik, Ubiquiti, LMS, Linux, Skrypty
[url]http://www.prorys.pl[/url] - Wykonywanie kosztorysów, sporządzanie wizualizacji i projektów budynków

Offline

 

#3  2018-02-11 00:55:16

  Raptoor2 - Użytkownik

Raptoor2
Użytkownik
Zarejestrowany: 2017-08-22

Re: użytkownik z brakiem dostępu poza swój katalog

rozumiem czyli jeżeli będe chciał dodać więcej niż jednego uzytkownika na takiej zasadzie to musze

dodać kilka wpisóœ do sshd tak?

Subsystem sftp internal-sftp       
Match User kolega       
    ChrootDirectory %h 
    AllowTCPForwarding no         
    X11Forwarding no   
    ForceCommand internal-sftp   
Match all

Subsystem sftp internal-sftp       
Match User kolega2       
    ChrootDirectory %h 
    AllowTCPForwarding no         
    X11Forwarding no   
    ForceCommand internal-sftp   
Match all

itd

Offline

 

#4  2018-02-11 01:00:51

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: użytkownik z brakiem dostępu poza swój katalog

Chroot w takiej konfiguracji owszem, zadziała, ale daleko w takim środowisku o bezpieczeństwo.

Jeżli ten VPS chodzi na KVM i masz tam własne jajo, to zainteresuj się Apparmorem i biblioteką [url=https://packages.debian.org/stretch/libpam-apparmor]libpam_appamor[/url].

Ostatnio edytowany przez Jacekalex (2018-02-11 01:06:58)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#5  2018-02-11 01:05:41

  Raptoor2 - Użytkownik

Raptoor2
Użytkownik
Zarejestrowany: 2017-08-22

Re: użytkownik z brakiem dostępu poza swój katalog

problem w tym że po tej konfiguracji przy próbie logowania dostaje komunikat:

Błąd:    Connection reset by peer
Błąd:    Nie można połączyć się z serwerem

Offline

 

#6  2018-02-11 01:07:48

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: użytkownik z brakiem dostępu poza swój katalog

[quote=Raptoor2]problem w tym że po tej konfiguracji przy próbie logowania dostaje komunikat:

Błąd:    Connection reset by peer
Błąd:    Nie można połączyć się z serwerem[/quote]
To zobacz w /var/log/auth.log co jest grane.

Podejrzewam z resztą, że aktualna powłoka pacjenta nie widnieje w /etc/shells.

Edytujesz linie związaną z nim w pliku /etc/passwd i zmieniasz /bin/bash na /dev/null[/quote]
/etc/passwd się NIE EDYTUJE, można w ten sposób uceglić PAM i cały serwer.

Służy do tego magiczna komenda

Kod:

usermod

RTFM:

Kod:

man usermod

NP:

Kod:

root ~> grep pies /etc/passwd
pies:x:1004:1004::/home/pies:/bin/zsh

root ~> usermod pies -s /bin/false

grep pies /etc/passwd
pies:x:1004:1004::/home/pies:/bin/false

Ostatnio edytowany przez Jacekalex (2018-02-11 01:52:33)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#7  2018-02-11 01:58:00

  Raptoor2 - Użytkownik

Raptoor2
Użytkownik
Zarejestrowany: 2017-08-22

Re: użytkownik z brakiem dostępu poza swój katalog

Tak jak pisałeś wyżej zainteresuje się Apparmorem i libem :)

jak juz robic to porządie, przy okazji sie naucze czegos i nie bede z bezpieczenstwem na bakier

Ostatnio edytowany przez Raptoor2 (2018-02-11 01:58:35)

Offline

 

#8  2018-02-11 09:57:48

  noyo - Użytkownik

noyo
Użytkownik
Skąd: Mazury
Zarejestrowany: 2014-05-06
Serwis

Re: użytkownik z brakiem dostępu poza swój katalog

Niestety nie zawsze ma sie co sie chce, a innego rozwiązania bez KVM nie znalazłem.

[quote=Jacekalex]Podejrzewam z resztą, że aktualna powłoka pacjenta nie widnieje w /etc/shells.[/quote]
Dokładnie, zapomniałem dodać.

Jeszcze te linie w /etc/ssh/sshd_config czasem się różnią zależy jaki system.

Ostatnio edytowany przez noyo (2018-02-11 10:00:08)


[url]http://www.kazuko.pl[/url] - Mikrotik, Ubiquiti, LMS, Linux, Skrypty
[url]http://www.prorys.pl[/url] - Wykonywanie kosztorysów, sporządzanie wizualizacji i projektów budynków

Offline

 

#9  2018-02-11 14:22:18

  Raptoor2 - Użytkownik

Raptoor2
Użytkownik
Zarejestrowany: 2017-08-22

Re: użytkownik z brakiem dostępu poza swój katalog

mój vps oparty jest o technologie kvm
dodatkowo takie rozwiazanie moglby sie przydac takze na serwerze dedyowanym

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)

[ Generated in 0.014 seconds, 16 queries executed ]

Informacje debugowania

Time (s) Query
0.00012 SET CHARSET latin2
0.00004 SET NAMES latin2
0.00141 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.225.92.60' WHERE u.id=1
0.00072 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.225.92.60', 1732281785)
0.00046 SELECT * FROM punbb_online WHERE logged<1732281485
0.00072 DELETE FROM punbb_online WHERE ident='18.191.178.16'
0.00078 DELETE FROM punbb_online WHERE ident='3.14.251.103'
0.00080 DELETE FROM punbb_online WHERE ident='3.143.214.226'
0.00079 DELETE FROM punbb_online WHERE ident='3.143.235.104'
0.00084 DELETE FROM punbb_online WHERE ident='85.208.96.193'
0.00079 SELECT topic_id FROM punbb_posts WHERE id=317490
0.00009 SELECT id FROM punbb_posts WHERE topic_id=30275 ORDER BY posted
0.00080 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=30275 AND t.moved_to IS NULL
0.00005 SELECT search_for, replace_with FROM punbb_censoring
0.00153 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=30275 ORDER BY p.id LIMIT 0,25
0.00095 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=30275
Total query time: 0.01089 s