{"id":13331,"date":"2025-12-20T10:31:52","date_gmt":"2025-12-20T05:01:52","guid":{"rendered":"https:\/\/www.youstable.com\/blog\/?p=13331"},"modified":"2025-12-20T10:31:54","modified_gmt":"2025-12-20T05:01:54","slug":"how-to-setup-ftp-on-linux-server","status":"publish","type":"post","link":"https:\/\/www.youstable.com\/blog\/how-to-setup-ftp-on-linux-server","title":{"rendered":"How to Setup FTP on Linux Server &#8211; Complete Guide"},"content":{"rendered":"\n<p>To set up FTP on a Linux server, install and configure vsftpd, create a restricted FTP user, open firewall ports (21 and a passive range), enable optional TLS for encryption, and test with an FTP client. This guide shows step-by-step instructions for Ubuntu\/Debian and RHEL\/CentOS\/AlmaLinux with secure, production-ready settings.<\/p>\n\n\n\n<p>If you\u2019re wondering how to set up FTP on a Linux server, you\u2019re in the right place. In this tutorial, I\u2019ll walk you through <a href=\"https:\/\/www.youstable.com\/blog\/install-ftp-on-linux\/\">installing and hardening an FTP server<\/a> with vsftpd, opening firewall and SELinux rules, enabling FTPS encryption, and testing with FileZilla or lftp. The process is beginner-friendly but follows enterprise-grade best practices I use for production environments.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"before-you-begin-ftp-vs-sftp-and-what-you-should-choose\"><strong>Before You Begin: FTP vs SFTP and What You Should Choose<\/strong><\/h2>\n\n\n\n<p><a href=\"https:\/\/www.youstable.com\/blog\/how-to-use-filezilla-client\/\">FTP is a legacy file transfer<\/a> protocol that sends data in plain text. SFTP (part of OpenSSH) encrypts traffic end-to-end and is generally preferred for security. If you must use classic FTP for compatibility, always enable TLS (FTPS) to encrypt credentials and data. This guide focuses on vsftpd (very secure FTP daemon) with optional TLS.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"what-well-use\"><strong>What We\u2019ll Use<\/strong><\/h3>\n\n\n\n<p>We\u2019ll deploy vsftpd because it\u2019s fast, stable, and widely available. Steps cover Ubuntu\/Debian and RHEL\/CentOS\/AlmaLinux. We\u2019ll configure passive mode, chroot jails, user allowlists, and (optionally) FTPS so you can pass security scans and work smoothly with GUI clients like FileZilla.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"prerequisites\"><strong>Prerequisites<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A Linux server (Ubuntu 22.04+\/20.04+, Debian 11\/12, AlmaLinux\/RHEL\/CentOS 8+)<\/li>\n\n\n\n<li>Root or sudo privileges<\/li>\n\n\n\n<li>Firewall access (UFW or firewalld) and, on RHEL-based systems, SELinux tools<\/li>\n\n\n\n<li>A domain or IP address for clients to connect<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-1-install-vsftpd\"><strong>Step 1: Install vsftpd<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"ubuntu-debian\"><strong>Ubuntu\/Debian<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt update\nsudo apt install -y vsftpd\nsudo systemctl enable --now vsftpd\nsudo systemctl status vsftpd<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"rhel-centos-almalinux\"><strong>RHEL\/CentOS\/AlmaLinux<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf install -y vsftpd policycoreutils-python-utils\nsudo systemctl enable --now vsftpd\nsudo systemctl status vsftpd<\/code><\/pre>\n\n\n\n<p>If the service is active, you can proceed to configuration.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-2-back-up-and-harden-the-vsftpd-configuration\"><strong>Step 2: Back Up and Harden the vsftpd Configuration<\/strong><\/h2>\n\n\n\n<p>Back up the default config and open it for editing:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo cp \/etc\/vsftpd.conf \/etc\/vsftpd.conf.bak\nsudo nano \/etc\/vsftpd.conf<\/code><\/pre>\n\n\n\n<p>Use these secure, production-ready settings. Add or update the following lines:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>anonymous_enable=NO\nlocal_enable=YES\nwrite_enable=YES\nlocal_umask=022\n\nuse_localtime=YES\nxferlog_enable=YES\nconnect_from_port_20=YES\n\n# Chroot users into their home\nchroot_local_user=YES\nallow_writeable_chroot=YES\n\n# Passive mode for firewalls\/NAT\npasv_enable=YES\npasv_min_port=40000\npasv_max_port=40100\n\n# Allowlist specific users only\nuserlist_enable=YES\nuserlist_file=\/etc\/vsftpd.userlist\nuserlist_deny=NO\n\n# Improve security hygiene\npam_service_name=vsftpd\nseccomp_sandbox=YES<\/code><\/pre>\n\n\n\n<p>Save and restart:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl restart vsftpd<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-3-create-a-restricted-ftp-user\"><strong>Step 3: Create a Restricted FTP User<\/strong><\/h2>\n\n\n\n<p>Create a dedicated user and prevent shell access. We\u2019ll also add nologin to \/etc\/shells so PAM allows FTP logins with that shell.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Create user and set password\nsudo adduser ftpuser\nsudo passwd ftpuser\n\n# Restrict shell access\nsudo usermod -s \/usr\/sbin\/nologin ftpuser\necho \/usr\/sbin\/nologin | sudo tee -a \/etc\/shells\n\n# Optional: create a dedicated FTP directory\nsudo mkdir -p \/home\/ftpuser\/ftp\nsudo chown -R ftpuser:ftpuser \/home\/ftpuser\/ftp<\/code><\/pre>\n\n\n\n<p>Now allow the user to log in via the allowlist:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>echo \"ftpuser\" | sudo tee -a \/etc\/vsftpd.userlist\nsudo systemctl restart vsftpd<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-4-open-firewall-ports-ftp-plus-passive-range\"><strong>Step 4: Open Firewall Ports (FTP + Passive Range)<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"ufw-ubuntu-debian\"><strong>UFW (Ubuntu\/Debian)<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ufw allow 21\/tcp\nsudo ufw allow 40000:40100\/tcp\nsudo ufw reload\nsudo ufw status<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"firewalld-rhel-centos-almalinux\"><strong>firewalld (RHEL\/CentOS\/AlmaLinux)<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo firewall-cmd --permanent --add-service=ftp\nsudo firewall-cmd --permanent --add-port=40000-40100\/tcp\nsudo firewall-cmd --reload\nsudo firewall-cmd --list-all<\/code><\/pre>\n\n\n\n<p>Using passive mode avoids complex NAT traversal and is recommended for cloud servers behind security groups or load balancers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-5-configure-selinux-for-ftp-rhel-based-only\"><strong>Step 5: Configure SELinux for FTP (RHEL-Based Only)<\/strong><\/h2>\n\n\n\n<p>Enable home directory access and passive mode; then inform SELinux about your passive port range:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo setsebool -P ftp_home_dir 1\nsudo setsebool -P ftpd_use_passive_mode 1\nsudo semanage port -a -t ftp_port_t -p tcp 40000-40100 || \\\nsudo semanage port -m -t ftp_port_t -p tcp 40000-40100<\/code><\/pre>\n\n\n\n<p>If semanage isn\u2019t found, install the policycoreutils-python-utils package (already covered above).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-6-enable-tls-ftps-encryption-recommended\"><strong>Step 6: Enable TLS\/FTPS Encryption (Recommended)<\/strong><\/h2>\n\n\n\n<p>Encrypting FTP (FTPS) protects credentials and data in transit. Generate a self-signed certificate or use a valid one from your CA.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Generate a self-signed cert (valid 3 years)\nsudo openssl req -x509 -nodes -days 1095 -newkey rsa:2048 \\\n -keyout \/etc\/ssl\/private\/vsftpd.key \\\n -out \/etc\/ssl\/certs\/vsftpd.crt \\\n -subj \"\/CN=$(hostname -f)\"\n\n# Set permissions\nsudo chmod 600 \/etc\/ssl\/private\/vsftpd.key<\/code><\/pre>\n\n\n\n<p>Edit vsftpd.conf and add:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ssl_enable=YES\nallow_anon_ssl=NO\nforce_local_logins_ssl=YES\nforce_local_data_ssl=YES\n\nrsa_cert_file=\/etc\/ssl\/certs\/vsftpd.crt\nrsa_private_key_file=\/etc\/ssl\/private\/vsftpd.key\n\n# Harden TLS\nssl_sslv2=NO\nssl_sslv3=NO\nssl_tlsv1=YES\nrequire_ssl_reuse=NO\nssl_ciphers=HIGH<\/code><\/pre>\n\n\n\n<p>Restart the service:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl restart vsftpd<\/code><\/pre>\n\n\n\n<p>In clients like FileZilla, choose \u201cFTP over TLS (explicit)\u201d to avoid plaintext logins.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-7-test-your-ftp-server\"><strong>Step 7: Test Your FTP Server<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"command-line-test\"><strong>Command-Line Test<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Install lftp (recommended)\nsudo apt install -y lftp  # Ubuntu\/Debian\nsudo dnf install -y lftp  # RHEL\/CentOS\/AlmaLinux\n\n# Connect (replace server_ip or domain)\nlftp -u ftpuser ftp:\/\/server_ip\n\n# With FTPS:\nlftp -u ftpuser ftps:\/\/server_ip\n# If certificate is self-signed:\nset ssl:verify-certificate no<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"gui-test-filezilla\"><strong>GUI Test (FileZilla)<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Host: your_server_ip or domain<\/li>\n\n\n\n<li>Protocol: FTP \u2014 if FTPS enabled, select \u201cFTP \u2014 TLS (explicit)\u201d<\/li>\n\n\n\n<li>Port: 21<\/li>\n\n\n\n<li>Encryption: Require explicit FTP over TLS (recommended)<\/li>\n\n\n\n<li>Logon Type: Normal, User: ftpuser, Password: your password<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"troubleshooting-common-ftp-errors\"><strong>Troubleshooting Common FTP Errors<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>530 Login incorrect: Ensure the user is in <code>\/etc\/vsftpd.userlist<\/code>, the password is correct, and <code>\/usr\/sbin\/nologin<\/code> is listed in <code>\/etc\/shells<\/code>.<\/li>\n\n\n\n<li>500 OOPS: refusing to run with writable root: Keep <code>allow_writeable_chroot=YES<\/code> or make the user\u2019s chroot directory non-writable (and use a writable subfolder).<\/li>\n\n\n\n<li>Connection timed out: Open port 21 and passive ports (40000\u201340100). Check cloud security groups and local firewall.<\/li>\n\n\n\n<li>TLS handshake\/GnuTLS -15: Add <code>require_ssl_reuse=NO<\/code> in <code>vsftpd.conf<\/code> and restart.<\/li>\n\n\n\n<li>RHEL-based SELinux denials: Enable <code>ftp_home_dir<\/code>, <code>ftpd_use_passive_mode<\/code>, and assign passive ports with <code>semanage<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"best-practices-to-keep-your-ftp-server-secure\"><strong>Best Practices to Keep Your FTP Server Secure<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Prefer SFTP or FTPS: Avoid plain FTP logins whenever possible.<\/li>\n\n\n\n<li>Restrict users: Use <code>userlist_enable=YES<\/code> and allow only specific accounts.<\/li>\n\n\n\n<li>Chroot users: Prevent lateral movement by confining users to their home directories.<\/li>\n\n\n\n<li>Harden passwords: Enforce strong password policies and consider MFA at the app layer.<\/li>\n\n\n\n<li>Limit exposure: Only open required passive port ranges; avoid wide ranges.<\/li>\n\n\n\n<li>Monitor logs: Check <code>\/var\/log\/vsftpd.log<\/code> and system logs for suspicious activity.<\/li>\n\n\n\n<li>Use Fail2ban: Add a vsftpd jail to block brute-force attempts.<\/li>\n\n\n\n<li>Automate backups: Regularly back up FTP content to offsite storage.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"quick-alternative-use-sftp-built-into-openssh\"><strong>Quick Alternative: Use SFTP (Built into OpenSSH)<\/strong><\/h2>\n\n\n\n<p>In many cases, SFTP is simpler and more secure. It\u2019s usually <a href=\"https:\/\/www.youstable.com\/blog\/how-to-enable-ssh-access-for-clients-or-users\/\">enabled by default with SSH<\/a>. Create a user and connect with an SFTP client on port 22. You can chroot SFTP-only users by editing <code>\/etc\/ssh\/sshd_config<\/code> with a <code>Match<\/code> block and restarting <code>sshd<\/code>. If strict compliance or legacy software mandates FTP, stick with FTPS.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"faqs-how-to-set-up-ftp-on-linux-server\"><strong>FAQs: How to Set Up FTP on Linux Server<\/strong><\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-1765794757646\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"is-ftp-or-sftp-better-for-linux-servers\"><strong>Is FTP or SFTP better for Linux servers?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>SFTP is better for security because it encrypts everything <a href=\"https:\/\/www.youstable.com\/blog\/how-to-connect-to-server-via-ssh\/\">via SSH<\/a>. If you must use FTP for compatibility, use FTPS (FTP over TLS) so credentials and files aren\u2019t exposed in plaintext. Most modern clients support SFTP and FTPS.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765794766999\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"which-ftp-server-should-i-use-on-ubuntu-or-centos\"><strong>Which FTP server should I use on Ubuntu or CentOS?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>vsftpd is the most common choice due to its security focus and stability. Alternative servers include ProFTPD and Pure-FTPd, but vsftpd is widely available, easy to harden, and supported by most distributions.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765794774049\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"how-do-i-fix-500-oops-vsftpd-refusing-to-run-with-writable-root\"><strong>How do I fix \u201c500 OOPS: vsftpd: refusing to run with writable root\u201d?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Either set <code>allow_writeable_chroot=YES<\/code> in <code>\/etc\/vsftpd.conf<\/code> or keep the chroot directory non-writable and create a writable subdirectory (for example, <code>\/home\/ftpuser\/ftp\/upload<\/code>). Then restart vsftpd.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765794782632\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"what-firewall-ports-are-required-for-ftp\"><strong>What firewall ports are required for FTP?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Open TCP 21 for control and a passive range (commonly 40000\u201340100). On RHEL-based systems with SELinux, also map the passive range to the <code>ftp_port_t<\/code> type with <code>semanage<\/code> and enable <code>ftpd_use_passive_mode<\/code>.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765794791468\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"how-do-i-enable-ftp-over-tls-ftps-on-vsftpd\"><strong>How do I enable FTP over TLS (FTPS) on vsftpd?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Generate a certificate, then add <code>ssl_enable=YES<\/code>, set <code>rsa_cert_file<\/code> and <code>rsa_private_key_file<\/code>, disable SSLv2\/3, and restart vsftpd. In your client, select \u201cRequire explicit FTP over TLS.\u201d This secures credentials and data in transit.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"final-thoughts\"><strong>Final Thoughts<\/strong><\/h2>\n\n\n\n<p>You now know how to set up FTP on a Linux server the right way: install vsftpd, lock it down, open the correct firewall\/SELinux rules, and enable FTPS for encryption. If you want a faster route with expert hardening and 24\/7 help, host on YouStable and let our engineers configure it for you.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To set up FTP on a Linux server, install and configure vsftpd, create a restricted FTP user, open firewall ports [&hellip;]<\/p>\n","protected":false},"author":13,"featured_media":15492,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"iawp_total_views":8,"footnotes":""},"categories":[350],"tags":[],"class_list":["post-13331","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-knowledgebase"],"acf":[],"featured_image_src":"https:\/\/www.youstable.com\/blog\/wp-content\/uploads\/2025\/12\/How-to-Setup-FTP-on-Linux-Server.jpg","author_info":{"display_name":"Prahlad Prajapati","author_link":"https:\/\/www.youstable.com\/blog\/author\/prahladblog"},"_links":{"self":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/13331","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/comments?post=13331"}],"version-history":[{"count":3,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/13331\/revisions"}],"predecessor-version":[{"id":13430,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/13331\/revisions\/13430"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/media\/15492"}],"wp:attachment":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/media?parent=13331"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/categories?post=13331"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/tags?post=13331"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}