75

I'm using a EC2 server instance. Used the following to install Jenkins:

wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install jenkins

but I need to install software on the Jenkins server so in my EC2 instance I did

sudo –s –H –u jenkins

to get into the jenkins server. Then I tried to do

sudo cabal install quickcheck

but it prompted me for jenkins password. I've been searching around the internet for 4hrs now and nothing is helping me get administrative privilege in the jenkins server.

So I'm building my project using the following command in shell:

sudo cabal clean
sudo cabal configure
sudo cabal build
sudo cabal install

This is the error I'm getting:

 Started by timer
Building in workspace /var/lib/jenkins/jobs/Finance/workspace
Checkout:workspace / /var/lib/jenkins/jobs/Finance/workspace - hudson.remoting.LocalChannel@eea6dc
Using strategy: Default
Last Built Revision: Revision b638e2182dece0ef1a40232b1d75fa3ae5c01a5d (origin/master)
Fetching changes from 1 remote Git repository
Fetching upstream changes from origin
Commencing build of Revision b638e2182dece0ef1a40232b1d75fa3ae5c01a5d (origin/master)
Checking out Revision b638e2182dece0ef1a40232b1d75fa3ae5c01a5d (origin/master)
[workspace] $ /bin/sh -xe /tmp/hudson3500373817395137440.sh
+ sudo cabal clean
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: 3 incorrect password attempts
Build step 'Execute shell' marked build as failure
Sending e-mails to: ***@gmail.com
ERROR: Could not connect to SMTP host: localhost, port: 25
javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25;
  nested exception is:
    java.net.ConnectException: Connection refused
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1934)
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:638)
    at javax.mail.Service.connect(Service.java:295)
    at javax.mail.Service.connect(Service.java:176)
    at javax.mail.Service.connect(Service.java:125)
    at javax.mail.Transport.send0(Transport.java:194)
    at javax.mail.Transport.send(Transport.java:124)
    at hudson.tasks.MailSender.execute(MailSender.java:116)
    at hudson.tasks.Mailer.perform(Mailer.java:117)
    at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:814)
    at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:786)
    at hudson.model.Build$BuildExecution.post2(Build.java:183)
    at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:733)
    at hudson.model.Run.execute(Run.java:1592)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:237)
Caused by: java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
    at java.net.Socket.connect(Socket.java:579)
    at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:286)
    at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:231)
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1900)
    ... 17 more
Finished: FAILURE
Timo Türschmann
  • 4,388
  • 1
  • 22
  • 30
HHC
  • 2,513
  • 2
  • 18
  • 26
  • 2
    The standard jenkins installation is not secured at all. But I can't say anything about the version you're downloading from aptitude. – Augusto Mar 05 '13 at 15:15
  • 1
    Right after initially installing the new instance of jenkins the session expired and I couldn't log-in what i though i had initally was prompted to create a user. But later tried `admin` for username and password from `C:\Program Files (x86)\Jenkins\secrets\initialAdminPassword` file - and it got me in. – mike123 Jan 24 '17 at 03:41

26 Answers26

100

Here is how you can fix it:

  • Stop Jenkins
  • Go go edit /var/lib/jenkins/config.xml
  • Change <useSecurity>true</useSecurity> to false
  • Restart Jenkins: sudo service jenkins restart
  • Navigate to the Jenkins dashboard to the "Configure Security" option you likely used before. This time, setup security the same as before, BUT set it to allow anyone to do anything, and allow user signup.
  • Go to www.yoursite.com/securityRealm/addUser and create a user
  • Then go change allow anyone to do anything to whatever you actually want users to be able to do. In my case, it is allow logged in users to do anything.
Kevin Buchs
  • 2,520
  • 4
  • 36
  • 55
KLaw
  • 1,619
  • 1
  • 12
  • 7
  • 3
    this worked nicely -- and to add : if you're on a virtual (ec2, azure) and its not your install -- to find that config file, try this sudo grep --include=\*.xml -rnw '/' -e "true" – jeriley Jan 08 '16 at 13:14
  • I now it is AWS specific topic but this also worked for me with local containers, but instead of service restart just use docker stop and docker start – TudorIftimie Aug 26 '19 at 09:52
50

If you installed using apt-get in ubuntu 14.04, you will found the default password in /var/lib/jenkins/secrets/initialAdminPassword location.

Kishore Reddy
  • 886
  • 3
  • 11
  • 19
13

Before installing jenkins, create a user named jenkins and set password there. Then after installing jenkins you can use the password you created.

HHC
  • 2,513
  • 2
  • 18
  • 26
11

With the default Jenkins installation using Homebrew on macOS this will output the initial password for the admin user:

sudo cat /Users/Shared/Jenkins/Home/secrets/initialAdminPassword
friederbluemle
  • 33,549
  • 14
  • 108
  • 109
7

jenkins default administrator password is logged in log file in ubuntu

log file is situated in /var/log/jenkins/jenkins.log folder

password will be placed after this, Jenkins initial setup is required. An admin user has been created and a password generated. Please use the following password to proceed to installation:

Vipin PS
  • 422
  • 4
  • 5
6

After Jenkins is installed just run sudo cat /var/lib/jenkins/secrets/initialAdminPassword.

In the Jenkins login page:

User: admin Password: the output from the above command

O.Caliari
  • 313
  • 2
  • 5
6

On ubuntu 19.04, the default password are stored in the home directory:

cat ~/.jenkins/secrets/initialAdminPassword
Saliou673
  • 209
  • 2
  • 10
5

The password is present in the log generated by docker run image as shown in the example below.

Jenkins Docker run log

Additionally you can check the directory /var/jenkins_home/secrets/ Its in the file name initialAdminPassword

You can use

cat /var/jenkins_home/secrets/initialAdminPassword
Abhimanyu Singh
  • 101
  • 1
  • 4
3

In my case I was using Jenkins Docker Image and I found the initial admin password using this command:

cat ~/secrets/initialAdminPassword
Amir
  • 318
  • 1
  • 5
  • 11
2

You can always disable security, then go in and re-enable it with the settings you want.

Larry Shatzer
  • 3,579
  • 8
  • 29
  • 36
  • I tried that but it still seems to ask for jenkins password...any other suggestions? – HHC Mar 05 '13 at 23:27
  • I changed true to false , deleted authorizationStrategy and securityRealm, but nothing seems to have changed after I restarted the jenkins server. Then I deleted config.xml all together, and still nothing changed.... – HHC Mar 05 '13 at 23:40
2

By default, Jenkins account is created without password and with the login shell as /bin/false.

jenkins:x:496:493:Jenkins Continuous Integration Server:/var/lib/jenkins:/bin/false

Change the shell to /bin/bash and you should be able to login without password by sudo su - jenkins.

Command to change the shell is:

chsh -s /bin/bash jenkin
fantaghirocco
  • 4,761
  • 6
  • 38
  • 48
Sreejith
  • 37
  • 1
  • 1
    It's created without a shell for a reason. That user is never meant to login interactively. – thekbb Sep 06 '16 at 21:21
2

When you install jenkins on your local machine, the default username is admin and password it gets automatically filled.

Sachin
  • 341
  • 3
  • 4
2

I was running Jenkins executing java -jar jenkins.war.

In my case Jenkins wrote webroot in an stdout: webroot: $user.home/.jenkins. So admin secret key was placed in a ~/.jenkins/secrets/initialAdminPassword.

A. Grinenko
  • 341
  • 1
  • 3
  • 5
1

I don't believe that the Jenkins user that is installed via apt has a password. If it does, I have never seen documentation. Based on the commands you entered, I am guessing you are using a Debian distro?

Is there any particular reason you must use the jenkins user to do the install instead of the user which was set up when you created your instance?

CIGuy
  • 5,076
  • 28
  • 37
  • Well, I'm trying to get the build working for my project, the instance does not have the proper dependencies installed, therefore, I installed it into the instance, but it still has the same problem. I figure I need to install it into the Jenkins server, and from what I see from the Console Output I seem to be on the right track. Just that it's getting blocked due to not having enough authority. – HHC Mar 05 '13 at 21:39
1

When installing Jenkins from AWS Marketplace . . .

"A default user "admin"with the instance-id as password is created to secure the Jenkins instance."

On the AWS Console for EC2, with the instance selected, choose the "Usage Instructions" tab:

"AWS Marketplace Usage Instructions Latest Versions: 2.19.4.2 A default user "admin"with the instance-id as password is created to secure the Jenkins instance. Once the instance is started, copy the public DNS hostname of the server in the AWS Management Console and enter it in your web browser. The welcome screen allows you to request a trial license, start and evaluation, enter a license key, or connect to your instance to Operations Center. Once the license step is done, your instance is fully functional. We recommend enabling security and backups. You can connect with SSH to the server using the "ubuntu"linux user. The JENKINS_HOME is located under "/var/lib/jenkins". Jenkins listens on the following ports: * HTTP 80: through HAProxy, can be configured to use HTTPS:443 instead * Jenkins SSH 2222: primarily for the CloudBees Git Validated Merge Plugin * Jenkins JNLP 10000: communication from Jenkins agents or Jenkins CLI configured to use JNLP protocol. Not exposed by default on security groups."

daviesdoesit
  • 805
  • 9
  • 14
1

Similar to the Ubuntu answer above, the Windows admin default password is stored in {jenkins install dir}\secrets\initialAdminPassword file (default install location would it in C:\Program Files (x86)\Jenkins\secrets\initialAdminPassword )

Ben Butzer
  • 915
  • 10
  • 24
1

If you don't create a new user when you installed jenkins, then:

user: admin pass: go to C:\Program Files (x86)\Jenkins\secrets and open the file initialAdminPassword

Diego Virgüez
  • 154
  • 2
  • 12
  • 1
    Are you saying wrong, did you check what you write yourself? `C: \ProgramData\Jenkins\.jenkins\secrets` – West Side Dec 17 '21 at 08:31
  • Your path is from a Windows installation but the OP asked for AWS where it would be a *nix path. – jmizv Aug 09 '23 at 06:54
1

I am a Mac OS user & following credential pair worked for me:
Username: admin
Password: admin

1

For me the best method of retrieving admin pass is by executing cat command inside the running container.

docker exec YOUR_JENKINS_CONTAINER cat /var/jenkins_home/secrets/initialAdminPassword
1

On Windows it can be found in the file "C:\Windows\System32\config\systemprofile\AppData\Local\Jenkins\.jenkins\secrets\initialAdminPassword"

(I know OP specified EC2 server, but this is now the first result on google when searching Jenkins Password)

Red Riding Hood
  • 1,932
  • 1
  • 17
  • 36
1

Jenkins Default username and password

username: admin

And

password available in the root directory .jenkins\secrets\initialAdminPassword just open the file and copy text and paste into password textbox.

0

Well, Even I tried to log in with the admin/password which was failed. So I created my own user like this.

  1. Go to Jenkins home folder (C:\User.jenkins or you can find this in Jenkins server startup logs)
  2. Go to Config file config.xml
  3. set disableSignup to false false if at all you want to disable login security 4.set ser security to false. true
Naveen
  • 11
  • 1
0

For mac users: Just run this command

cat ~/.jenkins/secrets/initialAdminPassword
0

There are few steps to follow:

  1. Go to the folder: C:\Users\Manjeet\.jenkins .(here in your case, there can be your system name or your name instead of mine)

  2. Open config.xml file using any text editor.(recommended Notepad++)

  3. Go to Line number seven which is like <useSecurity>true</useSecurity>.

    So make it change this from true to false.

  4. Save this file and close the window.

  5. Open Command Prompt and start your Jenkins .

    (java -jar jenkins.war --httpPort=8085).

  6. Open browser and search for your localhost at your given port number.

    (localhost:8085)

  7. You will see it doesn't ask for username and password anymore. Now you have to delete

    that existed user and Add new user for setting new username and password.

    Steps to make new Admin:

1.Go to people option which present at second number at left hand side below Dashboard

  1. Click on admin option present in a row and than click on delete.

  2. Go to Dashboard, Click on Manage Jenkins, Click on Configure Global Security.

  3. Check the box of Enable security option.

  4. Check the box of Jenkins own user database option and Uncheck Allow user to sign up present just below of it.

6 . Check Logged-in user can do anything option and Uncheck Allow anonymous read access present just below of it.

  1. Make it Save and it will give you a new form for creating new first user. Fill the details correctly and click on Create First Admin User .(it will automatically made a change on that config.xml file just save it. )
SecretAgentMan
  • 2,856
  • 7
  • 21
  • 41
0

Initial Password of Jenkins is stored in the following directory

   cat /var/lib/jenkins/secrets/initialAdminPassword
Ruzaik Nazeer
  • 474
  • 2
  • 12
0

first of all check whether you are connected with EC2 instance or not . if not then login ssh -i [name].pem ubuntu@ip-address . here, you remove [] ,while naming and instead of ip-address put instance ip .

Now, docker exec -it [container-id] cat /var/jenkins_home/secrets/initialAdminPassword Here,if you are not a root user then put sudo and dont forget to remove [] while putting container-id.