{"id":1533,"date":"2025-04-11T07:54:58","date_gmt":"2025-04-11T07:54:58","guid":{"rendered":"https:\/\/zahiralam.com\/blog\/?p=1533"},"modified":"2025-04-11T08:23:22","modified_gmt":"2025-04-11T08:23:22","slug":"how-to-install-elasticsearch-on-mac-apple-silicon-without-password","status":"publish","type":"post","link":"https:\/\/zahiralam.com\/blog\/how-to-install-elasticsearch-on-mac-apple-silicon-without-password\/","title":{"rendered":"How to Install Elasticsearch on Mac Apple Silicon Without Password"},"content":{"rendered":"\n<p>Elasticsearch is a powerful, open-source search engine used widely in analytics, logging, and search-driven applications. If you&#8217;re on a\u00a0<strong>Mac M1, M2, M3 or M4 with macOS <\/strong>, and you want to install\u00a0<strong>Elasticsearch<\/strong>\u00a0<strong>without password or TLS<\/strong>, this guide is for you.\n\n\n\n<p>We\u2019ll use the native&nbsp;<strong>aarch64 build<\/strong>&nbsp;for Apple Silicon \u2014 no need for Rosetta, Docker, or Homebrew.\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\uddf0 Prerequisites<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Mac M1, M2, M3 or M4 running macOS<\/li>\n\n\n\n<li>Terminal access<\/li>\n\n\n\n<li>Basic shell knowledge<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udd3d Step 1: Download Elasticsearch (Apple Silicon Version)<\/h2>\n\n\n\n<p>Open your terminal and run:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-1\">curl -O https:\/\/artifacts.elastic.co\/downloads\/elasticsearch\/elasticsearch-8.17.4-darwin-aarch64.tar.gz<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#curl%20-O%20https%3A%2F%2Fartifacts.elastic.co%2Fdownloads%2Felasticsearch%2Felasticsearch-8.17.4-darwin-aarch64.tar.gz\">\n                            <button class=\"copy-button\" data-label=\"curl -O https:\/\/artifacts.elastic.co\/downloads\/elasticsearch\/elasticsearch-8.17.4-darwin-aarch64.tar.gz\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<p>Verify the checksum:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-2\">curl https:\/\/artifacts.elastic.co\/downloads\/elasticsearch\/elasticsearch-8.17.4-darwin-aarch64.tar.gz.sha512 | shasum -a 512 -c -<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#curl%20https%3A%2F%2Fartifacts.elastic.co%2Fdownloads%2Felasticsearch%2Felasticsearch-8.17.4-darwin-aarch64.tar.gz.sha512%20%7C%20shasum%20-a%20512%20-c%20-\">\n                            <button class=\"copy-button\" data-label=\"curl https:\/\/artifacts.elastic.co\/downloads\/elasticsearch\/elasticsearch-8.17.4-darwin-aarch64.tar.gz.sha512 | shasum -a 512 -c -\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<p>You should see:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-3\">elasticsearch-8.17.4-darwin-aarch64.tar.gz: OK<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#elasticsearch-8.17.4-darwin-aarch64.tar.gz%3A%20OK\">\n                            <button class=\"copy-button\" data-label=\"elasticsearch-8.17.4-darwin-aarch64.tar.gz: OK\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udce6 Step 2: Extract the Archive<\/h2>\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-4\">tar -xzf elasticsearch-8.17.4-darwin-aarch64.tar.gz\ncd elasticsearch-8.17.4<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#tar%20-xzf%20elasticsearch-8.17.4-darwin-aarch64.tar.gz%0Acd%20elasticsearch-8.17.4\">\n                            <button class=\"copy-button\" data-label=\"tar -xzf elasticsearch-8.17.4-darwin-aarch64.tar.gz\ncd elasticsearch-8.17.4\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udee1 Step 3: Remove Quarantine Attribute<\/h2>\n\n\n\n<p>To prevent macOS security prompts:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-5\">xattr -d -r com.apple.quarantine .<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#xattr%20-d%20-r%20com.apple.quarantine%20.\">\n                            <button class=\"copy-button\" data-label=\"xattr -d -r com.apple.quarantine .\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udd27 Step 4: Disable Security (No Password, No TLS)<\/h2>\n\n\n\n<p>Edit the config file:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-6\">nano config\/elasticsearch.yml<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#nano%20config%2Felasticsearch.yml\">\n                            <button class=\"copy-button\" data-label=\"nano config\/elasticsearch.yml\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<p>Add the following lines at the bottom to disable security:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-7\">xpack.security.enabled: false\nxpack.security.enrollment.enabled: false<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#xpack.security.enabled%3A%20false%0Axpack.security.enrollment.enabled%3A%20false\">\n                            <button class=\"copy-button\" data-label=\"xpack.security.enabled: false\nxpack.security.enrollment.enabled: false\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<p>Save and exit.\n\n\n\n<h2 class=\"wp-block-heading\">\u25b6\ufe0f Step 5: Start Elasticsearch<\/h2>\n\n\n\n<p>Run the following to start Elasticsearch:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-8\">.\/bin\/elasticsearch<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#.%2Fbin%2Felasticsearch\">\n                            <button class=\"copy-button\" data-label=\".\/bin\/elasticsearch\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<p>That\u2019s it! Elasticsearch is now running&nbsp;<strong>without authentication or TLS<\/strong>.\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udd0d Step 6: Test Your Installation<\/h2>\n\n\n\n<p>In a new terminal window, check if it\u2019s working:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-9\">curl http:\/\/localhost:9200<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#curl%20http%3A%2F%2Flocalhost%3A9200\">\n                            <button class=\"copy-button\" data-label=\"curl http:\/\/localhost:9200\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<p>You should see a JSON response with version info like:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-10\">{\n  &quot;name&quot; : &quot;Your-MacBook.local&quot;,\n  &quot;cluster_name&quot; : &quot;elasticsearch&quot;,\n  &quot;version&quot; : {\n    &quot;number&quot; : &quot;8.17.4&quot;,\n    ...\n  },\n  &quot;tagline&quot; : &quot;You Know, for Search&quot;\n}<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#%7B%0A%20%20%22name%22%20%3A%20%22Your-MacBook.local%22%2C%0A%20%20%22cluster_name%22%20%3A%20%22elasticsearch%22%2C%0A%20%20%22version%22%20%3A%20%7B%0A%20%20%20%20%22number%22%20%3A%20%228.17.4%22%2C%0A%20%20%20%20...%0A%20%20%7D%2C%0A%20%20%22tagline%22%20%3A%20%22You%20Know%2C%20for%20Search%22%0A%7D\">\n                            <button class=\"copy-button\" data-label=\"{\n  &quot;name&quot; : &quot;Your-MacBook.local&quot;,\n  &quot;cluster_name&quot; : &quot;elasticsearch&quot;,\n  &quot;version&quot; : {\n    &quot;number&quot; : &quot;8.17.4&quot;,\n    ...\n  },\n  &quot;tagline&quot; : &quot;You Know, for Search&quot;\n}\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\udde0 Bonus: Run as Background Service<\/h2>\n\n\n\n<p>To run Elasticsearch in the background:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-11\">.\/bin\/elasticsearch -d -p pid<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#.%2Fbin%2Felasticsearch%20-d%20-p%20pid\">\n                            <button class=\"copy-button\" data-label=\".\/bin\/elasticsearch -d -p pid\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<p>To stop it:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-12\">pkill -F pid<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#pkill%20-F%20pid\">\n                            <button class=\"copy-button\" data-label=\"pkill -F pid\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83c\udf10 Access from Other Devices on LAN (Optional)<\/h2>\n\n\n\n<p>1. Edit\u00a0<code>config\/elasticsearch.yml<\/code>:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-13\">network.host: 0.0.0.0\nhttp.port: 9200<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#network.host%3A%200.0.0.0%0Ahttp.port%3A%209200\">\n                            <button class=\"copy-button\" data-label=\"network.host: 0.0.0.0\nhttp.port: 9200\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<p>2. Find your Mac&#8217;s IP:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-14\">ipconfig getifaddr en0<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#ipconfig%20getifaddr%20en0\">\n                            <button class=\"copy-button\" data-label=\"ipconfig getifaddr en0\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<p>3. Access from browser or device on the network:\n\n\n\n<div class=\"code-block-container\">\n                        <pre class=\"wp-block-code\"><code id=\"code-15\">http:\/\/&lt;your-ip&gt;:9200<\/code><\/pre>\n                        <amp-iframe sandbox=\"allow-scripts\" width=\"94\" height=\"72\" frameborder=\"0\" \n                                    src=\"https:\/\/zahiralam.com\/blog\/wp-content\/plugins\/amp-copy-code-button\/copier.html#http%3A%2F%2F%3Cyour-ip%3E%3A9200\">\n                            <button class=\"copy-button\" data-label=\"http:\/\/&lt;your-ip&gt;:9200\"  placeholder disabled>Copy<\/button>\n                        <\/amp-iframe>\n                    <\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\u2705 Conclusion<\/h2>\n\n\n\n<p>You&#8217;ve now installed\u00a0<strong>Elasticsearch on Mac natively<\/strong>, configured it to\u00a0<strong>run without passwords or TLS<\/strong>, and verified it works locally. This is perfect for local development, experimentation, and quick prototyping.\n\n\n\n<p>\n","protected":false},"excerpt":{"rendered":"<p>Elasticsearch is a powerful, open-source search engine used widely in analytics, logging, and search-driven applications. If you&#8217;re on a\u00a0Mac M1, M2, M3 or M4 with [&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":1539,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[261],"tags":[263,262,256],"class_list":["post-1533","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-elasticsearch","tag-disable-elasticsearch-security","tag-elasticsearch-8-17-4","tag-mac-m1-m2-m3-m4"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/posts\/1533","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/comments?post=1533"}],"version-history":[{"count":4,"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/posts\/1533\/revisions"}],"predecessor-version":[{"id":1540,"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/posts\/1533\/revisions\/1540"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/media\/1539"}],"wp:attachment":[{"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/media?parent=1533"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/categories?post=1533"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zahiralam.com\/blog\/wp-json\/wp\/v2\/tags?post=1533"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}