2015-09-01 6 views
9

Instaluję jenkins na lokalnym serwerze, aby uzyskać dostęp lokalnie w mojej sieci. Widzę tę linię w dokumentach dla jenkins:Instalując Jenkins na lokalnym serwerze, mam już użytkownika o nazwie "jenkins"

Użytkownik "jenkins" został stworzony do uruchomienia tej usługi. Jeśli zmienisz to na innego użytkownika za pomocą pliku konfiguracyjnego, musisz zmienić właściciela /var/log/jenkins,/var/lib/jenkins i/var/cache/jenkins.

Już stworzyłem użytkownika jenkins na serwerze centos przed instalacją jenkins. Jenkins działa i wydaje się działać dobrze. Ciekawe, czy utworzenie użytkownika o tej samej nazwie spowoduje pojawienie się jakichkolwiek problemów w przyszłości.

+0

Jak zainstalowałeś Jenkinsa? Co jest drukowane na konsoli lub w dzienniku systemowym lub dzienniku Jenkinsa podczas próby uruchomienia Jenkinsa? –

+0

@ ChristopherOrr zainstalowany przez: 'sudo wget -O /etc/yum.repos.d/jenkins.repo http: // pkg.jenkins-ci.org/redhat/jenkins.repo' then' sudo rpm --import https: //jenkins-ci.org/redhat/jenkins-ci.org.key' następnie 'sudo yum install jenkins' – EGHDK

Odpowiedz

5

TL; DR Jenkins użyje użytkownika, który utworzyłeś, ale możesz chcieć dwukrotnie sprawdzić niektóre ustawienia dla spójności.

Skrypt przedinstalacyjny (zobacz poniżej) w pakiecie Jenkins spróbuje utworzyć grupę użytkownika jenkins i jenkins, ale jeśli jeden z etapów się nie powiedzie, ponieważ istnieje użytkownik lub grupa, nie jest to błąd - typowy przypadek, w którym to występuje jest, gdy konto użytkownika pozostaje z poprzedniej instalacji Jenkins. Jenkins uruchomi się przy użyciu istniejącego użytkownika, a uprawnienia do katalogów Jenkins zostaną ustawione poprawnie.

/usr/sbin/groupadd -r jenkins &>/dev/null || : 
# SUSE version had -o here, but in Fedora -o isn't allowed without -u 
/usr/sbin/useradd -g jenkins -s /bin/false -r -c "Jenkins Continuous Integration Server" \ 
     -d "/var/lib/jenkins" jenkins &>/dev/null || : 

Zakładając, że tego właśnie chcesz, wszystko jest w porządku. Jest kilka rzeczy, które warto sprawdzić:

  • Jenkins tworzy użytkownikowi systemu bez uprawnień login (powłoka jest /bin/false). Oznacza to, że użytkownik jenkins będzie mógł uruchamiać procesy oraz własne pliki i katalogi, ale nie będzie mógł zalogować się przez ssh lub konsolę. Jest to ustawienie zabezpieczeń, które zmniejsza możliwe wektory wtargnięcia. W zależności od twoich planów dla użytkownika jenkins możesz chcieć podobnie wyłączyć logowanie.
  • Podstawową grupą użytkownika jenkinsa są jenkins.
  • Katalog domowy użytkownika Jenkins jest ustawiony na /var/lib/jenkins.

Dwa ostatnie są przede wszystkim dla wygody - np. może być przydatne posiadanie innych użytkowników, którzy mogą czytać pliki dziennika Jenkins (należy do powiązanej grupy). Nie mogę wymyślić rzeczy, które mogłyby pójść źle, jeśli nie są ustawione tak, jak w skrypcie przedinstalacyjnym, ale wydaje się dobrym pomysłem być spójnym.

Te ustawienia konta użytkownika są przechowywane w /etc/passwd. W dystrybucji Debian/Ubuntu ustawienia konta użytkownika można modyfikować za pomocą usermod.

+0

'dobry pomysł, aby być konsekwentnym'. Gdy dojdziecie do serwera po dwóch latach, pomocna będzie konfiguracja. – Jayan

+0

Dla nr 1: co to znaczy użytkownik bez uprawnień logowania w odniesieniu do numeru 1? Gdzie mogę sprawdzić to ustawienie? Dla nr 2 mogę to zrobić sam. Dla nr 3: gdzie sprawdzasz katalog domowy dla użytkowników? – EGHDK

+0

@EGHDK Łatwym sposobem sprawdzenia ustawień użytkownika jest 'grep jenkins/etc/passwd', który zwraca oddzielony dwukropkami ciąg różnych ustawień konta użytkownika. W Debianie/Ubuntu, [usermod] (http://linux.die.net/man/8/usermod) może być użyty do modyfikacji konta użytkownika. –

0

jeśli użytkownik „Jenkins” już istnieje, to przyzwyczajenie powoduje żadnych problemów, chyba że jeśli byś cofnął pozwolenie na prowadzenie pewnych operacji takich jak dostęp do katalogów config, uwierzytelnianie SSH, obsada, etc ..

Użyłem istniejącego użytkownika i nigdy nie powodowało problemu z konsekwencją lub wydajnością.

Powiązane problemy